Artículos de programación MQL4 y MQL5

icon

Aprenda el lenguaje de programación de estrategias comerciales MQL5 leyendo numerosos artículos la mayor parte de los cuales han sido escritos por Ustedes - miembros de MQL5.community. Con el fin de buscar rápidamente la respuesta sobre una u otra cuestión de programación, todos los artículos están divididos en categorías: "Integración", "Probador", "Estrategias comerciales", etc.

Siga las nuevas publicaciones y participe en sus discusiones en el foro de MQL5.community!

Nuevo artículo
últimas | mejores
Uso práctico del servidor privado virtual (VPS) para el autotrading
Uso práctico del servidor privado virtual (VPS) para el autotrading

Uso práctico del servidor privado virtual (VPS) para el autotrading

Autotrading usando VPS. Este artículo va dirigido excepcionalmente a los autotraders y seguidores del autotrading.
preview
Aplicación práctica de las redes neuronales en el trading (Parte 2). Visión por computadora

Aplicación práctica de las redes neuronales en el trading (Parte 2). Visión por computadora

El uso de la visión por computadora permite entrenar redes neuronales con la representación visual de la tabla de precios y los indicadores. Este método nos permitirá utilizar con mayor libertad todo el complejo de indicadores técnicos, pues no requiere su suministro digital a la red neuronal.
Cómo hacer más fácil la detección y recuperación de errores en el código de un asesor experto
Cómo hacer más fácil la detección y recuperación de errores en el código de un asesor experto

Cómo hacer más fácil la detección y recuperación de errores en el código de un asesor experto

En el desarrollo de asesores expertos son muy importantes las cuestiones relativas a la detección y recuperación de errores en el código. Lo importante de ello es que un error no detectado a tiempo puede arruinar una valiosa idea de un sistema de trading ya en la etapa de sus primeras pruebas. Por ello, cualquier desarrollador de asesores expertos sensible a ello tiene en cuenta dichos problemas desde el principio. Este artículo hace hincapié en algunos métodos que ayudan en esta difícil tarea.
Interfaces gráficas X: Actualizaciones para la librería Easy And Fast (build 3)
Interfaces gráficas X: Actualizaciones para la librería Easy And Fast (build 3)

Interfaces gráficas X: Actualizaciones para la librería Easy And Fast (build 3)

En este artículo se muestra la siguiente versión de la librería Easy And Fast (versión 3). Hemos corregido algunos fallos, así como hemos añadido nuevas posibilidades. Para más información, lea a continuación.
LifeHack para tráders: Informe comparativo de varias simulaciones
LifeHack para tráders: Informe comparativo de varias simulaciones

LifeHack para tráders: Informe comparativo de varias simulaciones

En el artículo se analiza el inicio simultáneo de la simulación del asesor en cuatro símbolos diferentes. La comparación final de los cuatro informes de la simulación se realizará en un recuadro, como sucede al elegir los productos en una tienda online. Como bonus adicional, se muestran los gráficos de distribución creados de forma automática para cada símbolo.
Gráfico líquido
Gráfico líquido

Gráfico líquido

¿Qué aspecto tiene un gráfico H1 cuyas barras se abren desde el segundo o el quinto minuto de la hora? ¿Qué aspecto tiene un gráfico redibujable cuyas horas de apertura de las barras se cambian cada minuto? ¿Qué ventajas ofrece el trading en este tipo de gráficos? En este artículo puede encontrar las respuestas a estas preguntas.
Análisis sintáctico de MQL usando las herramientas de MQL
Análisis sintáctico de MQL usando las herramientas de MQL

Análisis sintáctico de MQL usando las herramientas de MQL

El presente artículo describe el preprocesador, escáner y el parser (analizador sintáctico) para el análisis sintáctico de los códigos fuente en el lenguaje MQL. La implementación en MQL se adjunta.
Interfaces gráficas IX: Control "Paleta para seleccionar el color" (Capítulo 1)
Interfaces gráficas IX: Control "Paleta para seleccionar el color" (Capítulo 1)

Interfaces gráficas IX: Control "Paleta para seleccionar el color" (Capítulo 1)

Con este artículo se abre la novena parte de la serie sobre el desarrollo de la librería para la creación de las interfaces gráficas en el entorno de los terminales de trading MetaTrader. Se compone de dos partes en las que se muestran nuevos controles y elementos de la interfaz: «Paleta para seleccionar el color», «Botón para abrir la paleta de colores», «Indicador de progreso» y «Gráfico lineal».
Asesores por encargo. Instrucciones para el tráder
Asesores por encargo. Instrucciones para el tráder

