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
preview
Motor de decisión Multi-IA para MQL5 (Parte 3): Darle a las IA el contexto correcto — régimen de mercado y noticias

Motor de decisión Multi-IA para MQL5 (Parte 3): Darle a las IA el contexto correcto — régimen de mercado y noticias

Tercera parte de la serie: le damos al motor multi-IA el contexto donde un modelo de lenguaje sí aporta. Leemos el régimen de mercado en el código (tendencia o rango con ADX, volatilidad con el ATR contra su promedio, dirección con la pendiente de una EMA) y definimos ventanas de noticias de alto impacto configurables, sin depender del calendario del broker. Ambos entran en un prompt más rico que le pide a cada IA razonar el contexto —no el próximo tick— y devolver una bandera de riesgo. Un gating de dos capas, por horario y por consenso de las IA, mantiene al motor fuera del mercado cuando el contexto pesa más que la señal.
preview
Simulación de mercado: Position View (XIX)

Simulación de mercado: Position View (XIX)

Una de las cuestiones que más me ha incomodado es que la clase C_ElementsTrade contenga código que permite acceder a las posiciones. No lo interpretes como un fallo, porque en realidad no lo es. Sin embargo, hace que algunas de las tareas que deberemos realizar más adelante sean algo más propensas a errores. Todo el trabajo destinado a implementar el indicador de posición se ha desarrollado pensando en utilizarlo dentro del sistema de repetición/simulador. Sin embargo, cuando se ejecute en ese entorno, no tendremos acceso alguno a una posición real. Por tanto, cualquier llamada a la biblioteca de MQL5 destinada a consultar datos de una posición no tendrá ningún efecto en el código.
preview
Introducción a MQL5 (Parte 25): Creación de un asesor experto (EA) que opere a partir de objetos del gráfico (II)

Introducción a MQL5 (Parte 25): Creación de un asesor experto (EA) que opere a partir de objetos del gráfico (II)

Este artículo explica cómo crear un Asesor Experto (EA) que interactúe con los objetos del gráfico, en particular con las líneas de tendencia, para identificar y operar con oportunidades de ruptura y reversión. Aprenderás cómo el Asesor Experto (EA) confirma las señales válidas, gestiona la frecuencia de las operaciones y mantiene la coherencia con las estrategias seleccionadas por el usuario.
preview
Redes neuronales en el trading: Desentrañando las componentes estructuradas (SCNN)

Redes neuronales en el trading: Desentrañando las componentes estructuradas (SCNN)

Le invitamos a conocer el innovador framework SCNN, que lleva el análisis de series temporales a un nuevo nivel gracias a una separación clara de los datos en componentes de largo plazo, estacionales, de corto plazo y residuales. Este enfoque mejora considerablemente la precisión de la predicción y permite que el modelo se adapte a la compleja y cambiante dinámica del mercado.
preview
Predicción en el trading y modelos de Grey

Predicción en el trading y modelos de Grey

En este artículo se analiza la aplicación de los modelos Grey para la predicción de series temporales financieras. Analizaremos los principios de funcionamiento de los modelos Grey y las particularidades de su aplicación a las series financieras. Discutiremos las ventajas y las limitaciones del uso de estos modelos en el trading.
preview
Implementación de módulos prácticos de otros lenguajes en MQL5 (Parte 03): Módulo schedule de Python, una versión mejorada del evento OnTimer

Implementación de módulos prácticos de otros lenguajes en MQL5 (Parte 03): Módulo schedule de Python, una versión mejorada del evento OnTimer

El módulo schedule de Python ofrece una forma sencilla de programar tareas repetitivas. Aunque MQL5 carece de una funcionalidad equivalente integrada, en este artículo implementaremos una biblioteca similar para facilitar la configuración de eventos temporizados en MetaTrader 5.
preview
Del básico al intermedio: Navegando por la SandBox

Del básico al intermedio: Navegando por la SandBox

En este artículo veremos dos formas de observar e incluso tener cierta interacción con el contenido de una SandBox, tomando MetaTrader 5 como base. Entender el contenido que se muestra en este artículo será fundamental para entender lo que se verá en los próximos artículos.
preview
Del básico al intermedio: Sobrecarga de operadores (V)

Del básico al intermedio: Sobrecarga de operadores (V)

