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

icon

Le espera una gran variedad de diferentes artículos sobre la creación de indicadores y robots comerciales para la plataforma MetaTrader usando el lenguaje MQL5. Cada artículo va acompañado con los códigos fuente, Usted puede abrir e iniciarlos en el editor MetaEditor de una manera independiente.

Estos artículos serán útiles tanto para los principiantes en el trading automático, como para los operadores experimentados en la programación y el trading. Aquí encontrará no sólo los ejemplos, sino también las nuevas ideas.

Nuevo artículo
últimas | mejores
MQL5 Wizard para "Dummies"

MQL5 Wizard para "Dummies"

A principios de 2011 lanzamos la primera versión del MQL5 Wizard. Esta nueva aplicación facilita una herramienta simple y conveniente para generar automáticamente robots de trading. Cualquier usuario de MetaTrader 5 puede crear un Asesor Experto personalizado sin siquiera saber cómo programar en MQL5.
Creación y simulación de símbolos personalizados en MetaTrader 5

Creación y simulación de símbolos personalizados en MetaTrader 5

La posibilidad de crear símbolos propios abre nuevos horizontes en el desarrollo de sistemas comerciales y el análisis de cualquier mercado financiero. Ahora los tráders pueden construir gráficos y simular estrategias comerciales con un número ilimitado de instrumentos financieros.
Experto comercial con interfaz gráfica: Llenando la funcionalidad (Parte II)

Experto comercial con interfaz gráfica: Llenando la funcionalidad (Parte II)

Tiene ante usted la segunda parte del artículo sobre la creación de un experto de señal multisímbolo para el comercio manual. Ya hemos creado la interfaz gráfica. En esta parte del artículo hablaremos sobre cómo conectar dicha interfaz con la funcionalidad del programa necesario.
Asesor Experto multiplataforma: Señales

Asesor Experto multiplataforma: Señales

En este artículo, se discuten las clases CSignal y CSignals que serán utilizadas en los Asesores Expertos multiplataforma. Han sido analizadas las diferencias entre MQL4 y MQL5 respecto a la organización de los datos necesarios para evaluar las señales comerciales obtenidas. Como resultado, tenemos el código compatible con los compiladores de ambas versiones.
Una librería par la construcción de gráficos mediante Google Chart API

Una librería par la construcción de gráficos mediante Google Chart API

La construcción de distintos tipos de diagramas constituye una parte esencial del análisis de la situación del mercado y de las pruebas de los sistemas de trading. Con frecuencia, para construir un diagrama sofisticado, es necesario organizar los datos de las salidas en un archivo, y luego utilizarlos en otras aplicaciones como MS Excel. Esto no es muy práctico y nos priva de la posibilidad de actualizar los datos de manera dinámica. Google Chart API proporciona los medios para crear gráficos en línea, mediante el envío de una petición especial al servidor. En este artículo, trataremos de automatizar el proceso de creación de esta petición y obtener el gráfico a partir del servidor de Google.
Un Ejemplo de Estrategia de Trading Basada en Diferencias de Zona Horaria en Continentes Distintos

Un Ejemplo de Estrategia de Trading Basada en Diferencias de Zona Horaria en Continentes Distintos

Navegando por Internet es fácil encontrar muchas estrategias que le darán un buen número de recomendaciones diversas. Tomemos una punto de vista interno y observemos el proceso de la creación de estrategias basado en las diferentes zonas horarias en continentes distintos.
Patrones de reversión: Testeando el patrón "Cabeza-Hombros"

Patrones de reversión: Testeando el patrón "Cabeza-Hombros"

El presente artículo es una continuación lógica del artículo anterior «Patrones de viraje: poniendo a prueba el patrón Pico/Valle doble». Ahora vamos a considerar otro patrón de reversión bastante bien conocido, llamado «Cabeza- Hombros», compararemos la eficacia del trading de ambos patrones e intentaremos combinar el trading con estos dos patrones en un sistema comercial único.
Cómo añadir rápidamente un panel de control a un indicador o asesor

Cómo añadir rápidamente un panel de control a un indicador o asesor