Asesores por encargo. Instrucciones para el tráder

No todos los tráders son programadores. Y no todos los programadores son realmente buenos. Entonces, ¿qué debemos hacer si necesitamos automatizar nuestro sistema pero no tenemos tiempo ni ganas de estudiar MQL4?
El indicador Cuerda de Erik Nayman
El indicador Cuerda de Erik Nayman

El indicador Cuerda de Erik Nayman

En el presente artículo explicamos cómo funciona el indicador "Cuerda" (Rope), nos basamos en la obra de Erik L. Nayman "The Small Encyclopedia of Trader" (La pequeña enciclopedia del trader). Este indicador muestra la dirección de la tendencia mediante los valores alcistas (toros) y bajistas (osos) calculados en un periodo de tiempo determinado. Explicamos los principios de creación y cálculo de indicadores, ofreciendo algunos ejemplos de código. También cubrimos la construcción de un Asesor Experto basado en el indicador "Cuerda", así como la optimización de los parámetros externos.
Evaluación del riesgo en la secuencia de transacciones con un activo. Continuación
Evaluación del riesgo en la secuencia de transacciones con un activo. Continuación

Evaluación del riesgo en la secuencia de transacciones con un activo. Continuación

Este artículo desarrolla las ideas propuestas en la parte anterior y continua su análisis. Aquí se describen las cuestiones de la distribución de los beneficios, la modelación y el estudio de las regularidades estadísticas.
AutoGraf, un Asesor Experto Gráfico
AutoGraf, un Asesor Experto Gráfico

AutoGraf, un Asesor Experto Gráfico

Este artículo explica cómo funcionan los gráficos en la creación de una interfaz para gestionar el trading de manera adecuada.
preview
Ejemplo de creación de la estrategia comercial compleja Owl

Ejemplo de creación de la estrategia comercial compleja Owl

Mi estrategia se basa en los fundamentos clásicos del trading y en el perfeccionamiento de indicadores ampliamente usados en todo tipo de mercados. En la práctica, se trata de una herramienta lista para usar que nos permite sacar el máximo rendimiento a la nueva estrategia de negociación rentable propuesta.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXX): Solicitudes comerciales pendientes - Control de los objetos de solicitudes
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXX): Solicitudes comerciales pendientes - Control de los objetos de solicitudes

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXX): Solicitudes comerciales pendientes - Control de los objetos de solicitudes

En el anterior artículo, creamos las clases de los objetos de solicitudes pendientes que se corresponden con el concepto general de los objetos de la biblioteca. En el presente artículo, nos ocuparemos de la clase que permite controlar los objetos de solicitudes pendientes.
¿Cómo no caer en las trampas de la optimización?
¿Cómo no caer en las trampas de la optimización?

¿Cómo no caer en las trampas de la optimización?

El artículo describe los métodos para conocer mejor los resultados de la optimización del probador. También da algunos ejemplos que ayudan a evitar la "optimización perjudicial".
Sistema de Trading Mecánico "Horquilla de Chuvashov"
Sistema de Trading Mecánico "Horquilla de Chuvashov"

Sistema de Trading Mecánico "Horquilla de Chuvashov"

Este artículo señala el breve informe sobre el código de método y programa del sistema mecánico de trading basado en la técnica propuesta por Stanislav Chuvashov. El análisis de mercado considerado en el artículo tiene algo en común con el enfoque de Thomas DeMark para dibujar líneas de tendencia en el último intervalo de tiempo más cercano, Fractales, siendo los puntos de referencia en la construcción de líneas de tendencia.
Evaluación del riesgo en la secuencia de transacciones con un activo
Evaluación del riesgo en la secuencia de transacciones con un activo

Evaluación del riesgo en la secuencia de transacciones con un activo

En este artículo se describe el uso de los métodos del cálculo de probabilidades y la estadística matemática en el análisis de los sistemas comerciales.
Interfaces gráficas II: Control "Menú principal" (Capítulo 4)
Interfaces gráficas II: Control "Menú principal" (Capítulo 4)

Interfaces gráficas II: Control "Menú principal" (Capítulo 4)

