Artículos con ejemplos de programación de robots comerciales en el lenguaje MQL5

icon

En el ámbito del trading automático los Asesores Expertos es la cima de la programación y objetivo deseable de cada desarrollador. Usted puede escribir su propio Asesor Experto utilizando los artículos de esta sección. Paso a paso los principiantes podrán pasar todas las fases de creación, depuración y simulación de los sistemas automáticos de trading.

Los artículos no sólo enseñarán a programar en el lenguaje MQL5, sino mostrarán cómo implementar cualquier idea y técnica comercial. Usted conocerá cómo programar el Trailing Stop, cómo realizar la gestión del capital, cómo obtener el valor del indicador y muchas cosas más.

Nuevo artículo
últimas | mejores
preview
Desarrollando un EA comercial desde cero (Parte 08): Un salto conceptual (I)

Desarrollando un EA comercial desde cero (Parte 08): Un salto conceptual (I)

¿Cómo implementar una nueva funcionalidad de la forma más sencilla posible? Aquí daremos un paso atrás y luego daremos dos pasos adelante.
preview
Desarrollando un EA comercial desde cero (Parte 20): Un nuevo sistema de órdenes (III)

Desarrollando un EA comercial desde cero (Parte 20): Un nuevo sistema de órdenes (III)

Continuemos con la implantación del nuevo sistema de órdenes. La creación de este sistema es algo que exige un buen dominio de MQL5, así como entender cómo funciona en realidad la plataforma MetaTrader 5 y qué recursos nos proporciona.
preview
Cómo construir un EA que opere automáticamente (Parte 05): Gatillos manuales (II)

Cómo construir un EA que opere automáticamente (Parte 05): Gatillos manuales (II)

Aprenda a crear un EA que opere automáticamente de forma sencilla y segura. Al final del artículo anterior, pensé que sería apropiado permitir el uso del EA de forma manual, al menos durante un tiempo.
Interfaces gráficas XI: Controles dibujados (build 14.2)
Interfaces gráficas XI: Controles dibujados (build 14.2)

Interfaces gráficas XI: Controles dibujados (build 14.2)

En la nueva versión de la librería, todos los controles van a dibujarse en los objetos gráficos separados tipo OBJ_BITMAP_LABEL. Además, seguiremos describiendo la optimización del código: es decir, analizaremos los cambios en las clases que representan el núcleo de la librería.
Otras clases en la biblioteca DoEasy (Parte 67): Clase de objeto de gráfico
Otras clases en la biblioteca DoEasy (Parte 67): Clase de objeto de gráfico

Otras clases en la biblioteca DoEasy (Parte 67): Clase de objeto de gráfico

En este artículo, crearemos una clase de objeto de gráfico (de un gráfico de un instrumento comercial) y modificaremos la clase de colección de objetos de señal mql5 para que cada objeto de señal guardado en la colección actualice también todos sus parámetros al actualizarse la lista.
preview
Aprendiendo MQL5 de principiante a profesional (Parte I): Comenzamos a programar

Aprendiendo MQL5 de principiante a profesional (Parte I): Comenzamos a programar

Este artículo supone la introducción a toda una serie de artículos sobre programación. Partimos del supuesto de que el lector no se ha enfrentado nunca a la programación. Así que empezaremos por lo básico. Nivel de conocimientos de programación: principiante absoluto.
preview
Redes neuronales: así de sencillo (Parte 33): Regresión cuantílica en el aprendizaje Q distribuido

Redes neuronales: así de sencillo (Parte 33): Regresión cuantílica en el aprendizaje Q distribuido

Continuamos explorando el aprendizaje Q distribuido. Hoy analizaremos este enfoque desde un ángulo diferente. Vamos a hablar de la posibilidad de utilizar la regresión cuantílica para resolver el problema de la previsión de los movimientos de precio.
preview
Redes neuronales: así de sencillo (Parte 16): Uso práctico de la clusterización

Redes neuronales: así de sencillo (Parte 16): Uso práctico de la clusterización

