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
Recetas MQL5 - Creando el búfer circular para calcular rápidamente los indicadores en la ventana móvil
Recetas MQL5 - Creando el búfer circular para calcular rápidamente los indicadores en la ventana móvil

Recetas MQL5 - Creando el búfer circular para calcular rápidamente los indicadores en la ventana móvil

El búfer circular es el modo más simple y al mismo tiempo más eficaz en la organización de datos para los cálculos en una ventana móvil. En este artículo se describe la estructura de este algoritmo, y se muestra cómo se puede hacer a través de él que el cálculo en la ventana móvil sea un proceso simple y eficaz.
Sistema comercial 'Turtle Soup' y su modificación 'Turtle Soup Plus One'
Sistema comercial 'Turtle Soup' y su modificación 'Turtle Soup Plus One'

Sistema comercial 'Turtle Soup' y su modificación 'Turtle Soup Plus One'

En este artículo han sido formalizadas y programadas las reglas de las estrategias comerciales llamadas «Turtle Soup» y «Turtle Soup Plus One» del libro titulado «Street Smarts: High Probability Short-Term Trading Strategies», escrito por Linda Raschke y Laurence Connors. Las estrategias descritas en este libro recibieron bastante amplia acogida, pero es importante comprender que sus autores las ideaban basándose en el comportamiento del mercado de hace 15-20 años.
Cómo crear rápidamente un Expert Advisor para el Campeonato de Trading Automatizado 2010
Cómo crear rápidamente un Expert Advisor para el Campeonato de Trading Automatizado 2010

Cómo crear rápidamente un Expert Advisor para el Campeonato de Trading Automatizado 2010

Con el fin de desarrollar un Expert Advisor para participar en el Automated Trading Championship 2010 (Campeonato de Trading Automatizado 2010), vamos a utilizar una plantilla de Expert Advisor preparada. Incluso los programadores principiantes en MQL5 serán capaces de realizar esta tarea, puesto que las clases básicas, funciones y plantillas ya están listas para sus estrategias. Es suficiente para escribir el mínimo de código para implementar su idea de trading.
preview
Perceptrón Multicapa y Algoritmo de Retropropagación (Parte II): Implementación en Python e integración en MQL5

Perceptrón Multicapa y Algoritmo de Retropropagación (Parte II): Implementación en Python e integración en MQL5

Se ha puesto a disposición un paquete de Python con el propósito de desarrollar la integración en MQL, lo que abre las puertas a numerosas posibilidades como la exploración de datos, la creación y el uso de modelos de aprendizaje automático. Esta integración nativa de MQL5 en Python abre las puertas a muchas posibilidades de uso que nos permiten construir desde una simple regresión lineal a un modelo de aprendizaje profundo. Entendamos cómo instalar y preparar el entorno de desarrollo y usar algunas de las bibliotecas de aprendizaje automático.
Visualización de los resultados de la optimización según el criterio seleccionado
Visualización de los resultados de la optimización según el criterio seleccionado

Visualización de los resultados de la optimización según el criterio seleccionado

En este artículo, vamos a continuar el desarrollo de la aplicación MQL para el trabajo con los resultados de la optimización empezado en los artículos anteriores. Esta vez, mostraremos cómo se puede formar la tabla de los mejores resultados después de optimizar los parámetros indicando otro criterio a través de la interfaz gráfica.
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

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.
Construcción de líneas fractales
Construcción de líneas fractales

Construcción de líneas fractales

Este artículo describe la construcción de líneas fractales de distintos tipos usando las líneas de tendencia y los fractales.
Uso de los repositorios en la nube para el intercambio de datos entre los terminales
Uso de los repositorios en la nube para el intercambio de datos entre los terminales

Uso de los repositorios en la nube para el intercambio de datos entre los terminales

Las tecnologías en la nube se difunden ampliamente. Tenemos a nuestra disposición tanto los repositorios de pago, como gratuitos. ¿Podemos usarlos en el trading? En este artículo se propone la tecnología para el intercambio de datos entre los terminales con el uso de los repositorios en la nube.
Sobre los Métodos de Análisis Técnico y Pronósticos de Mercado
Sobre los Métodos de Análisis Técnico y Pronósticos de Mercado

Sobre los Métodos de Análisis Técnico y Pronósticos de Mercado

El artículo muestra las capacidades y el potencial de un método matemático bien conocido juntado con el pensamiento visual y una perspectiva del mercado "fuera de caja". Por un lado, sirve para atraer la atención de un público más amplio ya que puede hacer que las mentes creativas reconsideren el paradigma del traqading como tal. Y por otro lado, puede dar lugar a desarrollos alternativos i implementaciones de código de programa con respecto a una amplia gama de herramientas para el análisis y predicción.
Secretos de la Terminal de Cliente de MetaTrader4 : Sistema de alerta
Secretos de la Terminal de Cliente de MetaTrader4 : Sistema de alerta