Es el artículo final de la segunda parte de la serie sobre las interfaces gráficas. Aquí vamos a considerar la creación del control “Menú principal”. Se demostrará el proceso de su desarrollo y la configuración de los manejadores de las clases de la librería para una correcta reacción a las acciones del usuario. Además, hablaremos de los modos de conexión de los menús contextuales a los elementos del menú principal. Aparte de eso, trataremos la cuestión del bloqueo de los controles inactivos en el momento actual.
Simulación de patrones que surgen al comerciar con cestas de parejas de divisas. Parte I
Simulación de patrones que surgen al comerciar con cestas de parejas de divisas. Parte I

Simulación de patrones que surgen al comerciar con cestas de parejas de divisas. Parte I

Comenzamos a simular los patrones y comprobar las metodologías descritas en los artículos dedicados al comercio con cestas de parejas de divisas. Vamos a ver en la práctica cómo se aplican los patrones de ruptura de los niveles de sobrecompra/sobreventa.
Interfaces gráficas X: Actualizaciones para la librería Easy And Fast (build 2)
Interfaces gráficas X: Actualizaciones para la librería Easy And Fast (build 2)

Interfaces gráficas X: Actualizaciones para la librería Easy And Fast (build 2)

Desde la anterior publicación del artículo de esta serie, la librería Easy And Fast ha adquirido nuevas posibilidades. Ha sido hecha la optimización parcial del esquema y del código de la librería, eso ha reducido un poco el consumo de recursos de la CPU. Algunos métodos que se repiten con frecuencia en muchas clases de los controles han sido traspasados a la clase base CElement.
Trabajando con las series temporales en la biblioteca DoEasy (Parte 43): Las clases de los objetos de búferes de indicador
Trabajando con las series temporales en la biblioteca DoEasy (Parte 43): Las clases de los objetos de búferes de indicador

Trabajando con las series temporales en la biblioteca DoEasy (Parte 43): Las clases de los objetos de búferes de indicador

En el artículo, analizaremos la creación de las clases de los objetos de búfer de indicador como herederas del objeto de búfer abstracto, simplificando la declaración y el trabajo con los búferes de indicador al crear programas-indicadores propios basados en la biblioteca DoEasy.
Asesor Experto multiplataforma: las clases CExpertAdvisor y CExpertAdvisor
Asesor Experto multiplataforma: las clases CExpertAdvisor y CExpertAdvisor

Asesor Experto multiplataforma: las clases CExpertAdvisor y CExpertAdvisor

En el artículo final de la serie sobre el asesor comercial multiplataforma, hablaremos sobre las clases CExpertAdvisor y CExpertAdvisors, que sirven de contendores para los componentes del experto anteriormente descritos. Asimismo, analizaremos la implementación del monitoreo de las nuevas barras y el guardado de datos.
Usando indicadores para la optimización RealTime de EAs
Usando indicadores para la optimización RealTime de EAs

Usando indicadores para la optimización RealTime de EAs

No es ningún secreto que el éxito del funcionamiento de cualquier robot comercial depende de la correcta elección de sus parámetros (su optimización). Pero los parámetros óptimos para un intervalo temporal no siempre resultan los mejores en otro intervalo de la historia. Con frecuencia, asesores que son rentables en la simulación, dan pérdidas en tiempo real. Aquí nos surje la pregunta concerniente a la necesidad de optimizar continuamente. Allá donde aparece mucho trabajo rutinario, el hombre busca la forma de automatizarlo. En este artículo proponemos nuestro enfoque particular para solucionar esta tarea.
Estudio de técnicas de análisis de velas (Parte II): Búsqueda automática de patrones nuevos
Estudio de técnicas de análisis de velas (Parte II): Búsqueda automática de patrones nuevos

Estudio de técnicas de análisis de velas (Parte II): Búsqueda automática de patrones nuevos

En el anterior artículo, analizamos un total de 14 patrones, pero, como ya sabemos, existen otros modelos de velas. Y, para no sumergirnos en una revisión monótona de la enorme variedad de patrones restantes, hemos decidido tomar otro camino. En esta ocasión, ofrecemos al lector un sistema de búsqueda y prueba de nuevos modelos de velas basados en tipos de vela conocidos.
Generador de señales comerciales del indicador de usuario
Generador de señales comerciales del indicador de usuario

Generador de señales comerciales del indicador de usuario