En este artículo vemos cómo manipular un código para implementar una solución completamente diferente de lo que muchos creen posible en MQL5. Una observación importante: para comprender adecuadamente este contenido, es necesario haber asimilado correctamente los conceptos tratados en los artículos anteriores.
preview
Características del Wizard MQL5 que debe conocer (Parte 63): Uso de los patrones de DeMarker y los canales de envolvente

Características del Wizard MQL5 que debe conocer (Parte 63): Uso de los patrones de DeMarker y los canales de envolvente

El oscilador DeMarker y el indicador de envolvente son herramientas de impulso y de soporte/resistencia que pueden combinarse al desarrollar un asesor experto. Por lo tanto, examinamos patrón por patrón qué podría ser útil y qué podría evitarse. Como siempre, estamos utilizando un Asesor Experto creado mediante un asistente, junto con las funciones de uso de patrones integradas en la clase Expert Signal.
preview
Optimización por Comunidad de Científicos: Teoría

Optimización por Comunidad de Científicos: Teoría

Secretos para la optimización efectiva de estrategias de trading en enfoques metaheurísticos. El algoritmo de Optimización de Comunidad de Científicos (CoSO) es un nuevo algoritmo basado en la población, inspirado en los mecanismos de la comunidad científica. A diferencia de las metáforas naturales tradicionales, el CoSO modela aspectos únicos de la actividad científica humana: la publicación de resultados en revistas, la competencia por subvenciones y la formación de equipos de investigación.
preview
Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 8): Análisis de múltiples estrategias (2)

Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 8): Análisis de múltiples estrategias (2)

Únase a nosotros en nuestra próxima charla, donde combinaremos nuestras dos primeras estrategias de trading en una estrategia de trading conjunta. Demostraremos los diferentes esquemas posibles para combinar múltiples estrategias y también cómo ejercer control sobre el espacio de parámetros, para garantizar que la optimización efectiva siga siendo posible incluso a medida que aumenta el tamaño de nuestros parámetros.
preview
Simulación de mercado: Position View (VI)

Simulación de mercado: Position View (VI)

En este artículo, haremos diversas mejoras para que el indicador de posición refleje lo que realmente ocurre en el servidor de trading, en términos de posiciones y del estado actual de estas. Debo recordar que estas aplicaciones, que se mostrarán aquí, no pretenden en ningún caso sustituir ningún elemento disponible en MetaTrader 5. Tampoco deben usarse sin los debidos cuidados y criterios, ya que su objetivo es presentar un código didáctico, es decir, con fines de aprendizaje sobre cómo funciona el sistema. El motivo por el que digo que el código es didáctico es que el uso de mensajes, en algunos casos, no es la mejor forma de implementar ciertas funcionalidades.
preview
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 28): Herramienta de ruptura del rango de apertura

Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 28): Herramienta de ruptura del rango de apertura

Al comienzo de cada sesión de negociación, la tendencia direccional del mercado a menudo solo se hace evidente después de que el precio supera el rango de apertura. En este artículo, exploramos cómo crear un Asesor Experto MQL5 que detecte y analice automáticamente las rupturas del rango de apertura, proporcionándole señales oportunas basadas en datos para realizar entradas intradía con confianza.
preview
Red neuronal en la práctica: Lectura de PNG del MNIST

Red neuronal en la práctica: Lectura de PNG del MNIST

Aquí veremos cómo implementar un algoritmo sencillo para leer imágenes en formato PNG. Poder leer el contenido de estas imágenes será importante para avanzar en el desarrollo de una topología de red perceptrón. Esto se debe a que comenzaremos a utilizar la base de datos MNIST para entrenar la red que implementaremos.
preview
Programación gráfica para principiantes (Parte II): Dominando la Interfaz, POO y Persistencia

Programación gráfica para principiantes (Parte II): Dominando la Interfaz, POO y Persistencia

El artículo transforma un minijuego en un sistema UI profesional orientado a EAs y paneles. Introduce una clase de botón con detección AABB y estados hover/pressed, resuelve el rebote de clic mediante transición 0→1 y ajusta colores con manipulación ARGB. Los datos persisten con FileReadStruct/FileWriteStruct en .bin. El resultado es una base compilable y reutilizable para interfaces robustas.
preview
Automatización de estrategias de trading en MQL5 (Parte 21): Mejora del trading basado en redes neuronales mediante tasas de aprendizaje adaptativas

Automatización de estrategias de trading en MQL5 (Parte 21): Mejora del trading basado en redes neuronales mediante tasas de aprendizaje adaptativas

