Artículos sobre programación en el lenguaje 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
Asesor Experto multiplataforma: Niveles stop
Asesor Experto multiplataforma: Niveles stop

Asesor Experto multiplataforma: Niveles stop

En este artículo se analiza la implementación de niveles stop en el asesor comercial, la implementación es compatible con las plataformas MetaTrader 4 y MetaTrader 5.
Análisis de regresión múltiple, generador y probador de estrategias en una sola aplicación
Análisis de regresión múltiple, generador y probador de estrategias en una sola aplicación

Análisis de regresión múltiple, generador y probador de estrategias en una sola aplicación

El artículo ofrece una descripción de las formas de utilización del análisis de regresión múltiple para el desarrollo de sistemas de trading. Muestra el uso del análisis de regresión para la automatización de la búsqueda de estrategias. Se proporciona como ejemplo una ecuación de regresión generada e integrada en un asesor experto sin necesidad de disponer de habilidades de programación.
Investigando las características estacionales de las series temporales financieras con la ayuda de diagramas Boxplot
Investigando las características estacionales de las series temporales financieras con la ayuda de diagramas Boxplot

Investigando las características estacionales de las series temporales financieras con la ayuda de diagramas Boxplot

Investigando las características estacionales de las series temporales financieras con la ayuda de diagramas Boxplot. Cada diagrama de caja individual ofrece una buena imagen sobre la distribución de los valores en el conjunto de datos. A pesar de sus similitudes visuales, no debemos confundir el diagrama de caja con el gráfico de velas japonesas.
Funciones para la Gestión de fondos en un Expert Advisor
Funciones para la Gestión de fondos en un Expert Advisor

Funciones para la Gestión de fondos en un Expert Advisor

El desarrollo de estrategias de trading se basa inicialmente en la búsqueda de pautas para entrar y salir del mercado, así como en el mantenimiento de las posiciones. Si somos capaces de poner algunas pautas en forma de reglas para el trading automatizado, entonces se encargará el trader del cálculo del volumen de las posiciones, el valor de los diferenciales, así como el mantenimiento de un nivel seguro de fondos hipotecarios para garantizar las posiciones abiertas en el modo automatizado. En este artículo usaremos el lenguaje MQL5 para realizar ejemplos sencillos sobre cómo llevar a cabo estos cálculos.
preview
Perceptrón Multicapa y Algoritmo de Retropropagación

Perceptrón Multicapa y Algoritmo de Retropropagación

Recientemente, al aumentar la popularidad de estos dos métodos, se han desarrollado tantas bibliotecas en Matlab, R, Python, C++, etc., que reciben el conjunto de entrenamiento como entrada y construyen automáticamente una red neuronal apropiada para el supuesto problema. Vamos a entender cómo funciona un tipo básico de red neural, (perceptrón de una sola neurona y perceptrón multicapa), y un fascinante algoritmo encargado del aprendizaje de la red, (gradiente descendente y retropropagación). Estos modelos de red servirán como base para los modelos más complejos que existen hoy en día.
¿Cómo copiar señales con la ayuda de un asesor según sus propias normas?
¿Cómo copiar señales con la ayuda de un asesor según sus propias normas?

¿Cómo copiar señales con la ayuda de un asesor según sus propias normas?

Al suscribirse a una señal puede darse la situación siguiente: su cuenta comercial tiene un apalancamiento de 1:100, el proveedor tiene un apalancamiento de 1:500 y comercia con un lote mínimo, y sus balances comerciales son prácticamente iguales, además, el coeficiente de copiado es del 10% al 15%. En este artículo hablaremos de cómo aumentar el coeficiente de copiado en ese caso.
Un Gestor de Órdenes Virtuales para rastrear órdenes dentro del entorno centrado en posiciones de MetaTrader 5
Un Gestor de Órdenes Virtuales para rastrear órdenes dentro del entorno centrado en posiciones de MetaTrader 5

Un Gestor de Órdenes Virtuales para rastrear órdenes dentro del entorno centrado en posiciones de MetaTrader 5

Esta biblioteca de clase se puede añadir al Asesor Experto de MetaTrader 5 para activarla y escribirla con un enfoque centrado en las órdenes, muy similar a MetaTrader 4, en comparación con el enfoque basado en posiciones de MetaTrader 5. Esto se consigue rastreando las órdenes virtuales en el Terminal de Cliente MetaTrader 5, manteniendo a la vez un stop de seguridad para cada posición como protección ante desastres.
Neuroredes profundas (Parte I). Preparación de datos
Neuroredes profundas (Parte I). Preparación de datos