Secretos de la Terminal de Cliente de MetaTrader4 : Sistema de alerta

Cómo estar al tanto de lo que pasa en la terminal y en tu cuenta sin estar permanentemente mirando la pantalla. Eventos del sistema; eventos de cliente; archivos .wav y .exe; mensajes electrónicos; configuración del acceso a servidor SMTP; publicaciones; configuración del acceso a servidor FTP.
Limitaciones y verificaciones en Asesores Expertos
Limitaciones y verificaciones en Asesores Expertos

Limitaciones y verificaciones en Asesores Expertos

¿Está permitido hacer operaciones de trading con este símbolo los lunes? ¿Hay suficiente dinero para abrir una posición? ¿Cuál sería el tamaño de la pérdida si se activa el Stop Loss? ¿Cómo se limita el número de órdenes pendientes? ¿Se ejecutó la operación de trading en la barra actual, o en la anterior? Si un robot de trading no puede ejecutar este tipo de verificaciones, cualquier estrategia de trading puede convertirse en una fuente de pérdidas. Este artículo muestra ejemplos de verificaciones que son útiles en cualquier Asesor Experto.
Optimizando la optimización: algunas sencillas ideas
Optimizando la optimización: algunas sencillas ideas

Optimizando la optimización: algunas sencillas ideas

El proceso de optimización consume muchos recursos del ordenador o del crédito que tengamos en nuestra cuenta de MQL5.community. Este artículo apunta algunas ideas sencillas que pongo en práctica para simplificar o completar el fabuloso sistema optimizador que ofrece MT5, extraídas de mil lecturas en la documentación, en el foro y en artículos.
Experto comercial universal: Trabajando con trailing-stops personalizados (parte 6)
Experto comercial universal: Trabajando con trailing-stops personalizados (parte 6)

Experto comercial universal: Trabajando con trailing-stops personalizados (parte 6)

La sexta parte del artículo sobre el experto comercial universal describe el funcionamiento de los trailing-stops. Después de leerlo, usted aprenderá cómo usar normas unificadas para crear su propio módulo de trailing-stop y conectarlo al motor comercial de tal forma que el control de la posición realizado por este suceda automáticamente.
Recetas MQL5 - Señales comerciales de pivotes
Recetas MQL5 - Señales comerciales de pivotes

Recetas MQL5 - Señales comerciales de pivotes

En este artículo se demuestra el proceso del desarrollo e implementación de la clase de señales a base de los pivote, niveles de reversa. A base de esta clase, se construye la estrategia con el uso de la librería estándar. Se consideran las posibilidades del desarrollo de la estrategia de pivotes mediante la adición de los filtros.
preview
Optimización móvil continua (Parte 3): Método de adaptación del robot al optimizador automático

Optimización móvil continua (Parte 3): Método de adaptación del robot al optimizador automático

El tercer artículo actuará como puente entre los dos anteriores, pues en él se analizará el mecanismo de interacción con la DLL descrita en el primer artículo y los objetos para la descarga analizados en el segundo. Además, se mostrará el proceso de creación de un envoltorio para la clase que se importa desde DLL y se formará un archivo XML con la historia de transacciones, así como un método de interacción con los datos del envoltorio.
preview
Cómo avanzar en el aprendizaje automático

Cómo avanzar en el aprendizaje automático

Aquí tenemos una selección de materiales que resultarán útiles para que los tráders mejoren sus conocimientos sobre el trading algorítmico. La época de los algoritmos simples es cosa del pasado: ahora es difícil alcanzar el éxito sin utilizar el aprendizaje automático y las redes neuronales.
Trabajando con archivos. Un ejemplo de visualización de eventos importantes del mercado
Trabajando con archivos. Un ejemplo de visualización de eventos importantes del mercado

Trabajando con archivos. Un ejemplo de visualización de eventos importantes del mercado

Este artículo explica cómo se puede trabajar de forma más productiva con MQL4 en los mercados FOREX.
Estructura de datos en MetaTrader 4 Build 600 o superior
Estructura de datos en MetaTrader 4 Build 600 o superior

Estructura de datos en MetaTrader 4 Build 600 o superior