En el artículo anterior, creamos una clase para la clusterización de datos. En este artículo, queremos compartir con el lector diferentes opciones de uso de los resultados obtenidos para resolver problemas prácticos en el trading.
preview
Redes neuronales: así de sencillo (Parte 19): Reglas asociativas usando MQL5

Redes neuronales: así de sencillo (Parte 19): Reglas asociativas usando MQL5

Continuamos con el tema de la búsqueda de reglas asociativas. En el artículo anterior, vimos los aspectos teóricos de este tipo de problemas. En el presente artículo, mostraremos la implementación del método FP-Growth usando MQL5. Y también pondremos a prueba nuestra aplicación con datos reales.
preview
Redes neuronales: así de sencillo (Parte 20): Autocodificadores

Redes neuronales: así de sencillo (Parte 20): Autocodificadores

Continuamos analizando los algoritmos de aprendizaje no supervisado. El lector podría preguntarse sobre la relevancia de las publicaciones recientes en el tema de las redes neuronales. En este nuevo artículo, retomaremos el uso de las redes neuronales.
preview
Múltiples indicadores en un gráfico (Parte 05): Convirtamos el MetaTrader 5 en un sistema RAD (I)

Múltiples indicadores en un gráfico (Parte 05): Convirtamos el MetaTrader 5 en un sistema RAD (I)

A pesar de no saber programar, muchas personas son bastante creativas y tienen grandes ideas, pero la falta de conocimientos o de entendimiento sobre la programación les impide hacer algunas cosas. Aprenda a crear un Chart Trade, pero utilizando la propia plataforma MT5, como si fuera un IDE.
preview
Redes neuronales: así de sencillo (Parte 21): Autocodificadores variacionales (VAE)

Redes neuronales: así de sencillo (Parte 21): Autocodificadores variacionales (VAE)

En el anterior artículo, vimos el algoritmo del autocodificador. Como cualquier otro algoritmo, tiene ventajas y desventajas. En la implementación original, el autocodificador se encarga de dividir los objetos de la muestra de entrenamiento tanto como sea posible. Y en este artículo, en cambio, hablaremos de cómo solucionar algunas de sus deficiencias.
preview
Desarrollando un EA comercial desde cero (Parte 09): Un salto conceptual (II)

Desarrollando un EA comercial desde cero (Parte 09): Un salto conceptual (II)

Colocación del Chart Trade en una ventana flotante. En el artículo anterior creamos el sistema base para utilizar templates dentro de una ventana flotante.
preview
Gestor de riesgos para el trading manual

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.
preview
Indicador CCI. Modernización y nuevas posibilidades

Indicador CCI. Modernización y nuevas posibilidades

En este artículo, analizaremos la posibilidad de modernizar el indicador CCI. Además, presentaremos un ejemplo de modificación de este indicador.
preview
Cómo construir un EA que opere automáticamente (Parte 11): Automatización (III)

Cómo construir un EA que opere automáticamente (Parte 11): Automatización (III)

Un sistema automatizado sin seguridad no tendrá éxito. Sin embargo, la seguridad no se consigue sin entender bien algunas cosas. En este artículo, comprenderemos por qué es tan difícil lograr la máxima seguridad en los sistemas automatizados.
preview
Redes neuronales: así de sencillo (Parte 49): Soft Actor-Critic

Redes neuronales: así de sencillo (Parte 49): Soft Actor-Critic

Continuamos nuestro análisis de los algoritmos de aprendizaje por refuerzo en problemas de espacio continuo de acciones. En este artículo, le propongo introducir el algoritmo Soft Astog-Critic (SAC). La principal ventaja del SAC es su capacidad para encontrar políticas óptimas que no solo maximicen la recompensa esperada, sino que también tengan la máxima entropía (diversidad) de acciones.
preview
Experimentos con redes neuronales (Parte 3): Uso práctico

Experimentos con redes neuronales (Parte 3): Uso práctico

Las redes neuronales lo son todo. Vamos a comprobar en la práctica si esto es así. MetaTrader 5 como herramienta autosuficiente para el uso de redes neuronales en el trading. Una explicación sencilla.
preview
Redes neuronales: así de sencillo (Parte 34): Función cuantílica totalmente parametrizada