Neuroredes profundas (Parte I). Preparación de datos

Esta serie de artículos continúa y desarrolla el tema de las neuroredes profundas (DNN), que ha sido incluidas en los últimos tiempos en muchas áreas aplicadas, incluyendo el trading. Se analizan las corrientes de dicho tema, comprobándose con experimentos prácticos los nuevos métodos e ideas. El primer artículo de la serie está dedicado a la preparación de los datos para las DNN.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XIV): El objeto "Símbolo"
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XIV): El objeto "Símbolo"

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XIV): El objeto "Símbolo"

En este artículo vamos a crear un objeto de símbolo que será el objeto básico para crear la colección de símbolos. Con su ayuda, podremos obtener los datos de los símbolos necesarios para su posterior análisis y comparación.
preview
Aprenda por qué y cómo diseñar su sistema de trading algorítmico

Aprenda por qué y cómo diseñar su sistema de trading algorítmico

En este artículo, mostraremos los fundamentos de MQL que permitirán a los tráders principiantes diseñar su propio sistema de trading algorítmico (Asesor Experto) mediante el diseño de un sistema de trading algorítmico simple después de mencionar algunas ideas básicas de MQL5
Exponer código C# a MQL5 usando exportaciones no gestionadas
Exponer código C# a MQL5 usando exportaciones no gestionadas

Exponer código C# a MQL5 usando exportaciones no gestionadas

En este artículo presento diferentes métodos de interacción entre código MQL5 y código gestionado C#. También facilito varios ejemplos sobre cómo ordenar estructuras MQL5 en contraposición a C#, y cómo invocar funciones DLL exportadas en scripts MQL5. Creo que los ejemplos que proporciono podrán servir como base para estudios futuros sobre escritura de DLLs en código gestionado. Este artículo también abre puertas para MetaTrader para usar varias bibliotecas que ya están implementadas en C#.
Creación de un Expert Advisor que opera con varios instrumentos
Creación de un Expert Advisor que opera con varios instrumentos

Creación de un Expert Advisor que opera con varios instrumentos

El concepto de diversificación de activos en los mercados financieros es bastante antiguo, y siempre ha atraído a los operadores principiantes. En este artículo, el autor propone un enfoque muy simplificado para la implementación de un Expert Advisor multidivisa, para una introducción inicial a este tipo de estrategias de trading.
Expresiones regulares para los traders
Expresiones regulares para los traders

Expresiones regulares para los traders

Una expresión regular es un lenguaje especial para el manejo de textos mediante la aplicación de una regla especificada, también llamada un regex o regexp para abreviar. En este artículo, vamos a mostrar cómo manejar un informe sobre el trade con la librería RegularExpressions para MQL5 y también demostrar los resultados de optimización después de usarlo.
Conectando redes neuronales de NeuroSolutions
Conectando redes neuronales de NeuroSolutions

Conectando redes neuronales de NeuroSolutions

Además de la creación de las redes neuronales, el paquete del software de NeuroSolutions permite su exportación como archivos DLL. En este artículo se describe el proceso de creación de una red neuronal, la generación de un archivo DLL y su conexión a un Expert Advisor para el trading en MetaTrader 5.
Intercambio de datos entre indicadores. Es fácil
Intercambio de datos entre indicadores. Es fácil

Intercambio de datos entre indicadores. Es fácil

Queremos crear un entorno que proporcione acceso a los datos de los indicadores adjuntos a un gráfico y que tenga las siguientes propiedades: ausencia de copiado de datos; modificación mínima del código de métodos disponibles si necesitamos usarlo; es preferible el código de MQL (por supuesto, tenemos que usar DLL pero usaremos una docena de strings de código de C++). El artículo describe un método sencillo para desarrollar un entorno de programa para el terminal de MetaTrader que proporcione medios para acceder a los buffers del indicador desde otros programas MQL.
Implementación de Take Profit en forma de órdenes limitadas sin cambiar el código fuente del EA
Implementación de Take Profit en forma de órdenes limitadas sin cambiar el código fuente del EA

Implementación de Take Profit en forma de órdenes limitadas sin cambiar el código fuente del EA

Desde hace mucho en el foro se discute la cuestión del uso de órdenes limitadas en vez de colocar el Take Profit estándar para la posición. ¿En qué consiste la ventaja de este enfoque y cómo se puede implementarlo en la negociación? En este artículo me gustaría proponerles mi propia visión de las respuestas a estas preguntas.
Evaluación de los sistemas de trading -la eficiencia de entrada, salida y transacciones en general
Evaluación de los sistemas de trading -la eficiencia de entrada, salida y transacciones en general