¿Quiere añadir a su indicador o asesor un panel gráfico de control rápido y cómodo, pero no sabe como hacerlo? En este artículo le enseñaré paso a paso cómo "atornillar" un panel de diálogo con parámetros de entrada a su programa MQL4/MQL5.
Transferir Indicadores de MQL4 a MQL5

Transferir Indicadores de MQL4 a MQL5

Este artículo está dedicado a las peculiaridades de transferir construcciones de precio escritas en MQL4 a MQL5. Para facilitar el proceso de transferir cálculos de indicador de MQL4 a MQL5, se recomienda la biblioteca de funciones mql4_2_mql5.mqh. Su uso se decribe en la base de transferencia de los indicadores MACD, Stochastic y RSI.
Usar Indicadores de MetaTrader 5 con la Estructura de Aprendizaje Automático ENCOG para Predicción de Series Cronológicas

Usar Indicadores de MetaTrader 5 con la Estructura de Aprendizaje Automático ENCOG para Predicción de Series Cronológicas

Este artículo presenta modos de conectar MetaTrader 5 a ENCOG - Red Neuronal Avanzada y Estructura de Aprendizaje Automático. Contiene la descripción e implementación de un indicador de red neuronal sencillo basado en indicadores técnicos estándar y un Asesor Experto basado en un indicador neuronal. Todos los códigos fuente, binarios combinados, DLLs y un ejemplo de red formada se pueden encontrar como archivos adjuntos a este artículo.
Simulación de estrategias comerciales con ticks reales

Simulación de estrategias comerciales con ticks reales

En este artículo le mostraremos los resultados de la simulación de una estrategia comercial sencilla en 3 modos: "1 minuto OHLC", "Todos los ticks" y "Cada tick en base a ticks reales" usando los ticks guardados en la historia.
Interacción entre MetaTrader 5 y MATLAB

Interacción entre MetaTrader 5 y MATLAB

Este artículo trata sobre la interacción entre MetaTrader 5 y el paquete matemático MatLab. Muestra el mecanismo de conversión de datos y el proceso de desarrollo de una librería universal para interactuar con el escritorio de MatLab. También describe el uso de las DLL generadas por el entorno de MatLab. Este artículo está dirigido a lectores experimentados que tienen conocimientos de C+ y MQL5.
SQL y MQL5: Trabajando con la base de datos SQLite

SQL y MQL5: Trabajando con la base de datos SQLite

El presente artículo va dirigido a programadores a los que les interesa el uso de SQL en sus proyectos. En el mismo, presentamos a los lectores la funcionalidad de SQLite y sus ventajas. El artículo no exige de conocimientos previos de SQLite, pero si sería de agradecer un conocimiento mínimo de SQL.
Interfaces gráficas I: Preparación de la estructura de la biblioteca (Capítulo 1)

Interfaces gráficas I: Preparación de la estructura de la biblioteca (Capítulo 1)

Con este artículo yo empiezo otra serie más que concierne al desarrollo de las interfaces gráficas. Actualmente, no hay ninguna librería del código que permita crear fácil y rápidamente las interfaces gráficas en las aplicaciones MQL. Me refiero a las interfaces gráficas a las que estamos acostumbrados en los sistemas operativos comunes.
El uso de ORDER_MAGIC para el trading con distintos Expert Advisors con un solo instrumento

El uso de ORDER_MAGIC para el trading con distintos Expert Advisors con un solo instrumento

Este artículo aborda cuestiones de codificación de la información, mediante la identificación mágica (magic-identification), así como la división, la agrupación y la sincronización del trading automatizado de distintos Expert Advisors. Este artículo puede resultar interesante para los principiantes, como para los traders más experimentados, ya que aborda la cuestión de las posiciones virtuales, que pueden ser muy útiles en la implementación de sistemas complejos de sincronización de los Expert Advisors y de varias estrategias.
Las bases de la programación orientada a objetos

Las bases de la programación orientada a objetos

No necesita saber qué es poliformismo, encapsulación, etc. para usar la programación orientada a objetos (OOP)... puede simplemente utilizar estas funciones. Este artículo trata las bases de la OOP con ejemplos prácticos.
Asesor Experto multiplataforma: Gestión de capital (money management)

Asesor Experto multiplataforma: Gestión de capital (money management)