Las características del MetaTarder 4 build 600, de la nueva estructura y ubicación de los archivos del cliente del terminal. Ahora, las aplicaciones MQL4 se colocan en directorios separados según el tipo de programa (asesores expertos, indicadores o scripts). En la mayoría de los casos, los datos de la terminal ahora se almacenan en una carpeta especial de datos separada de la ubicación de instalación del terminal. En este artículo, describimos al detalles cómo se transfieren los datos, así como las razones para introducir el nuevo sistema de almacenamiento.
preview
Redes neuronales: así de sencillo (Parte 8): Mecanismos de atención

Redes neuronales: así de sencillo (Parte 8): Mecanismos de atención

En artículos anteriores, ya hemos puesto a prueba diferentes variantes para organizar las redes neuronales, incluyendo las redes convolucionales, adoptadas de algoritmos de procesamiento de imágenes. En el presente artículo, les proponemos analizar los mecanismos de atención, cuya aparición impulsó el desarrollo de los modelos de lenguaje.
preview
Programamos una red neuronal profunda desde cero usando el lenguaje MQL

Programamos una red neuronal profunda desde cero usando el lenguaje MQL

El objetivo de este artículo es enseñar al lector cómo crear una red neuronal profunda desde cero utilizando el lenguaje MQL4/5.
Crear un indicador con opciones de control gráficas
Crear un indicador con opciones de control gráficas

Crear un indicador con opciones de control gráficas

Aquellos que estén familiarizados con las emociones del mercado conocen el indicador MACD (su nombre completo es Moving Average Convergence/Divergence, Media Móvil Convergencia/Divergencia) - la poderosa herramienta para analizar el movimiento del precio usada por los operadores desde los primeros momentos en que aparecieron los métodos de análisis por computadora. En este artículo vamos a considerar las posibles modificaciones de MACD y a implementarlas en un indicador con la posibilidad de cambiar gráficamente entre las modificaciones.
Cálculos paralelos en MetaTrader 5
Cálculos paralelos en MetaTrader 5

Cálculos paralelos en MetaTrader 5

El tiempo ha tenido un gran valor a lo largo de la historia de la humanidad, y nos esforzamos en no desperdiciarlo innecesariamente. En este artículo, se le va a mostrar cómo acelerar el funcionamiento de su Expert Advisor si su ordenador dispone de un procesador de núcleo múltiple. Además, la implementación del método propuesto no requiere el conocimiento de ningún otro lenguaje aparte de MQL5.
Diagramas horizontales en los gráficos de MеtaTrader 5
Diagramas horizontales en los gráficos de MеtaTrader 5

Diagramas horizontales en los gráficos de MеtaTrader 5

El desarrollador a veces se enfrenta a las tareas relacionadas con el dibujado de los diagramas horizontales en el gráfico del terminal, aunque eso no ocurre con frecuencia. ¿De qué tipo de tareas se trata? Se trata de los indicadores de distribución de los volúmenes para un determinado período. Además, son las tares de distribución del precio, diferentes versiones de la profundidad del mercado (Market Depth), etc. En este artículo se consideran las cuestiones de la creación y gestión de los diagramas en los gráficos, como de los arrays de las primitivas gráficas.
El enfoque orientado a objeto para construir paneles multiperíodo y multidivisa
El enfoque orientado a objeto para construir paneles multiperíodo y multidivisa

El enfoque orientado a objeto para construir paneles multiperíodo y multidivisa

Este artículo describe cómo la programación orientada a objeto puede usarse para crear paneles multiperíodo y multidivisa para Meta Trader 5. El objetivo principal es construir un panel universal que pueda ser usado para mostrar en pantalla diferentes tipos de datos como precios, cambios en los precios, valores de indicador o condiciones sell/buy personalizadas sin necesidad de modificar el código del propio panel.
Lógica difusa en las estrategias comerciales
Lógica difusa en las estrategias comerciales

Lógica difusa en las estrategias comerciales

En este artículo, se analiza el ejemplo del uso de la lógica difusa (fuzzy logic) para la construcción de un sistema comercial simple con la aplicación de la librería Fuzzy. Han sido propuestas las opciones de la mejora del sistema mediante la combinación de la lógica difusa, algoritmos genéticos y redes neuronales.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXXIII): Solicitudes comerciales pendientes - Cierre de posiciones según condiciones
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXXIII): Solicitudes comerciales pendientes - Cierre de posiciones según condiciones

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

Continuamos trabajando con la funcionalidad de la biblioteca para implementar el comercio con la ayuda de solicitudes pendientes. Ya hemos implementado el envío de solicitudes comerciales según condiciones para la apertura de posiciones y la colocación de órdenes pendientes. Hoy, implementaremos el cierre de posiciones completo, parcial o por opuesta, según condiciones.
Trabajando con las series temporales en la biblioteca DoEasy (Parte 38): Colección de series temporales - Actualización en tiempo real y acceso a los datos desde el programa
Trabajando con las series temporales en la biblioteca DoEasy (Parte 38): Colección de series temporales - Actualización en tiempo real y acceso a los datos desde el programa