Evaluación de los sistemas de trading -la eficiencia de entrada, salida y transacciones en general

Hay muchos criterios que permiten determinar el rendimiento y la rentabilidad de un sistema de trading. No obstante, los traders están siempre dispuestos a poner a prueba de choque cualquier sistema. En este artículo se explica cómo se pueden utilizar las estadísticas basadas en la medida del rendimiento, en la plataforma MetaTrader 5. Se incluye la clase para convertir la interpretación de las estadísticas para traders a una que no se contradice con la descripción presente en el libro "Statistika dlya traderov" (Estadísticas para traders) escrito por S.V. Bulashev. Se incluye también un ejemplo de optimización de una función personalizada.
preview
Matemáticas en el trading: Ratios de Sharpe y Sortino

Matemáticas en el trading: Ratios de Sharpe y Sortino

El rendimiento es la métrica más obvia usada por los inversores y los tráders principiantes a la hora de analizar la efectividad del comercio. Los tráders profesionales utilizan herramientas más fiables para el análisis de estrategias, como los ratios de Sharpe y Sortino.
Desarrollamos un Asesor Experto multiplataforma para colocar StopLoss y TakeProfit de acuerdo con nuestros riesgos
Desarrollamos un Asesor Experto multiplataforma para colocar StopLoss y TakeProfit de acuerdo con nuestros riesgos

Desarrollamos un Asesor Experto multiplataforma para colocar StopLoss y TakeProfit de acuerdo con nuestros riesgos

En este artículo, vamos a diseñar un EA que nos permite automatizar el proceso de la definición del lote que se usa para entrar en la transacción de acuerdo con nuestros riesgos. Además, este EA permitirá colocar automáticamente Take Profit con una proporción seleccionada respecto a Stop Loss, es decir, para cumplir la razón de 3 a 1, 4 a 1 o cualquier otra seleccionada por nosotros.
MQL para "Dummies": Cómo Diseñar y Construir Clases de Objetos
MQL para "Dummies": Cómo Diseñar y Construir Clases de Objetos

MQL para "Dummies": Cómo Diseñar y Construir Clases de Objetos

Creando un modelo de programa de diseño visual demostramos cómo diseñar y construir clases en MQL5. Este artículo está escrito para programadores principiantes que están trabajando con aplicaciones MT5. Propondremos una tecnología sencilla y fácil de entender para crear clases sin necesidad de entrar muy a fondo en la teoría de programación orientada al objeto.
Tendencia universal con interfaz gráfica
Tendencia universal con interfaz gráfica

Tendencia universal con interfaz gráfica

En este artículo, a base de una serie de indicadores estándar, se crea el indicador universal de tendencia. Se desarrolla la interfaz gráfica para seleccionar el tipo del indicador y configurar sus parámetros. El indicador se visualiza en una ventana separada con las series de iconos de diferentes colores.
Cuadrícula y martingale: ¿qué son y cómo usarlos?
Cuadrícula y martingale: ¿qué son y cómo usarlos?

Cuadrícula y martingale: ¿qué son y cómo usarlos?

En este artículo trataremos de explicar con detalle qué son la cuadrícula y el martingale, y qué tienen en común. También intentaremos analizar cómo de viables son en realidad estas estrategias. En el artículo habrá una parte matemática y otra práctica.
Depuración de programas en MQL5
Depuración de programas en MQL5

Depuración de programas en MQL5

Este artículo va dirigido a los programadores que ya conocen el lenguaje, pero que aún no han asimilado suficiententemente bien el desarrollo de programas. El artículo nos descubrirá métodos prácticos para depurar programas, es el fruto de la experiencia combinada, no sólo mía, sino también de muchos de los programadores de cuya experiencia he aprendido.
Creación de indicadores personalizados usando la clase CCanvas
Creación de indicadores personalizados usando la clase CCanvas

Creación de indicadores personalizados usando la clase CCanvas

En el artículo se analiza un ejemplo de creación de indicadores de dibujado personalizados con la ayuda de primivitas gráficas de la clase CCanvas.
Asesor Experto multiplataforma: Filtros temporales
Asesor Experto multiplataforma: Filtros temporales

Asesor Experto multiplataforma: Filtros temporales