Redes neuronales: así de sencillo (Parte 34): Función cuantílica totalmente parametrizada

Seguimos analizando algoritmos de aprendizaje Q distribuidos. En artículos anteriores hemos analizado los algoritmos de aprendizaje Q distribuido y cuantílico. En el primero, enseñamos las probabilidades de los rangos de valores dados. En el segundo, enseñamos los rangos con una probabilidad determinada. Tanto en el primer algoritmo como en el segundo, usamos el conocimiento a priori de una distribución y enseñamos la otra. En el presente artículo, veremos un algoritmo que permite al modelo aprender ambas distribuciones.
preview
Creamos un asesor multidivisa sencillo utilizando MQL5 (Parte 4): Media móvil triangular - Señales del indicador

Creamos un asesor multidivisa sencillo utilizando MQL5 (Parte 4): Media móvil triangular - Señales del indicador

Por asesor multidivisa en este artículo entendemos un asesor, o un robot comercial que puede operar (abrir/cerrar órdenes, gestionar órdenes como Trailing Stop Loss y Trailing Profit) con más de un par de símbolos desde un gráfico. Esta vez usaremos un solo indicador, a saber, la media móvil triangular en uno o varios marcos temporales.
preview
Redes neuronales: así de sencillo (Parte 18): Reglas asociativas

Redes neuronales: así de sencillo (Parte 18): Reglas asociativas

Como continuación de esta serie, hoy presentamos otro tipo de tarea relacionada con los métodos de aprendizaje no supervisado: la búsqueda de reglas asociativas. Este tipo de tarea se usó por primera vez en el comercio minorista para analizar las cestas de la compra. En este artículo, hablaremos de las posibilidades que ofrece el uso de dichos algoritmos en el trading.
preview
Desarrollando un EA comercial desde cero (Parte 21): Un nuevo sistema de órdenes (IV)

Desarrollando un EA comercial desde cero (Parte 21): Un nuevo sistema de órdenes (IV)

Finalmente el sistema visual funcionará... aún no del todo. Aquí terminaremos de hacer los cambios básicos, y no serán pocos, serán muchos, y todos ellos necesarios, y todo el trabajo será bastante interesante.
preview
Trading bursátil con cuadrícula usando un asesor con órdenes stop pendientes en la Bolsa de Moscú (MOEX)

Trading bursátil con cuadrícula usando un asesor con órdenes stop pendientes en la Bolsa de Moscú (MOEX)

Hoy utilizaremos un enfoque comercial de cuadrícula con órdenes stop pendientes en un asesor experto en el lenguaje de estrategias comerciales MQL5 para MetaTrader 5 en la Bolsa de Moscú (MOEX). Al comerciar en el mercado, una de las estrategias más simples consiste en colocar una cuadrícula de órdenes diseñada para "atrapar" el precio del mercado.
preview
Cómo construir un EA que opere automáticamente (Parte 13): Automatización (V)

Cómo construir un EA que opere automáticamente (Parte 13): Automatización (V)

¿Sabes lo que es un diagrama de flujo? ¿Sabes cómo utilizarlo? ¿Cree que los diagramas de flujo son sólo cosas de aprendiz de programador? Pues echa un vistazo a este artículo y aprende a trabajar con diagramas de flujo.
Interfaces gráficas X: Actualizaciones para la tabla dibujada y optimización del código (build 10)
Interfaces gráficas X: Actualizaciones para la tabla dibujada y optimización del código (build 10)

Interfaces gráficas X: Actualizaciones para la tabla dibujada y optimización del código (build 10)

Continuamos completar la tabla dibujada (CCanvasTable) con nuevas funcionalidades. Ahora la tabla va a contener las siguientes funciones: resalto de las filas al situar el cursor encima; posibilidad de agregar el array de imágenes para cada celda y el método para su conmutación; posibilidad de establecer y editar el texto de las cceldas durante la ejecución del programa, y muchas cosas más.
Otras clases en la biblioteca DoEasy (Parte 71): Eventos de la colección de objetos de gráfico
Otras clases en la biblioteca DoEasy (Parte 71): Eventos de la colección de objetos de gráfico