En este artículo, mejoramos una estrategia de trading basada en redes neuronales en MQL5 mediante una tasa de aprendizaje adaptativa para aumentar la precisión. Diseñamos e implementamos este mecanismo y, a continuación, comprobamos su rendimiento. El artículo concluye con algunas ideas sobre la optimización del trading algorítmico.
preview
Creación de un sistema de trading (Parte 2): La ciencia del dimensionamiento de posiciones

Creación de un sistema de trading (Parte 2): La ciencia del dimensionamiento de posiciones

Incluso con un sistema de expectativas matemáticas positivas, el tamaño de la posición determina si uno prospera o fracasa. Es el pilar de la gestión de riesgos: traducir las ventajas estadísticas en resultados reales, al tiempo que se protege el capital.
preview
Red neuronal cuántica en MQL5 (Parte III): Procesador cuántico virtual con qubits

Red neuronal cuántica en MQL5 (Parte III): Procesador cuántico virtual con qubits

Creamos un sistema de trading con un auténtico simulador cuántico en lugar de análogos matemáticos. El sistema utiliza tres qubits virtuales, puertas cuánticas y el principio de superposición para analizar los mercados. Se ha implementado como un asesor experto para MetaTrader 5 en MQL5. El principal logro es la transición de la simulación a principios cuánticos reales de procesamiento de la información financiera.
preview
Simulación de mercado: La unión hace la fuerza (II)

Simulación de mercado: La unión hace la fuerza (II)

Hasta ahora, la aplicación desarrollada a lo largo de esta serie de artículos se centraba exclusivamente en simular la parte gráfica. Sin embargo, para disponer de un sistema más completo, en el que podamos probar un Asesor Experto dentro del servicio de repetición/simulador, también debemos simular el servidor de trading. Observarás que esta simulación incluirá únicamente los elementos imprescindibles. No obstante, tú, estimado lector, podrás completar las partes que falten. Como esos componentes adicionales no influyen en lo que pretendo mostrar, ya contamos con más que suficiente para desarrollar lo que hemos planificado.
preview
Dominando los registros (Parte 8): Registros de errores con traducción automática

Dominando los registros (Parte 8): Registros de errores con traducción automática

En esta octava entrega de la serie «Dominando los registros», exploramos la implementación de mensajes de error multilingües en Logify, una potente biblioteca de registro de eventos para MQL5. Aprenderás a estructurar los errores con contexto, traducir mensajes a varios idiomas y formatear registros dinámicamente según su nivel de gravedad. Todo ello con un diseño limpio, extensible y listo para la producción.
preview
Del básico al intermedio: Acceso aleatorio (II)

Del básico al intermedio: Acceso aleatorio (II)

En este artículo, veremos cómo dos enfoques ligeramente diferentes pueden impactar de manera considerable en toda una metodología de implementación, tanto desde el punto de vista del rendimiento como desde el punto de vista de cómo deben pensarse los accesos al disco, con el fin de evitar problemas de compatibilidad entre distintas aplicaciones.
preview
Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 7): Trading con múltiples períodos simultáneamente

Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 7): Trading con múltiples períodos simultáneamente

En esta serie de artículos, hemos analizado diversas formas de determinar cuál es el mejor período para utilizar nuestros indicadores técnicos. Hoy, demostraremos al lector cómo puede aplicar la lógica opuesta; es decir, en lugar de elegir un único período óptimo, le mostraremos cómo emplear todos los períodos disponibles de forma eficaz. Este enfoque reduce la cantidad de datos descartados y ofrece casos de uso alternativos para los algoritmos de aprendizaje automático, más allá de la predicción habitual de precios.
preview
Redes neuronales en el trading: descomposición en lugar de escalado (Final)

Redes neuronales en el trading: descomposición en lugar de escalado (Final)

Le proponemos familiarizarse con el algoritmo para descomponer una serie temporal en capas semánticas y construir a partir de ellas un modelo eficiente. Mostramos paso a paso la arquitectura, la implementación práctica en MQL5/OpenCL y las pruebas reales sobre datos históricos de mercado.
preview
Algoritmo del átomo artificial — Artificial Atom Algorithm (A3)

Algoritmo del átomo artificial — Artificial Atom Algorithm (A3)

Implementación del algoritmo A3 en MQL5: un método metaheurístico de optimización inspirado en los procesos químicos. Con solo dos parámetros configurables, la compacidad y una población reducida proporcionan una alta velocidad de funcionamiento con una calidad suficiente de las soluciones.
preview
Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 12): Construcción de clasificadores lineales mediante factorización matricial

Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 12): Construcción de clasificadores lineales mediante factorización matricial