Cómo hacer un generador de señales comerciales en base a un indicador de usuario. Cómo crear un indicador de usuario. Cómo obtener acceso a los datos del indicador de usuario. Para qué se necesita la construcción IS_PATTERN_USAGE(0) y el model 0.
Sistemas de Trading Adaptables y su Uso en el Terminal de Cliente MetaTrader 5
Sistemas de Trading Adaptables y su Uso en el Terminal de Cliente MetaTrader 5

Sistemas de Trading Adaptables y su Uso en el Terminal de Cliente MetaTrader 5

Este artículo sugiere una variante de un sistema adaptable que consta de varias estrategias, cada una de las cuales realiza sus propias operaciones de trading "virtuales". El trading real se realiza de acuerdo con las señales de la estrategia más rentable en cada momento. Gracias al uso del enfoque orientado al objeto, las clases para trabajar con datos y las clases de comercio de la Biblioteca estándar, la arquitectura del sistema parece sencilla y manejable; ahora, podrá crear y analizar fácilmente los sistemas adaptables que incluyen cientos de estrategias de comercio.
preview
Matrices y vectores en MQL5

Matrices y vectores en MQL5

La matriz y el vector de tipos de datos especiales nos permiten escribir un código próximo a la notación matemática. Esto elimina la necesidad de crear ciclos anidados y recordar la indexación correcta de las matrices que participan en los cálculos, aumentando la fiabilidad y la velocidad del desarrollo de programas complejos.
Nuevas oportunidades con Meta Trader 5
Nuevas oportunidades con Meta Trader 5

Nuevas oportunidades con Meta Trader 5

Meta Trader 4 se hizo popular entre los traders de todo el mundo y parecía tener todo lo que podía esperarse de él. Con su alta velocidad de procesamiento, estabilidad, amplias posibilidades para escribir indicadores, Expert Advisors, sistemas de información para el trading y la posibilidad de elegir entre cientos de brokers distintos, el terminal pronto se destacó del resto. Pero los tiempos van cambiando y pronto nos vimos ante el reto de pasar de Meta Trader 4 a Meta Trader 5. En este artículo vamos a describir las principales diferencias entre la quinta generación del terminal y la versión anterior.
preview
Aprendiendo a diseñar un sistema de trading con Ichimoku

Aprendiendo a diseñar un sistema de trading con Ichimoku

Este artículo continúa la serie sobre la construcción de sistemas comerciales basados en los indicadores más populares. Esta vez hablaremos del indicador Iсhimoku y crearemos un sistema comercial basado en sus indicadores.
Aplicación Práctica de Bases de Datos para Análisis de Mercados
Aplicación Práctica de Bases de Datos para Análisis de Mercados

Aplicación Práctica de Bases de Datos para Análisis de Mercados

Trabajar con datos se ha convertido en la principal tarea para el software moderno, tanto para aplicaciones independientes como para aplicaciones de red. Para resolver este problema se creó un software especializado. Se trata de los Sistemas de Gestión de Bases de Datos (Database Management Systems o DBMS), que pueden estructurar datos para su almacenamiento en el ordenador y su procesamiento. En lo que se refiere a trading, la mayoría de analistas no usan bases de datos en su trabajo. Pero hay tareas donde esta solución resultaría muy práctica. Este artículo facilita un ejemplo de indicadores que puede guardar y cargar datos de bases de datos tanto con arquitecturas de servidor de cliente como de servidor de archivos.
Gas neuronal creciente: implementación en MQL5
Gas neuronal creciente: implementación en MQL5

Gas neuronal creciente: implementación en MQL5

Este artículo muestra un ejemplo de cómo desarrollar un programa MQL5 implementando el algoritmo adaptativo de agrupamiento llamado gas neuronal creciente (GNG). El artículo está dirigido a aquellos usuarios que han estudiado la documentación del lenguaje y tienen cierta capacidad para programar y un conocimiento básico en el área de la neuroinformática.
La implementación del modo multidivisa en MetaTrader 5
La implementación del modo multidivisa en MetaTrader 5

La implementación del modo multidivisa en MetaTrader 5

Durante mucho tiempo, la gente ha tenido un gran interés en el análisis multidivisa y el trading multidivisa. La oportunidad de implementar un modo multidivisa completo solo es posible con la versión pública de MetaTrader 5 y el lenguaje de programación MQL5. En este artículo, vamos a proponer un modo de análisis y procesamiento de todos los ticks recibidos para varios símbolos. Como ejemplo, vamos a ver el indicador RSI multidivisa del índice dólar USDx.
Comercio por los niveles de DiNapoli
Comercio por los niveles de DiNapoli