Otras clases en la biblioteca DoEasy (Parte 71): Eventos de la colección de objetos de gráfico

En el presente artículo, crearemos la funcionalidad necesaria para monitorear algunos eventos de los objetos del gráfico: añadir y eliminar gráficos de símbolos, añadir y eliminar subventanas en el gráfico, y también añadir/eliminar/cambiar indicadores en las ventanas del gráfico.
preview
Cómo construir un EA que opere automáticamente (Parte 07): Tipos de cuentas (II)

Cómo construir un EA que opere automáticamente (Parte 07): Tipos de cuentas (II)

Aprenda a crear un EA que opere automáticamente de forma sencilla y segura. Uno siempre debe estar al tanto de lo que está haciendo un EA automatizado, y si se descarrila, eliminarlo lo más rápido posible del gráfico, para poner fin a lo que él estaba haciendo y evitar que las cosas se salgan de control.
preview
Aprenda a operar la brecha de valor justo (Fair Value Gap, FVG) y los desequilibrios paso a paso: Enfoque basado en el concepto de dinero inteligente (Smart Money Concept, SMC)

Aprenda a operar la brecha de valor justo (Fair Value Gap, FVG) y los desequilibrios paso a paso: Enfoque basado en el concepto de dinero inteligente (Smart Money Concept, SMC)

Una guía paso a paso para crear e implementar un algoritmo de trading automatizado en MQL5 basado en la estrategia de trading Fair Value Gap (FVG). Un tutorial detallado sobre la creación de un asesor experto que puede ser útil tanto para principiantes como para operadores experimentados.
preview
Redes neuronales: así de sencillo (Parte 35): Módulo de curiosidad intrínseca (Intrinsic Curiosity Module)

Redes neuronales: así de sencillo (Parte 35): Módulo de curiosidad intrínseca (Intrinsic Curiosity Module)

Seguimos analizando los algoritmos de aprendizaje por refuerzo. Todos los algoritmos que hemos estudiado hasta ahora requerían la creación de una política de recompensas tal que el agente pudiera evaluar cada una de sus acciones en cada transición de un estado del sistema a otro, pero este enfoque resulta bastante artificial. En la práctica, existe cierto tiempo de retraso entre la acción y la recompensa. En este artículo, le sugerimos que se familiarice con un algoritmo de entrenamiento de modelos que puede funcionar con varios retrasos de tiempo desde la acción hasta la recompensa.
preview
Creamos un asesor multidivisa sencillo utilizando MQL5 (Parte 2): Señales del indicador - Parabolic SAR de marco temporal múltiple

Creamos un asesor multidivisa sencillo utilizando MQL5 (Parte 2): Señales del indicador - Parabolic SAR de marco temporal múltiple

En este artículo, entenderemos por asesor multidivisa un asesor o robot comercial que puede comerciar (abrir/cerrar órdenes, gestionar órdenes, por ejemplo, trailing-stop y trailing-profit, etc.) con más de un par de símbolos de un gráfico. Esta vez usaremos solo un indicador, a saber, Parabolic SAR o iSAR en varios marcos temporales, comenzando desde PERIOD_M15 y terminando con PERIOD_D1.
preview
Biblioteca de análisis numérico ALGLIB en MQL5

Biblioteca de análisis numérico ALGLIB en MQL5

En este artículo, echaremos un vistazo rápido a la biblioteca de análisis numérico ALGLIB 3.19, sus aplicaciones y sus nuevos algoritmos, que pueden mejorar la eficiencia del análisis de datos financieros.
preview
Experimentos con redes neuronales (Parte 6): El perceptrón como herramienta autosuficiente de predicción de precios

Experimentos con redes neuronales (Parte 6): El perceptrón como herramienta autosuficiente de predicción de precios

Ejemplo de utilización de un perceptrón como herramienta autónoma de predicción de precios. En el artículo exploraremos los conceptos generales y veremos un sencillo asesor experto ya preparado, así como los resultados de su optimización.
preview
Cómo construir un EA que opere automáticamente (Parte 10): Automatización (II)