Este artículo explora el importante papel de la factorización matricial en el trading algorítmico, específicamente en aplicaciones MQL5. Desde modelos de regresión hasta clasificadores de múltiples objetivos, analizamos ejemplos prácticos que demuestran la facilidad con la que estas técnicas pueden integrarse utilizando las funciones integradas de MQL5. Ya sea que esté prediciendo la dirección de los precios o modelando el comportamiento de los indicadores, esta guía sienta una base sólida para construir sistemas de trading inteligentes utilizando métodos matriciales.
preview
Introducción a MQL5 (Parte 24): Creación de un asesor experto (EA) que opere a partir de objetos del gráfico

Introducción a MQL5 (Parte 24): Creación de un asesor experto (EA) que opere a partir de objetos del gráfico

En este artículo se explica cómo crear un asesor experto que detecte las zonas de soporte y resistencia trazadas en el gráfico y ejecute operaciones automáticamente en función de ellas.
preview
Análisis de espectro singular (SSA) en MQL5

Análisis de espectro singular (SSA) en MQL5

Este artículo pretende servir de guía para aquellas personas que no estén familiarizadas con el concepto de análisis de espectro singular (SSA) y que deseen adquirir los conocimientos necesarios para poder aplicar las herramientas integradas disponibles en MQL5.
preview
Introducción a MQL5 (Parte 22): Creación de un Asesor Experto para el patrón armónico 5-0

Introducción a MQL5 (Parte 22): Creación de un Asesor Experto para el patrón armónico 5-0

Este artículo explica cómo detectar y operar con el patrón armónico 5-0 en MQL5, validarlo utilizando niveles de Fibonacci y mostrarlo en el gráfico.
preview
Simulación de mercado: Position View (XI)

Simulación de mercado: Position View (XI)

En este artículo, te mostraré, querido y estimado lector, cómo puedes modificar el indicador de posición para que sea capaz de hacer muchas más cosas de las que podía hacer originalmente. Veremos cómo incorporar la capacidad de mover los precios y crear líneas de precio directamente en el gráfico. Algo que muchos considerarían extremadamente complicado y difícil de resolver. Sin embargo, verás que lo haremos con mucha facilidad y con un mínimo de esfuerzo. Solo hará falta detenerse y pensar un poco.
preview
Potencie su operativa con Smart Money Concepts (SMC): OB, BOS y FVG

Potencie su operativa con Smart Money Concepts (SMC): OB, BOS y FVG

Potencie su operativa con Smart Money Concepts (SMC) combinando los bloques de órdenes (OB), la ruptura de estructura (BOS) y los gaps de valor razonable (FVG) en un potente EA. Seleccione la ejecución automática de estrategias o céntrese en cualquier concepto individual de SMC para operar de forma flexible y precisa.
preview
Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 9): Cruce de dos medias móviles

Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 9): Cruce de dos medias móviles

Este artículo describe el diseño de una estrategia de cruce de medias móviles dobles que utiliza señales de un marco temporal superior (D1) para orientar las entradas en un marco temporal inferior (M15), calculándose los niveles de stop-loss a partir de un marco temporal de riesgo intermedio (H4). Introduce constantes del sistema, enumeraciones personalizadas y la lógica para los modos de seguimiento de tendencias y de retorno a la media, al tiempo que hace hincapié en la modularidad y en la optimización futura mediante un algoritmo genético. Este enfoque permite establecer condiciones flexibles de entrada y salida, con el objetivo de reducir el retraso de la señal y mejorar la sincronización de las operaciones, alineando las entradas en los marcos temporales más cortos con las tendencias de los marcos temporales más largos.
preview
Redes neuronales en el trading: descomposición en lugar de escalado — Construcción de módulos

Redes neuronales en el trading: descomposición en lugar de escalado — Construcción de módulos

En este artículo continuamos la familiarización práctica con SSCNN: una solución arquitectónica de nueva generación capaz de trabajar con series temporales fragmentadas. En lugar de un escalado indiscriminado: modularidad inteligente, atención al detalle y normalización selectiva. Paso a paso, creamos bloques computacionales en el entorno MQL5 y sentamos las bases para un análisis predictivo fiable.
preview
Simulación de mercado: La unión hace la fuerza (I)

Simulación de mercado: La unión hace la fuerza (I)