Comercio por los niveles de DiNapoli

En este artículo se considera una de las versiones de la implementación práctica del Asesor Experto para el comercio por los niveles de DiNapoli a través de las herramientas estándar MQL5. Ha sido realizado el testeo de sus resultados, y han sido sacadas conclusiones.
Libro de Recetas MQL5: Cómo Evitar Errores al Configurar/Modificar Niveles de Trading
Libro de Recetas MQL5: Cómo Evitar Errores al Configurar/Modificar Niveles de Trading

Libro de Recetas MQL5: Cómo Evitar Errores al Configurar/Modificar Niveles de Trading

Continuando con nuestro trabajo en el Asesor Experto desde el artículo anterior de la serie llamado "MQL5 Cookbook: Analyzing Position Properties in the MetaTrader 5 Strategy Tester" (“Libro de Recetas MQL5: Analizar Propiedades de Posición en el Probador de Estrategias de MetaTrader 5”), seguiremos trabajando en nuestro código, reforzándolo con un buen número de útiles funciones, mejorando y optimizando también las funciones ya existentes. El Asesor Experto tendrá, en esta ocasión, parámetros externos que se podrán optimizar en el Probador de Estrategias de MetaTrader 5, y se parecerán en algunos aspectos a un sistema de trading simple.
Scalping combinatorio: analizando transacciones del pasado para aumentar el rendimiento de las transacciones futuras
Scalping combinatorio: analizando transacciones del pasado para aumentar el rendimiento de las transacciones futuras

Scalping combinatorio: analizando transacciones del pasado para aumentar el rendimiento de las transacciones futuras

Ofrecemos al lector la descripción de una tecnología para aumentar la eficacia de cualquier sistema de comercio automático. El artículo expone brevemente la idea, los fundamentos básicos, las posibilidades y las desventajas del método.
Libro de Recetas MQL5: Asesor Experto Multidivisa: un Enfoque Simple, Claro y Rápido
Libro de Recetas MQL5: Asesor Experto Multidivisa: un Enfoque Simple, Claro y Rápido

Libro de Recetas MQL5: Asesor Experto Multidivisa: un Enfoque Simple, Claro y Rápido

Este artículo describirá la implementación de un enfoque sencillo y apropiado para un Asesor Experto multidivisa. Esto significa que será posible configurar el Asesor Experto para simular/realizar operaciones de trading bajo condiciones idénticas pero con parámetros diferentes para cada símbolo. Como ejemplo, crearemos un patrón para dos símbolos pero de forma que solo podamos añadir símbolos adicionales, si es necesario, haciendo pequeños cambios en el código.
¿Dormir, o no dormir?
¿Dormir, o no dormir?

¿Dormir, o no dormir?

Se propone un uso alternativo de la función Sleep() en la realización de las pausas entre las acciones del AE. El método del que se habla aquí permite un uso inteligente del tiempo de máquina.
El tester en la terminal MetaTrader 4: Debería saberse
El tester en la terminal MetaTrader 4: Debería saberse

El tester en la terminal MetaTrader 4: Debería saberse

La interfaz elaborada de la terminal MetaTrader 4 es de vanguardia, pero además esta terminal incluye un tester de estrategias cuidadosamente realizado. Y aunque el valor de MetaTrader 4 como terminal de trading es obvio, la calidad de la estrategia del tester puede evaluarse sólo con su uso. Este artículo muestra las ventajas e inconvenientes de hacer pruebas en MetaTrader 4.
Libro de Recetas de MQL5: Obtener Propiedades de Posiciones
Libro de Recetas de MQL5: Obtener Propiedades de Posiciones

Libro de Recetas de MQL5: Obtener Propiedades de Posiciones

En este artículo crearemos un script con el que obtendremos todas las propiedades de posición y se las mostrará al usuario en un cuadro de diálogo. Al ejecutar el script, usted podrá seleccionar uno de los dos modos disponibles en la lista desplegable en los parámetros externos: para ver las propiedades de posición solo en el símbolo actual, o para ver las propiedades de posición en todos los símbolos.
El comercio en fórex y sus matemáticas básicas
El comercio en fórex y sus matemáticas básicas

El comercio en fórex y sus matemáticas básicas

El artículo pretende describir las principales características del comercio de divisas de la forma más rápida y simple posible, para compartir verdades sencillas con los lectores principiantes. También intentaremos responder a las preguntas más interesantes en el entorno comercial, así como escribir un indicador simple.