En este artículo se analiza la implementación de la gestión de capital (money management) en el Asesor Experto multiplataforma. Las clases de la gestión de capital se encargan del cálculo del tamaño del lote que el Asesor Experto usará para entrar en la siguiente operación.
Patrones de viraje: Poniendo a prueba el patrón "Pico/valle doble"

Patrones de viraje: Poniendo a prueba el patrón "Pico/valle doble"

En la práctica del comercio, los tráders buscan con frecuencia los puntos de viraje de tendencia, puesto que precisamente en el momento en el que surge una tendencia, el precio tiene el mayor potencial de movimiento. Precisamente por ello, en la práctica del análisis técnico se analizan diferentes patrones de viraje. Uno de los más famosos y más utilizados en el patrón del pico/valle doble. En este artículo ofrecemos una variante de detección automática del patrón, y también ponemos a prueba su rentabilidad con datos históricos.
Procesando los eventos de transacciones en el Expert Advisor por medio de la función OnTrade()

Procesando los eventos de transacciones en el Expert Advisor por medio de la función OnTrade()

MQL5 introdujo infinidad de soluciones innovadoras, incluyendo el trabajo con distintos tipos de eventos (eventos de reloj, eventos sobre transacciones, eventos personalizados, etc.). La capacidad para gestionar eventos permite crear un tipo completamente nuevo de programas para el trading automático o semi-automático. En este artículo vamos a ver los eventos de transacciones y a escribir código para la función OnTrade(), encargada de procesar el evento Trade.
Cree sus propios paneles gráficos en MQL5

Cree sus propios paneles gráficos en MQL5

La funcionalidad del programa MQL5 viene determinada tanto por sus ricas características como por una interfaz de usuario muy desarrollada. A veces, la percepción visual es más importante que el funcionamiento rápido y estable. Esta es una guía paso a paso para que pueda crear por sí mismo paneles gráficos sobre la base de las clases de la librería estándar.
AutoElliottWaveMaker: la herramienta de MetaTrader 5 para el análisis semiautomático de los ondas de Elliott

AutoElliottWaveMaker: la herramienta de MetaTrader 5 para el análisis semiautomático de los ondas de Elliott

Este artículo hace una revisión de AutoElliottWaveMaker, el primer desarrollo para el análisis de ondas de Elliott en Meta Trader 5 que representa una combinación de etiquetado de ondas manual y automático. La herramienta de análisis de onda está escrita exclusivamente en MQL5 y no incluye librerías externas dll. Esta es otra prueba de que en MQL5 pueden (y deben) desarrollarse programas sofisticados e interesantes.
Principios de programación en MQL5: Variables globales del terminal  MetaTrader 5

Principios de programación en MQL5: Variables globales del terminal MetaTrader 5

Las variables globales del terminal es un medio imprescindible durante la programación de los Asesores Expertos complejos y seguros. Después de aprender a trabajar con las variables globales, ya no podrá imaginar la creación de los asesores expertos en MQL5 sin usarlas.
Cómo proteger su Asesor Experto cuando tradea en la Bolsa de Moscú

Cómo proteger su Asesor Experto cuando tradea en la Bolsa de Moscú

En este artículo se describen detalladamente los métodos de trabajo que sirven para garantizar la seguridad de la ejecución de operaciones comerciales en los mercados bursátiles y en los mercados de baja liquidez tomando de ejemplo la Sección de Derivados de la Bolsa de Moscú. Este artículo es la continuación lógica del artículo “Principios de formación de precios en el mercado bursátil tomando de ejemplo la Sección de Derivados de la Bolsa de Moscú” que contiene los principios teóricos del trading bursátil, pero lleva el carácter más práctico.
Teoría de Indicadores Adaptables Avanzados e Implementación en MQL5

Teoría de Indicadores Adaptables Avanzados e Implementación en MQL5

Este artículo describirá indicadores adaptables avanzados y su implementación en MQL5: Adaptive Cyber Cycle (Ciclo Cibernético Adaptable), Adaptive Center of Gravity (Centro de Gravedad Adaptable) y Adaptive RVI (Índice de Vigor Relativo Adaptable). Todos los indicadores se presentaron originalmente en "Cybernetic Analysis for Stocks and Futures" ("Análisis Cibernético de Acciones y Futuros"), de John F. Ehlers.
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.
Desarrollando las interfaces gráficas para los Asesores Expertos e indicadores a base de .Net Framework и C#