Cómo construir un EA que opere automáticamente (Parte 10): Automatización (II)

La automatización no significa nada si no se puede controlar el horario. Ningún trabajador puede ser eficiente trabajando 24 horas al día. Sin embargo, muchos creen que un sistema automatizado debe trabajar 24 horas al día. Siempre es bueno tener formas de configurar una franja horaria para el Expert Advisor. En este artículo, vamos a discutir cómo agregar correctamente tal franja horaria.
preview
Redes neuronales: así de sencillo (Parte 15): Clusterización de datos usando MQL5

Redes neuronales: así de sencillo (Parte 15): Clusterización de datos usando MQL5

Continuamos analizando el método de clusterización. En este artículo, crearemos una nueva clase CKmeans para implementar uno de los métodos de clusterización de k-medias más extendidos. Según los resultados de la prueba, el modelo ha podido identificar alrededor de 500 patrones.
preview
Creamos un asesor multidivisa sencillo utilizando MQL5 (Parte 1): Señales basadas en ADX combinadas con Parabolic SAR

Creamos un asesor multidivisa sencillo utilizando MQL5 (Parte 1): Señales basadas en ADX combinadas con Parabolic SAR

En este artículo, entenderemos por asesor multidivisa un asesor o robot comercial que puede comerciar (abrir/cerrar órdenes, gestionar órdenes, etc.) con más de un par de símbolos de un gráfico.
preview
Cómo construir un EA que opere automáticamente (Parte 14): Automatización (VI)

Cómo construir un EA que opere automáticamente (Parte 14): Automatización (VI)

Aquí pondremos realmente en práctica todos los conocimientos de esta serie. Finalmente construiremos un sistema 100% automático y funcional. Pero para hacer esto, tendrás que aprender una última cosa.
preview
Introducción a MQL5 (Parte 5): Funciones de trabajo con arrays para principiantes

Introducción a MQL5 (Parte 5): Funciones de trabajo con arrays para principiantes

En el quinto artículo de nuestra serie, nos familiarizaremos con el mundo de los arrays en MQL5. Este artículo ha sido pensado para principiantes. En este artículo intentaremos repasar conceptos complejos de programación de manera simplificada para que el material resulte comprensible para todos. Asimismo, exploraremos conceptos básicos, discutiremos diferentes cuestiones y compartiremos conocimientos.
preview
Aproximación por fuerza bruta a la búsqueda de patrones (Parte VI): Optimización cíclica

Aproximación por fuerza bruta a la búsqueda de patrones (Parte VI): Optimización cíclica

En este artículo mostraremos la primera parte de las mejoras que nos permitieron no solo cerrar toda la cadena de automatización para comerciar en MetaTrader 4 y 5, sino también hacer algo mucho más interesante. A partir de ahora, esta solución nos permitirá automatizar completamente tanto el proceso de creación de asesores como el proceso de optimización, así como minimizar el gasto de recursos a la hora de encontrar configuraciones comerciales efectivas.
preview
Trabajando con las series temporales en la biblioteca DoEasy (Parte 54): Clases herederas del indicador abstracto básico

Trabajando con las series temporales en la biblioteca DoEasy (Parte 54): Clases herederas del indicador abstracto básico

En este artículo, vamos a hablar de la creación de las clases de los objetos herederos del indicador abstracto básico. Estos objetos nos permitirán crear los asesores expertos tipo indicador, recopilar y obtener estadísticas de valores de datos de diferentes indicadores y precios. Además, crearemos una colección de objetos de indicador de la cual se podrá obtener el acceso a las propiedades y datos de cada indicador creado en el programa.
preview
Desarrollando un EA comercial desde cero (Parte 19): Un nuevo sistema de órdenes (II)

Desarrollando un EA comercial desde cero (Parte 19): Un nuevo sistema de órdenes (II)

Aquí vamos a desarrollar un sistema gráfico de órdenes, del tipo «vea lo que está pasando». Cabe decir que no partiremos de cero, sino que modificaremos el sistema existente añadiendo aún más objetos y eventos al gráfico del activo que estamos negociando.