En este artículo se analiza la implementación de diferentes métodos de la filtración temporal en el Asesor Experto multiplataforma. Las clases de los filtros temporales se ocupan de verificar la correspondencia de un determinado momento de tiempo a un determinado período definido en los ajustes.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXXII): Solicitudes comerciales pendientes - Colocación de órdenes según condiciones
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXXII): Solicitudes comerciales pendientes - Colocación de órdenes según condiciones

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXXII): Solicitudes comerciales pendientes - Colocación de órdenes según condiciones

Continuamos creando la funcionalidad para comerciar con la ayuda de solicitudes comerciales. En el presente artículo, implementaremos la posibilidad de colocar órdenes pendientes según una condición.
Colocando las entradas por los indicadores
Colocando las entradas por los indicadores

Colocando las entradas por los indicadores

En la vida de cada trader pueden ocurrir diferentes situaciones. A menudo usamos el historial de transacciones rentables para intentar restablecer una estrategia, y usando el historial de pérdidas, tratamos de mejorarla. En ambos casos comparamos las transacciones con indicadores conocidos. En este artículo, se propone la técnica de comparación por lotes de las transacciones con una serie de indicadores.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXXIV): Solicitudes comerciales pendientes - Eliminación de órdenes y posiciones según condiciones
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXXIV): Solicitudes comerciales pendientes - Eliminación de órdenes y posiciones según condiciones

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXXIV): Solicitudes comerciales pendientes - Eliminación de órdenes y posiciones según condiciones

En el presente artículo, finalizaremos la descripción del concepto de trabajo con solicitudes pendientes y crearemos la funcionalidad para eliminar órdenes pendientes y posiciones según una condición. De esta forma, dispondremos de toda una funcionalidad con la que podremos crear estrategias de usuario sencillas, para ser más exactos, una cierta lógica de comportamiento que el asesor activará al cumplirse las condiciones establecidas por el usuario.
Creando un feed de noticias personalizado en MetaTrader 5
Creando un feed de noticias personalizado en MetaTrader 5

Creando un feed de noticias personalizado en MetaTrader 5

En el artículo se analiza la posibilidad de crear un feed de noticias flexible, que ofrecezca multitud de opciones para elegir el tipo de noticias y su fuente. El artículo muestra cómo se pueden integrar web API con el terminal MetaTrader 5.
Patrones disponibles al comerciar con cestas de divisas
Patrones disponibles al comerciar con cestas de divisas

Patrones disponibles al comerciar con cestas de divisas

Continuando con el artículo anterior, donde se analizaba el comercio con las cestas de divisas, estudiaremos los patrones que puede detectar el tráder. También profundizaremos en los aspectos positivos y negativos de cada patrón y veremos las recomendaciones que se dan para cada uno de ellos. Como instrumento de análisis se han adoptado indicadores construidos sobre el oscilador de Williams.
Cómo trabajar con el módem GSM de un experto de MQL5
Cómo trabajar con el módem GSM de un experto de MQL5

Cómo trabajar con el módem GSM de un experto de MQL5

En la actualidad existen medios suficientes para monitorizar a distancia una cuenta comercial, con toda comodidad: con la ayuda de los terminales móviles, las notificaciones push y el trabajo con ICQ. Pero para todo ello se debe tener conexión a internet. Este artículo describe la creación un experto que les permitirá mantenerse en contacto con su terminal comercial, incluso en el caso de que el internet móvil no está disponible, más concretamente con ayuda de llamadas y mensajes SMS.
LifeHack para tráders: Optimización "silenciosa" o Trazando la distribución de trades
LifeHack para tráders: Optimización "silenciosa" o Trazando la distribución de trades

LifeHack para tráders: Optimización "silenciosa" o Trazando la distribución de trades

Análisis de la historia comercial y la construcción de los gráficos HTML de distribuciónde de los resultados comerciales dependiendo de la hora de entrada en la posición. Los gráficos se representan en tres segmentos, por horas, días y meses.
Ejemplo de desarrollo de una estrategia con spread para futuros en la bolsa de Moscú
Ejemplo de desarrollo de una estrategia con spread para futuros en la bolsa de Moscú

Ejemplo de desarrollo de una estrategia con spread para futuros en la bolsa de Moscú