Trabajando con las series temporales en la biblioteca DoEasy (Parte 38): Colección de series temporales - Actualización en tiempo real y acceso a los datos desde el programa

En el artículo, analizaremos la actualización en tiempo real de los datos de las series temporales, así como el envío de mensajes sobre el evento "Nueva barra" al gráfico del programa de control de todas las series temporales de todos los símbolos para poder procesar estos eventos en nuestros propgramas. Para determinar la necesidad de actualizar las series temporales para el símbolo y los periodos del gráfico no actuales, usaremos la clase "Nuevo tick".
Implementación de un Expert Advisor tipo "arrastrar y soltar" semiautomático e interactivo basado en el riesgo predefinido y la relación R/R (riesgo/beneficio)
Implementación de un Expert Advisor tipo "arrastrar y soltar" semiautomático e interactivo basado en el riesgo predefinido y la relación R/R (riesgo/beneficio)

Implementación de un Expert Advisor tipo "arrastrar y soltar" semiautomático e interactivo basado en el riesgo predefinido y la relación R/R (riesgo/beneficio)

Algunos operadores realizan todas sus operaciones de forma automática, y algunos hacen una mezcla de operaciones automáticas y manuales basadas ​​en las salidas de varios indicadores. Y como miembro de este último grupo, necesitaba una herramienta interactiva para poder evaluar de forma dinámica los niveles de riesgo y de beneficio, directamente desde el gráfico. En este artículo vamos a presentar una forma de implementación de un Expert Advisor con un riesgo de pérdida de patrimonio y relación R/R predefinidos. Se pueden modificar los parámetros de riesgo, R/R y el tamaño del lote durante la ejecución en el panel del EA.
Rayos Elder (Bulls Power y Bears Power)
Rayos Elder (Bulls Power y Bears Power)

Rayos Elder (Bulls Power y Bears Power)

Sistema comercial Rayos Elder basado en los indicadores Bulls Power, Bears Power y Moving Average (EMA — promediación exponencial). Este sistema fue descrito por Alexander Elder en su libro "Vivir del Trading" (Trading for a living).
FANN2MQL Neural Network Tutorial
FANN2MQL Neural Network Tutorial

FANN2MQL Neural Network Tutorial

Este artículo trata de mostrar cómo utilizar las redes neuronales, a través de FANN2MQL, utilizando un ejemplo fácil: enseñando un patrón simple para la neuralnetwork y pruebar para ver si puede reconocer patrones que nunca ha visto.
ZUP - ZigZag universal con Patrones de Pesavento. Segunda parte
ZUP - ZigZag universal con Patrones de Pesavento. Segunda parte

ZUP - ZigZag universal con Patrones de Pesavento. Segunda parte

ZUP - ZigZag universal con Patrones de Pesavento. Segunda parte - Descripción de las herramientas incorporadas
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXXI): Solicitudes comerciales pendientes - Apertura de posiciones según condiciones
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXXI): Solicitudes comerciales pendientes - Apertura de posiciones según condiciones

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

A partir de este artículo, vamos a crear una funcionalidad que permita comerciar con la ayuda de solicitudes comerciales según una cierta condición. Por ejemplo, al llegar o superar una determinada hora, o bien al superar el parámetro de beneficio establecido, o bien al registrarse un evento de cierre de posición por stop loss.
La estrategia comercial 'Momentum Pinball'
La estrategia comercial 'Momentum Pinball'

La estrategia comercial 'Momentum Pinball'

En este artículo se continúa con el tema de la escritura de código para los sistemas comerciales descritos en el libro de Linda Raschke y Laurence Connors "Secretos bursátiles. Estrategias comerciales de alto rendiemiento a corto plazo". En esta ocasión, analizaremos el sistema 'Momentum Pinball', describiendo la creación de dos indicadores, un robot comercial y un bloque comercial para el sistema.
MQL5 Wizard: Cómo enseñar a un Asesor Experto a abrir las órdenes pendientes de cualquier precio
MQL5 Wizard: Cómo enseñar a un Asesor Experto a abrir las órdenes pendientes de cualquier precio

MQL5 Wizard: Cómo enseñar a un Asesor Experto a abrir las órdenes pendientes de cualquier precio