Estamos llegando a la recta final. El desarrollo del sistema de repetición/simulador está casi terminado. Es cierto que aún tendremos que completar algunas cosas, pero, en comparación con todo lo que ya hemos hecho, implementar lo que falta será sencillo. Sin embargo, todo lo que se mostrará en este artículo deberá asimilarse y comprenderse adecuadamente. Quiero que tú, estimado lector y entusiasta...
preview
Negociamos con opciones sin opciones (Parte 2): Aplicación en el trading real

Negociamos con opciones sin opciones (Parte 2): Aplicación en el trading real

En este artículo se analizan estrategias de opciones sencillas y su implementación en MQL5. Vamos a escribir un asesor experto básico que iremos modernizando y haciendo más complejo.
preview
Redes neuronales en el trading: descomposición en lugar de escalado — Construcción de módulos

Redes neuronales en el trading: descomposición en lugar de escalado — Construcción de módulos

En este artículo continuamos la familiarización práctica con SSCNN: una solución arquitectónica de nueva generación capaz de trabajar con series temporales fragmentadas. En lugar de un escalado indiscriminado: modularidad inteligente, atención al detalle y normalización selectiva. Paso a paso, creamos bloques computacionales en el entorno MQL5 y sentamos las bases para un análisis predictivo fiable.
preview
Un motor de riesgo adaptativo en MQL5: Ajustar el tamaño según racha, volatilidad y drawdown

Un motor de riesgo adaptativo en MQL5: Ajustar el tamaño según racha, volatilidad y drawdown

Presentamos una clase reutilizable de dimensionamiento adaptativo, CRiskEngine, que calcula el lote por riesgo y stop y lo reduce según tres factores medibles: racha de pérdidas, volatilidad actual frente a su promedio y caída de capital. Se incluye un asesor de prueba con modos conmutables para comparar seis esquemas (lote fijo, riesgo fijo, cada factor y combinados) sobre 842 operaciones de EURUSD, con métricas y curvas. El lector obtiene un motor listo para integrar y una medición clara del efecto de cada factor.
preview
Desarrollo de un indicador personalizado de sentimiento del mercado

Desarrollo de un indicador personalizado de sentimiento del mercado

En este artículo desarrollaremos un indicador personalizado de sentimiento del mercado para clasificar las condiciones como alcistas, bajistas, de apetito por el riesgo (risk-on), de aversión al riesgo (risk-off) o neutras. Utilizando varios marcos temporales, el indicador puede ofrecer a los operadores una perspectiva más clara del sesgo general del mercado y de las confirmaciones a corto plazo.
preview
Características del Wizard MQL5 que debe conocer (Parte 71): Uso de los patrones del MACD y del OBV

Características del Wizard MQL5 que debe conocer (Parte 71): Uso de los patrones del MACD y del OBV

El oscilador de convergencia-divergencia de la media móvil (MACD) y el oscilador de volumen en equilibrio (OBV) son otro par de indicadores que podrían utilizarse conjuntamente en un asesor experto de MQL5. Esta combinación, tal y como es habitual en esta serie de artículos, resulta complementaria, ya que el MACD confirma las tendencias, mientras que el OBV analiza el volumen. Como de costumbre, utilizamos el asistente de MQL5 para desarrollar y probar todo el potencial que estos dos puedan tener.
preview
Desarrollo de un sistema de ruptura basado en la volatilidad

Desarrollo de un sistema de ruptura basado en la volatilidad

El sistema de ruptura basado en la volatilidad identifica los rangos del mercado y, a continuación, realiza operaciones cuando el precio rompe al alza o a la baja dichos niveles, aplicando un filtro basado en medidas de volatilidad como el ATR. Este enfoque permite aprovechar los movimientos direccionales marcados.
preview
Simulación de mercado: Position View (IV)

Simulación de mercado: Position View (IV)

Aquí comenzaremos a unir diversos componentes o aplicaciones que antes estaban completamente aisladas entre sí. Aunque Chart Trade, el Indicador de Mouse y el Asesor Experto ya mantenían cierta relación, todavía no había una forma de observar directamente en el gráfico las posiciones abiertas en el servidor de trading, muchas veces usando un sistema de órdenes cruzadas. A partir de este momento, esto empieza a ser posible, abriendo diversas puertas a nuevas ideas e implementaciones futuras. Aunque apenas estamos comenzando a poner estos componentes en funcionamiento, ya tendremos un rumbo que seguir.