Desarrollando las interfaces gráficas para los Asesores Expertos e indicadores a base de .Net Framework и C#

Presentamos una manera simple y rápida de crear las ventanas gráficas usando el editor Visual Studio, con la integración posterior en el código MQL del Asesor Experto. Este artículo está destinado para un vasto círculo de lectores y no requiere ningunos conocimientos de C# y tecnología .Net.
Cómo intercambiar datos: una DLL para MQL5 en 10 minutos.

Cómo intercambiar datos: una DLL para MQL5 en 10 minutos.

No hay muchos programadores que recuerden cómo escribir una simple DLL y cuáles son las características especiales de los distintos tipos de vinculación del sistema. Usando varios ejemplos intentaré mostrar todo el proceso de creación de la DLL en 10 minutos, así como discutir algunos aspectos técnicos de nuestra implementación de la vinculación. Mostraré el proceso paso a paso de la creación de la DLL en Visual Studio con ejemplos de intercambio de distintos tipos de variables (números, matrices, strings, etc.). Además, explicaré cómo proteger su terminal de cliente de errores fatales con las DLL personalizadas.
Creando un ayudante para el comercio manual

Creando un ayudante para el comercio manual

El número de robots comerciales para trabajar en los mercados de divisas está creciendo últimamente como una bola de nieve. En ellos se implementan diferentes conceptos y estrategias, pero nadie ha conseguido hasta el momento crear una muestra perfecta de inteligencia artificial que nunca tenga pérdidas. Por eso, muchos tráders se mantienen fieles al comercio manual. Precisamente para esos especialistas se crean los ayudantes robotizados, los llamados paneles comerciales. Este artículo es otro ejemplo más de la creación de un panel comercial partiendo "desde cero".
Desarrollo de indicadores bursátiles con control de volumen tomando como ejemplo el indicador delta

Desarrollo de indicadores bursátiles con control de volumen tomando como ejemplo el indicador delta

En el artículo se analiza el algoritmo de construcción de indcadores sobre volúmenes reales usando las funciones CopyTicks() y CopyTicksRange(). Asimismo, se muestran las peculiaridades de la construcción de estos indicadores y se describe su funcionamiento en tiempo real y en el simulador de estrategias.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte I): Concepto, organización de datos y primeros resultados

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte I): Concepto, organización de datos y primeros resultados

Tras analizar una ingente cantidad de estrategias comerciales, ejecutar multitud de encargos de preparación de programas para los terminales MT5 y MT4, y visitar distintos sitios web de MetaTrader, hemos llegado a la conclusión de que una mayoría aplastante de esta diversidad se construye en la práctica sobre un número fijo de funciones elementales, acciones y valores que se repiten de un programa a otro. El resultado de semejante trabajo es la biblioteca multiplataforma "DoEasy", que permite crear fácil y rápidamente programas para МetaТrader 5 y МetaТrader 4
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.
Distribuciones estadísticas en forma de histogramas sin búferes de indicador y matrices

Distribuciones estadísticas en forma de histogramas sin búferes de indicador y matrices

En el artículo se estudia la posibilidad de crear los histogramas de las distribuciones estadísticas de las características del mercado usando memoria gráfica, es decir, sin usar búferes de indicador y matrices. Se adjuntan ejemplos detallados de la construcción de este tipoo de histogramas y se muestra la llamada funcionalidad "oculta" de los objetos gráficos del lenguaje 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.
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.
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.
Neuroredes profundas (Parte V). Optimización bayesiana de los hiperparámetros de las DNN

Neuroredes profundas (Parte V). Optimización bayesiana de los hiperparámetros de las DNN

En el artículo se analizan las posibilidades de la optimización bayesiana de los hiperparámetros de las neuroredes profundas obtenidas con diferentes formas de entrenamiento. Se compara la calidad de la clasificación de las DNN con los hiperparámetros óptimos en diferentes variedades de entrenamiento. Se ha comprobado mediante forward tests la profundidad de la efectividad de los hiperparámetros óptimos de la DNN. Se han definido los posibles campos de mejora de la calidad de la clasificación.
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.
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.
¿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.
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.