El artículo describe un método para modificar el código de un módulo de señal de trading para la implementación de la funcionalidad que le permite ajustar órdenes pendientes con cualquier diferencia del precio actual: puede ser el precio de cierre o de apertura de la barra anterior o el valor del promedio móvil. Hay muchas opciones. Lo importante es que puede establecer cualquier precio de apertura para una orden pendiente. Este artículo será muy útil para los traders que operan con órdenes pendientes.
Libro de Recetas MQL5: Desarrollar un Asesor Experto Multidivisa con un Número Ilimitado de Parámetros
Libro de Recetas MQL5: Desarrollar un Asesor Experto Multidivisa con un Número Ilimitado de Parámetros

Libro de Recetas MQL5: Desarrollar un Asesor Experto Multidivisa con un Número Ilimitado de Parámetros

En este artículo crearemos un patrón que usa un solo conjunto de parámetros para la optimización del sistema de trading, a la vez que permite un número ilimitado de parámetros. La lista de símbolo se creará en un archivo de texto estándar (*.txt). Los parámetros de entrada para cada símbolo también se almacenarán en archivos. De esta forma podremos evitar la restricción del terminal del número de parámetros centrada de un Asesor Experto.
Experto comercial universal: trabajando con órdenes pendientes y cobertura (parte 5)
Experto comercial universal: trabajando con órdenes pendientes y cobertura (parte 5)

Experto comercial universal: trabajando con órdenes pendientes y cobertura (parte 5)

Este artículo continúa la presentación a los lectores del motor comercial CStrategy. A petición de multitud de usuarios, se han añadido funciones de trabajo con órdenes pendientes al motor comercial. Asimismo, las últimas versiones de MetaTrader 5 han comenzado a dar soporte a cuentas con cobertura. Ahora CStrategy también da soporte a las mismas. En el artículo se da una descripción detallada de un algoritmo para trabajar con órdenes pendientes, así como de los principios de funcionamiento de CStrategy con las cuentas con cobertura.
Interfaces gráficas VIII: Control "Calendario" (Capítulo 1)
Interfaces gráficas VIII: Control "Calendario" (Capítulo 1)

Interfaces gráficas VIII: Control "Calendario" (Capítulo 1)

En la octava parte de la serie sobre la creación de las interfaces gráficas en el entorno de los terminales de trading MetaTrader nosotros vamos a considerar los controles compuestos (complejos): calendarios, lista jerárquica (en forma de árbol), explorador de archivos. A cada uno de estos controles le dedicaremos un artículo personal, puesto que el contenido del material es bastante extenso. Pues bien, en el primer artículo de esta parte se describe el control “Calendario” y su versión ampliada, “Calendario desplegable”.
Aplicación de los contenedores para componer la interfaz gráfica: clase CBox
Aplicación de los contenedores para componer la interfaz gráfica: clase CBox

Aplicación de los contenedores para componer la interfaz gráfica: clase CBox

En este artículo se describe el método alternativo de creación de la interfaz gráfica a base de los esquemas de composición y contenedores usando el gestor de composición, a saber, la clase CBox. La clase Cbox representa un medio auxiliar de control que actúa como contenedor de los elementos principales de control de la interfaz gráfica. Facilita el diseño de paneles gráficos, y a veces reduce el tiempo de la escritura del código.
Guía práctica de MQL5: Controles de la subventana del indicador: Botones
Guía práctica de MQL5: Controles de la subventana del indicador: Botones

Guía práctica de MQL5: Controles de la subventana del indicador: Botones

En este artículo, vamos a ver un ejemplo del desarrollo de una interfaz de usuario con controles mediante botones. Para transmitir la idea de interactividad al usuario, los botones cambiarán de color cuando se pasa el cursor por encima de ellos. Cuando el cursor está encima de un botón, el color de este último será ligeramente oscurecido, haciéndose notablemente más oscuro cuando se pulsa el botón. Además, vamos a añadir tooltips (información sobre herramientas) a cada botón, creando así una interfaz intuitiva.
Recetas MQL5 – Prueba de estrés de una estrategia comercial con ayuda de símbolos personalizados
Recetas MQL5 – Prueba de estrés de una estrategia comercial con ayuda de símbolos personalizados

Recetas MQL5 – Prueba de estrés de una estrategia comercial con ayuda de símbolos personalizados

En el artículo se analiza un enfoque sobre la prueba de estrés de estrategias comerciales con ayuda de símbolos personalizados Para este objetivo se crea una clase de símbolo de usuario. Con su ayuda, se obtendrán los datos de ticks desde fuentes de terceros y se cambiarán las propiedades del símbolo. Según los resultados del trabajo realizado, se ofrecerán variantes de cambio de las condiciones comerciales con respecto a las cuales se simula la estrategia comercial.