Redes neuronales: así de sencillo (Parte 28): Algoritmo de gradiente de políticas
Continuamos analizando los métodos de aprendizaje por refuerzo. En el artículo anterior, nos familiarizamos con el método de aprendizaje Q profundo, en el que entrenamos un modelo para predecir la próxima recompensa dependiendo de la acción realizada en una situación particular. Luego realizamos una acción según nuestra política y la recompensa esperada, pero no siempre es posible aproximar la función Q, o su aproximación no ofrece el resultado deseado. En estos casos, los métodos de aproximación no se utilizan para funciones de utilidad, sino para una política (estrategia) de acciones directa. Precisamente a tales métodos pertenece el gradiente de políticas o policy gradient.
Recetas MQL5 – Obteniendo las propiedades de una posición de cobertura abierta
La plataforma MetaTrader 5 no es solo una plataforma multimercado, sino que también permite usar diferentes sistemas de registro de posiciones. Estas posibilidades amplian considerablemente el instrumental para la implementación y formalización de las ideas comerciales. En el artículo, vamos a hablar sobre cómo procesar y considerar las propiedades de las posiciones al llevar su registro de forma independiente ("cobertura"). Así, en el artículo proponemos una clase derivada, mostrando a continuación ejemplos de procesamiento y obtención de las propiedades de la posición de cobertura.
Gestor de riesgos para el trading manual
En este artículo vamos a discutir en detalle cómo escribir una clase de gestor de riesgos para el comercio manual a partir de cero. Esta clase también puede utilizarse como clase base para que la hereden los traders algorítmicos que utilizan programas automatizados.
Arbitraje triangular con predicciones
Este artículo simplifica el arbitraje triangular y le muestra cómo utilizar predicciones y software especializado para operar con divisas de forma más inteligente, incluso si es nuevo en el mercado. ¿Listo para operar con experiencia?
Creación de un modelo de restricción de tendencia de velas (Parte 1): Para EAs e Indicadores Técnicos
Este artículo está dirigido a principiantes y desarrolladores avanzados de MQL5. Proporciona un fragmento de código para definir y limitar los indicadores generadores de señales a tendencias en plazos superiores. De este modo, los operadores pueden mejorar sus estrategias incorporando una perspectiva de mercado más amplia, lo que da lugar a señales de negociación potencialmente más sólidas y fiables.
Redes neuronales: así de sencillo (Parte 5): Cálculos multihilo en OpenCL
Ya hemos analizado algunos tipos de implementación de redes neuronales. Podemos ver con facilidad que se repiten las mismas operaciones para cada neurona de la red. Y aquí sentimos el legítimo deseo de aprovechar las posibilidades que ofrece la computación multihilo de la tecnología moderna para acelerar el proceso de aprendizaje de una red neuronal. En el presente artículo, analizaremos una de las opciones para tal implementación.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte III): Colección de órdenes y posiciones de mercado, búsqueda y filtrado
En el primer artículo, comenzamos la creación de una gran biblioteca multiplataforma para construir con facilidad programas en las plataformas MetaTrader 5 y MetaTrader 4. Acto seguido, continuamos el desarrollo de la biblioteca y corregimos las órdenes y transacciones históricas. En esta ocasión, vamos a crear una clase que nos permita elegir y filtrar cómodamente órdenes y posiciones en las listas de colecciones; en concreto, crearemos un objeto básico de la biblioteca, llamado Engine, y añadiremos a la biblioteca una colección de órdenes y posiciones de mercado.
Creación de un sistema de trading automatizado
Debe admitir que resulta tentador convertirse en el afortunado dueño de un programa que le permite desarrollar un sistema de trading automatizado (STA) rentable en pocos minutos. Sólo tiene que introducir las entradas adecuadas y pulsar "Enter". Y aquí lo tiene, su STA probado y con una previsión de beneficio positiva. Pero al ver a miles de personas dedicando miles de horas en el desarrollo de este singular STA, que será como "coser y cantar", mis afirmaciones le resultarían, por decirlo suavemente, poco convincentes. Por una parte, esto parece realmente inalcanzable... Pero en mi opinión, esto tiene solución.
Cómo construir un EA que opere automáticamente (Parte 08): OnTradeTransaction
En este artículo, te mostraré cómo puedes utilizar el sistema de manejo de eventos para poder procesar con más agilidad y de mejor manera las cuestiones relacionadas con el sistema de órdenes, para que el EA sea más rápido. Así, éste no tendrá que estar buscando información todo el tiempo.
Desarrollando un algoritmo de autoadaptación (Parte II): Aumentando la efectividad
En este artículo, continuaremos el tema del anterior. No obstante, primero flexibilizaremos el algoritmo desarrollado anteriormente. El algoritmo se ha vuelto más estable, con un aumento en el número de velas en la ventana de análisis o con un aumento en el porcentaje del umbral del preponderancia de velas descendentes o ascendentes. Hemos tenido que llegar a un compromiso y establecer un tamaño de muestra más grande para el análisis o un porcentaje mayor de preponderancia de la vela predominante.
Algoritmo de recompra: un modelo matemático para aumentar la eficiencia
En este artículo, usaremos el algoritmo de recompra como guía en un mundo con una mayor comprensión de la efectividad de los sistemas comerciales y comenzaremos a trabajar en los principios generales para mejorar la eficiencia comercial usando las matemáticas y la lógica; también aplicaremos los métodos menos comunes para aumentar la eficiencia en el contexto del uso de cualquier sistema comercial.
Aprendizaje automático y data science (Parte 05): Árboles de decisión usando como ejemplo las condiciones meteorológicas para jugar al tenis
Los árboles de decisión clasifican los datos imitando la forma de pensar de los seres humanos. En este artículo, veremos cómo construir árboles de decisión y usar estos para clasificar y predecir datos. El objetivo principal del algoritmo del árbol de decisión es dividir la muestra en datos con "impurezas" y en datos "limpios" o próximos a los nodos.
Aprendizaje automático y Data Science (Parte 11): Clasificador bayesiano ingenuo y teoría de la probabilidad en el trading
Comerciar con probabilidades es como caminar por la cuerda floja: requiere precisión, equilibrio y una clara comprensión del riesgo. En el mundo del trading, la probabilidad lo es todo: es lo que determina el resultado, el éxito o el fracaso, los beneficios o las pérdidas. Usando el poder de la probabilidad, los tráders pueden tomar decisiones mejor informadas, gestionar el riesgo con mayor eficacia y alcanzar sus objetivos financieros. Tanto si es usted un inversor experimentado como un tráder principiante, comprender las probabilidades puede ser la clave para liberar su potencial comercial. En este artículo, analizaremos el fascinante mundo del trading probabilístico y le mostraremos cómo llevar su modo de comerciar al siguiente nivel.
Lite_EXPERT2.mqh: Un conjunto operativo para los desarrolladores de Asesores Expertos
Este artículo es una continuación de la serie de artículos "Asesores Expertos basados en sistemas populares de trading, y un poco de alquimia en la optimización de robots". Permite familiarizar los lectores con una librería de funciones más universales del archivo Lite_EXPERT2.mqh.
Buscando patrones estacionales en el mercado de divisas con la ayuda del algoritmo CatBoost
En el presente artículo, mostramos la posibilidad de crear modelos de aprendizaje automático con filtros temporales y también descubrimos la efectividad de este enfoque. Ahora, podremos descartar el factor humano, diciéndole simplemente al modelo: "Quiero que comercies a una hora determinada de un día concreto de la semana". Así, podremos delegar en el algoritmo la búsqueda de patrones.
Desarrollo de un EA comercial desde cero (Parte 25): Dotando de robustez al sistema (II)
Aquí terminaremos de dar un empujón en el rendimiento del EA... así que prepárense para una larga lectura. Lo primero que haremos para que nuestro EA sea robusto es eliminar del código todo y absolutamente todo lo que no forme parte del sistema comercial.
Programamos los modos de funcionamiento del Asesor Experto usando la programación orientada a objetos
En este artículo se considera la idea de la programación multi-modo de los robots comerciales usando el lenguaje MQL5. Se utiliza el enfoque orientado a objetos para la implementación de cada uno de los modos. Se muestra el ejemplo de la jerarquía de las clases de régimen y el ejemplo de las clases para el testeo (prueba). Se supone que la programación multi-modo de los robots comerciales toma en consideración las particularidades de cada modo de trabajo del Asesor Experto MQL5. Para la identificación de los modos se crean las funciones y enumeraciones.
Desarrollamos el indicador True Strength Index personalizado utilizando MQL5
Les presento un nuevo artículo sobre la creación de indicadores personalizados. Esta vez trabajaremos con el True Strength Index (TSI) y crearemos un asesor basado en él.
Cómo hemos desarrollado el servicio de señales comerciales MetaTrader y el trading social en general
Estamos perfeccionando activamente el servicio Señales, deshaciéndonos en el proceso de los anteriores desarrollos e introduciendo cambios en los mecanismos existentes. El MetaTrader Signals de hace dos años y el MetaTrader Signals actual son dos servicios totalmente diferentes.
Cómo construir un EA que opere automáticamente (Parte 12): Automatización (IV)
Si crees que los sistemas automatizados son sencillos, eso indica que aún no has entendido del todo lo necesario para crearlos. En este texto, hablaremos de un problema al que se enfrentan muchos Expert Advisors: la ejecución indiscriminada de órdenes, y de una posible solución a este problema.
Visualizando la optimización de una estrategia comercial en MetaTrader 5
En el artículo se ha implementado una aplicación MQL con interfaz gráfica para la visualización ampliada del proceso de optimización. La interfaz gráfica ha sido creada con la ayuda de la última versión de la biblioteca EasyAndFast. En ocasiones, a muchos usarios les surge la siguiente pregunta: ¿para qué necesitamos las interfaces gráficas en las aplicaciones MQL? En este artículo se muestra uno de los numerosos casos en los que pueden resultar útiles para los tráders.
El mercado y la física de sus patrones globales
En el presente artículo trataremos de comprobar la suposición de que cualquier sistema con un mínimo conocimiento del mercado puede operar a escala global. No vamos a inventar teorías ni leyes: reflexionaremos únicamente sobre la base de hechos conocidos por todos, convirtiendo paulatinamente dichos hechos al lenguaje del análisis matemático.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XVI): Eventos de la colección de símbolos.
En este artículo, vamos a crear la clase básica para todos los objetos de la biblioteca, encargada de añadir la funcionalidad de los eventos a todos sus herederos; asimismo, crearemos una clase para monitorear los eventos de la colección de símbolos basada en la nueva clase básica. Además, modificaremos las clases de la cuenta y los eventos de la cuenta para trabajar con la nueva funcionalidad del objeto básico.
Experto comercial universal: Las estrategias de usuario y las clases comerciales auxiliares (Parte 3)
En este artículo continuamos con la descripción de los algoritmos del motor comercial CStrategy. En la tercera parte de esta serie de artículos se analizan con detalle ejemplos de escritura de estrategias comerciales específicas que utilizan este enfoque. Además, se presta gran atención a los algoritmos auxiliares: el sistema de registro y el acceso a los datos bursátiles con la ayuda de un indexador convencional (Close[1], Open[0], etc.).
Aprendizaje automático y Data Science (Parte 07): Regresión polinomial
La regresión polinomial es un modelo flexible diseñado para resolver de forma eficiente problemas que un modelo de regresión lineal no puede gestionar. En este artículo, aprenderemos a crear modelos polinómicos en MQL5 y a sacar provecho de ellos.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XII): Implementando la clase de objeto "cuenta" y la colección de objetos de cuenta
En el artículo anterior, definimos los eventos de cierre de posiciones para MQL4 en la biblioteca y eliminamos las propiedades de las órdenes que nos resultaban innecesarias. En el presente artículo, analizaremos la creación del objeto "Cuenta", crearemos una colección de objetos de cuenta y prepararemos la funcionalidad de para monitorear los eventos de las cuentas.
Desarrollando un EA comercial desde cero (Parte 10): Acceso a los indicadores personalizados
¿Cómo acceder a los indicadores personalizados directamente en el EA? A un EA comercial solo se le sacará partido realmente si se puede usar indicadores personalizados en él, de lo contrario, será solo un conjunto de códigos e instrucciones.
Resultados del Mercado MQL5 en el segundo periodo de 2013
Tras año y medio de exitoso trabajo, el Mercado MQL5 se ha convertido en la tienda más grande de trading de estrategias comerciales e indicadores técnicos. En ella se han publicado cerca de 800 aplicaciones comerciales de 350 desarrolladores de todo el mundo. Además, los traders ya han comprado e instalado en sus terminales MetaTrader 5 más de 100.000 programas comerciales.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXIV): Clase comercial principal - corrección automática de parámetros erróneos
En el presente artículo, analizaremos el manejador de parámetros erróneos de la orden comercial, mejoraremos la clase comercial básica y también corregiremos el funcionamiento de la clase de eventos comerciales: ahora, todos los eventos comerciales, tanto únicos, como simultáneos en un mismo tick, serán correctamente determinados en los programas.
Calificación de Asesores Expertos dentro de un Asesor Experto
Mediante el trading virtual, puede crear un Asesor Experto adaptativo que llevará a cabo la activación y desactivación de operaciones en el mercado real. ¡Combinar varias estrategias en un sólo Asesor Experto! Su Asesor Experto multisistema elegirá automáticamente la mejor estrategia de trading para operar en el mercado real en base a la rentabilidad de las operaciones virtuales. Este método permite reducir la disminución e incrementar la rentabilidad de sus operaciones en el mercado. ¡Experimente y comparta sus resultados con los demás! Creo que hay mucha gente interesada en conocer sus estrategias.
Implementando OLAP en la negociación (Parte 3): analizando las cotizaciones con el fin de desarrollar las estrategias comerciales
En este artículo, continuaremos analizando la tecnología OLAP en aplicación al trading, ampliando la funcionalidad representada en dos artículos anteriores. Esta vez, al análisis operativo se le someterán las cotizaciones. Mostraremos cómo se hacen y se comprueban las hipótesis sobre las estrategias comerciales a base de los indicadores agregados del historial. Además, presentaremos los Asesores Expertos para analizar las regularidades barra por barra y el trading adaptativo.
Integración de Smart Money Concepts (SMC), Order Blocks (OB) y Fibonacci para entradas óptimas
Los bloques de órdenes (Order Blocks, OB) son áreas clave donde los operadores institucionales inician compras o ventas significativas. Después de un movimiento de precio significativo, Fibonacci ayuda a identificar un retroceso potencial desde un máximo reciente hasta un mínimo para identificar la entrada comercial óptima.
Redes neuronales de propagación inversa del error en matrices MQL5
El artículo describe la teoría y la práctica de la aplicación del algoritmo de propagación inversa del error en MQL5 con la ayuda de matrices. Asimismo, incluye clases y ejemplos preparados del script, el indicador y el asesor.
Reimaginando estrategias clásicas en Python: Cruce de medias móviles (MAs, Moving Averages)
En este artículo, revisamos la estrategia clásica de cruce de medias móviles para evaluar su eficacia actual. Dado el tiempo transcurrido desde su creación, exploramos las posibles mejoras que la IA puede aportar a esta estrategia de negociación tradicional. Mediante la incorporación de técnicas de IA, pretendemos aprovechar las capacidades predictivas avanzadas para optimizar potencialmente los puntos de entrada y salida de las operaciones, adaptarnos a las condiciones variables del mercado y mejorar el rendimiento global en comparación con los enfoques convencionales.
Desarrollando un EA comercial desde cero (Parte 12): Time and Trade (I)
Vamos a crear un Time & Trade de rápida interpretación para para lectura de flujo ordenes. Esta es la primera parte en la que construiremos este sistema. En el próximo artículo completaremos el sistema con la información que falta, ya que para ello necesitaremos agregar varias cosas nuevas a nuestro código EA.
Aproximación por fuerza bruta a la búsqueda de patrones (Parte IV): Funcionalidad mínima
En este artículo, mostraremos una versión mejorada de la fuerza bruta, basada en los objetivos establecidos en el artículo anterior, y trataremos de abarcar este tema de la forma más amplia posible usando los asesores y la configuración obtenidos con este método. También ofreceremos a la comunidad la posibilidad de probar la nueva versión del programa.
Cuentos de robots comerciales: ¿mejor poco, pero mejor?
Hace dos años, en el artículo "La última cruzada" usted y yo, querido lector, vimos juntos un método (bastante interesante y poco usado en la actualidad) de representación de la información en el mercado, el gráfico de punto y forma. Ahora le propongo intentar escribir un robot comercial, basado en patrones que se pueden ver en los gráficos de punto y forma.
Aproximación por fuerza bruta a la búsqueda de patrones (Parte V): Una mirada desde el otro lado
En este artículo mostraré al lector un enfoque del trading algorítmico completamente distinto al que he tenido que llegar después de bastante tiempo. Obviamente, todo esto está relacionado con mi programa de fuerza bruta, que ha sufrido una serie de cambios que le permiten resolver varios problemas al mismo tiempo. No obstante, el artículo ha resultado lo más general y sencillo posible, por lo que también resultará apto para quienes no conocen el tema o simplemente están de paso.
Plantilla para proyectar el MVC y posibilidades de uso (Parte 2): Esquema de interacción entre los tres componentes
Este artículo continúa y completa el tema planteado en el último artículo: la plantilla MVC en los programas MQL. En este artículo, veremos un posible esquema de interacción entre estos tres componentes.
Aprendiendo a diseñar un sistema de trading con MFI
Aquí tenemos un nuevo artículo de nuestra serie destinada a la creación de sistemas comerciales basados en indicadores técnicos populares. Esta vez está dedicado al índice de flujo de dinero (IMF). Estudiaremos este indicador con todo detalle y desarrollaremos sistemas comerciales MQL5 simples para su ejecución en MetaTrader 5.