MetaTrader 5 permite desarrollar y simular robots que comercien simultáneamente en varios instrumentos. El simulador de estrategias incorporado en la plataforma descarga de forma automática del servidor comercial del bróker la historia de ticks y tiene en cuenta las especificaciones de los contratos: el desarrollador no tiene que hacer nada con sus propias manos. Esto permite reproducir todas las condiciones del entorno comercial de forma fácil y extraordinariamente fiable. MetaTrader 5 permite desarrollar y poner a prueba robots, incluso simulando intervalos de milisegundos entre la llegada de ticks de diferentes símbolos. En este artículo mostraremos cómo realizar el desarrollo y la simulación de una estretegia de spread con dos futuros de la bolsa de Moscú.
Comparando MQL5 y QLUA - ¿Por qué las operaciones comerciales en MQL5 son hasta 28 veces más rápidas?
Comparando MQL5 y QLUA - ¿Por qué las operaciones comerciales en MQL5 son hasta 28 veces más rápidas?

Comparando MQL5 y QLUA - ¿Por qué las operaciones comerciales en MQL5 son hasta 28 veces más rápidas?

Muchos tráders a menudo no reflexionan sobre la velocidad a la que su solicitud llega hasta la bolsa, cuánto tiempo tarda en ejecutarse una vez está allí, y en qué momento el terminal del tráder conoce finalmente el resultado de la operación comercial. Habíamos prometido comparar la velocidad de las operaciones comerciales, porque nadie había hecho antes que nosotros semejantes mediciones con la ayuda de los programas en MQL5 y QLUA.
Recetas MQL5 - Señales comerciales de los canales móviles
Recetas MQL5 - Señales comerciales de los canales móviles

Recetas MQL5 - Señales comerciales de los canales móviles

En el artículo se muestra el proceso de desarrollo e implemementación de una clase-señalizadora en base a los canales móviles. A cada versión de la señal le sigue una estrategia comercial con los resultados de la simulación. Para crear las clases derivadas se usan las ​​clases de Biblioteca estándar.
El poder del ZigZag (Parte II): Ejemplos de obtención, procesamiento y representación de datos.
El poder del ZigZag (Parte II): Ejemplos de obtención, procesamiento y representación de datos.

El poder del ZigZag (Parte II): Ejemplos de obtención, procesamiento y representación de datos.

En la primera parte, describimos un indicador ZigZag modificado y una clase para la obtención de datos de los indicadores de este tipo. Ahora vamos a mostrar cómo crear indicadores basados ​​en dichas herramientas, además de escribir un experto para las pruebas, que realizará transacciones según las señales generadas por el indicador ZigZag. Como añadido, en este artículo se ofrecerá una nueva versión de la biblioteca de creación de interfaces gráficas EasyAndFast.
El enfoque econométrico en la búsqueda de leyes de mercado: autocorrelación, mapas de calor y diagramas de dispersión
El enfoque econométrico en la búsqueda de leyes de mercado: autocorrelación, mapas de calor y diagramas de dispersión

El enfoque econométrico en la búsqueda de leyes de mercado: autocorrelación, mapas de calor y diagramas de dispersión

Investigación ampliada de características estacionales: autocorrelación, mapas de calor y diagramas de dispersión. El objetivo de este artículo es mostrar que la "memoria del mercado" tiene un carácter estacional que se muestra a través de la maximización de la correlación de los incrementos de orden aleatorio.
Cómo elegir correctamente una señal comercial para alquilar en el Mercado. Guía paso a paso
Cómo elegir correctamente una señal comercial para alquilar en el Mercado. Guía paso a paso

Cómo elegir correctamente una señal comercial para alquilar en el Mercado. Guía paso a paso

En esta guía paso a paso se profundiza en el servicio de señales comerciales, en su estudio y en la selección sistemática para el posterior alquiler.
Recetas MQL5 - Escribiendo nuestra propia profundidad de mercado
Recetas MQL5 - Escribiendo nuestra propia profundidad de mercado

Recetas MQL5 - Escribiendo nuestra propia profundidad de mercado

Este artículo enseñará a los lectores a trabajar de forma programática con la profundidad de mercado, también describirá el principio de funcionamiento de la clase CMarketBook, que ampliará de forma orgánica la biblioteca estándar de clases MQL5 y proporcionará métodos cómodos para trabajar con la profundidad del mercado.
El prototipo del Robot de trading
El prototipo del Robot de trading

El prototipo del Robot de trading

Este artículo resume y sistematiza los principios para la creación de algoritmos de sistemas de trading. El artículo aborda el diseño del algoritmo del experto. Como ejemplo, se aborda la clase CExpert Advisor, que se puede utilizar para un desarrollo rápido y sencillo de los sistemas de trading.