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
Características del Wizard MQL5 que debe conocer (Parte 76): Uso de los patrones del Awesome Oscillator y los canales Envelopes con aprendizaje supervisado

Características del Wizard MQL5 que debe conocer (Parte 76): Uso de los patrones del Awesome Oscillator y los canales Envelopes con aprendizaje supervisado

Damos continuidad a nuestro último artículo, en el que presentamos el binomio de indicadores formado por el Awesome Oscillator y el canal de envolvente Envelopes, analizando cómo se podría mejorar esta combinación mediante el aprendizaje supervisado. El Awesome Oscillator y las envolventes constituyen una combinación complementaria para detectar tendencias e identificar niveles de soporte y resistencia. Nuestro enfoque de aprendizaje supervisado consiste en una red neuronal convolucional (CNN) que utiliza el núcleo de producto escalar con atención entre tiempos (Cross-Time-Attention) para ajustar el tamaño de sus núcleos y canales. Como es habitual, esto se lleva a cabo en un archivo de clase de señal personalizado que funciona con el asistente de MQL5 para crear un asesor experto.
preview
Del básico al intermedio: Colas, listas y árboles (V)

Del básico al intermedio: Colas, listas y árboles (V)

En este artículo, implementamos los primeros componentes de una estructura arbórea. Como sé que esta estructura puede resultar extremadamente compleja cuando se empieza a aprender, la implementaremos con calma y paso a paso. Así, todos podrán entender cómo funciona un árbol y cuál es el mejor momento para utilizarlo.
preview
Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 8): Análisis de múltiples estrategias (3) — Política de votación ponderada

Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 8): Análisis de múltiples estrategias (3) — Política de votación ponderada

Este artículo analiza por qué determinar el número óptimo de estrategias en un conjunto puede ser una tarea compleja y cómo el optimizador genético de MetaTrader 5 facilita su resolución. MQL5 Cloud también se utiliza como recurso clave para acelerar las pruebas retrospectivas y la optimización. En síntesis, nuestro análisis aquí sienta las bases para desarrollar modelos estadísticos que permitan evaluar y mejorar las estrategias de negociación a partir de nuestros resultados iniciales del conjunto de estrategias.
preview
Redes neuronales en el trading: Modelo de difusión adaptativa sobre grafos (Final)

Redes neuronales en el trading: Modelo de difusión adaptativa sobre grafos (Final)

En este artículo concluimos el trabajo de construcción del framework SAGDFN mediante MQL5, resumiendo el desarrollo y mostrando los resultados de sus pruebas prácticas. Integraremos los módulos implementados anteriormente en un único sistema, mostraremos los puntos fuertes de este enfoque, señalaremos sus vulnerabilidades y debatiremos posibles vías de mejora.
preview
Del básico al intermedio: Sobrecarga de operadores (I)

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

En este artículo comenzaremos a estudiar cómo se implementa la denominada sobrecarga de operadores. Primero veremos qué motiva esta implementación. También comprobaremos que las cosas no siempre son tan complicadas como parecen.
preview
Redes neuronales en el trading: Modelo de consultas temporales (Final)

Redes neuronales en el trading: Modelo de consultas temporales (Final)

Les presentamos la fase final de la implementación y las pruebas del framework TQNet, en la que la teoría se une a la práctica real de trading. Recorreremos todo el proceso, desde el entrenamiento histórico hasta la prueba de estrés con datos recientes del mercado, evaluando la solidez y la precisión del modelo. Los resultados finales no son solo cifras frías, sino también una demostración clara del valor práctico del enfoque propuesto.
preview
Procesos gaussianos en el aprendizaje automático (Parte 2): Implementación y prueba de un modelo de clasificación en MQL5

Procesos gaussianos en el aprendizaje automático (Parte 2): Implementación y prueba de un modelo de clasificación en MQL5

En esta parte analizaremos la implementación de las interfaces clave de la biblioteca de procesos gaussianos en MQL5: IKernel, ILikelihood e IInference. Además, mostraremos su funcionamiento con datos sintéticos y escribiremos indicadores de clasificación y regresión que demuestren su funcionamiento en modo online, con reentrenamiento del modelo en cada nueva barra.
preview
De novato a experto: EA de informes — Configuración del flujo de trabajo

De novato a experto: EA de informes — Configuración del flujo de trabajo

Los brókeres suelen proporcionar informes de cuentas de trading a intervalos regulares, según un calendario predefinido. Estas empresas, a través de sus tecnologías API, tienen acceso a la actividad de su cuenta y al historial de operaciones, lo que les permite generar informes de rendimiento en su nombre. Del mismo modo, la terminal MetaTrader 5 almacena registros detallados de su actividad de trading, que pueden aprovecharse mediante MQL5 para crear informes totalmente personalizados y definir métodos personalizados de envío.
preview
Redes neuronales en el trading: Desentrañando las componentes estructuradas (Codificador)

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

Les proponemos familiarizarse con la continuación de la implementación del framework SCNN, que combina flexibilidad e interpretabilidad y permite identificar con precisión las componentes estructurales de una serie temporal. El artículo expone en detalle los mecanismos de normalización adaptativa y atención, lo que proporciona robustez al modelo ante las condiciones cambiantes del mercado.
preview
Del básico al intermedio: Colas, listas y árboles (VI)

Del básico al intermedio: Colas, listas y árboles (VI)

En este artículo retomaremos la implementación de un árbol. Ahora que conocemos los conceptos básicos sobre el funcionamiento de los constructores y destructores, finalmente podremos corregir el código presentado en el último artículo. Prepárate para una verdadera aventura en la programación con MQL5.
preview
Asesor experto de Forex basado en la red neuronal N-BEATS

Asesor experto de Forex basado en la red neuronal N-BEATS

Hoy veremos la implementación de la arquitectura N-BEATS para el trading de Forex en MetaTrader 5, con predicción cuantílica y gestión adaptativa del riesgo. La arquitectura se ha adaptado mediante normalización bilineal y funciones de pérdida especializadas para datos financieros. Las pruebas realizadas con datos de 2025 han puesto de manifiesto la incapacidad de generar beneficios, lo que confirma la brecha existente entre los logros teóricos y la eficacia práctica del trading.
preview
Reimaginando las estrategias clásicas en MQL5 (Parte 14): Análisis de múltiples estrategias

Reimaginando las estrategias clásicas en MQL5 (Parte 14): Análisis de múltiples estrategias

En este artículo, continuamos nuestro análisis sobre cómo crear un conjunto de estrategias de trading y utilizar el optimizador genético de MT5 para ajustar los parámetros de las estrategias. Hoy hemos analizado los datos en Python, demostrando que nuestro modelo podía predecir mejor qué estrategia obtendría mejores resultados, logrando una mayor precisión que al pronosticar directamente la rentabilidad del mercado. Sin embargo, cuando probamos nuestra aplicación con sus modelos estadísticos, nuestros niveles de rendimiento se desplomaron. Posteriormente descubrimos que, lamentablemente, el optimizador genético favorecía estrategias muy correlacionadas, lo que nos llevó a revisar nuestro método para mantener fijas las ponderaciones de los votos y centrar la optimización en los ajustes de los indicadores.
preview
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 34): Conversión de datos brutos del mercado en modelos predictivos mediante un pipeline avanzado de ingesta

Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 34): Conversión de datos brutos del mercado en modelos predictivos mediante un pipeline avanzado de ingesta

¿Alguna vez te has perdido un repunte repentino del mercado o te ha pillado desprevenido cuando ocurrió uno? La mejor manera de anticiparse a los eventos en tiempo real es aprender de los patrones históricos. Con el objetivo de entrenar un modelo de aprendizaje automático, este artículo comienza mostrándole cómo crear un script en MetaTrader 5 que procese datos históricos y los envíe a Python para su almacenamiento, sentando así las bases de su sistema de detección de picos. Sigue leyendo para ver cada paso en acción.
preview
Herramientas de trading de MQL5 (Parte 6): Panel de control holográfico dinámico con animaciones de pulso y controles interactivos

Herramientas de trading de MQL5 (Parte 6): Panel de control holográfico dinámico con animaciones de pulso y controles interactivos

En este artículo, creamos un panel de control holográfico dinámico en MQL5 para monitorizar símbolos y marcos temporales con RSI, alertas de volatilidad y opciones de ordenación. Añadimos animaciones de pulso, botones interactivos y efectos holográficos para que la herramienta sea visualmente atractiva y responda con agilidad.
preview
Características del Wizard MQL5 que debe conocer (Parte 73): Uso de patrones de Ichimoku y del ADX-Wilder

Características del Wizard MQL5 que debe conocer (Parte 73): Uso de patrones de Ichimoku y del ADX-Wilder

El indicador Ichimoku Kinko Hyo y el oscilador ADX-Wilder son una combinación que podría utilizarse de forma complementaria en un asesor experto de MQL5. El Ichimoku tiene múltiples facetas; sin embargo, en este artículo nos centraremos principalmente en su capacidad para definir los niveles de soporte y resistencia. Por otra parte, también utilizamos el ADX para definir nuestra tendencia. Como de costumbre, utilizamos el asistente de MQL5 para desarrollar y probar todo el potencial que estos dos puedan tener.
preview
Características del Wizard MQL5 que debe conocer (Parte 75): Uso del Awesome Oscillator y Envelopes

Características del Wizard MQL5 que debe conocer (Parte 75): Uso del Awesome Oscillator y Envelopes

El «Awesome Oscillator» de Bill Williams y el canal de envolventes son una combinación que podría utilizarse de forma complementaria dentro de un asesor experto de MQL5. Utilizamos el Awesome Oscillator por su capacidad para detectar tendencias, mientras que el canal de envolventes se incorpora para definir nuestros niveles de soporte y resistencia. Al explorar esta combinación de indicadores, utilizamos el asistente MQL5 para construir y probar cualquier potencial que estos dos puedan tener.
preview
Redes neuronales en el trading: Framework de predicción cruzada de dominios de series temporales (Final)

Redes neuronales en el trading: Framework de predicción cruzada de dominios de series temporales (Final)

El artículo trata sobre la construcción práctica del modelo TimeFound para la predicción de series temporales. Asimismo, se analizan las etapas clave de la implementación de los principales enfoques del framework con MQL5.
preview
Tablas en el paradigma MVC en MQL5: integramos el componente Model en el componente View

Tablas en el paradigma MVC en MQL5: integramos el componente Model en el componente View

En este artículo crearemos la primera versión del control TableControl (TableView). Se tratará de una tabla estática sencilla, creada a partir de los datos de entrada definidos por dos arrays: un array de datos y un array de encabezados de columnas.s
preview
Superando las limitaciones del aprendizaje automático (Parte 2): Falta de reproducibilidad

Superando las limitaciones del aprendizaje automático (Parte 2): Falta de reproducibilidad

El artículo analiza por qué los resultados de las operaciones pueden diferir significativamente entre distintos brókeres, incluso utilizando la misma estrategia y el mismo símbolo financiero, debido a la descentralización de los precios y a las discrepancias en los datos. Este artículo ayuda a los desarrolladores de MQL5 a comprender por qué sus productos pueden recibir opiniones mixtas en el Market de MQL5, e insta a los desarrolladores a adaptar sus estrategias a los brókers específicos para garantizar resultados transparentes y reproducibles. Esto podría convertirse en una práctica recomendada importante y específica del sector, que beneficiaría a nuestra comunidad si se adoptara de forma generalizada.
preview
Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 10): Factorización de matrices

Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 10): Factorización de matrices

La factorización es un proceso matemático que se utiliza para obtener información sobre las características de los datos. Cuando aplicamos la factorización a grandes conjuntos de datos de mercado —organizados en filas y columnas—, podemos descubrir patrones y características del mercado. La factorización es una herramienta muy potente, y en este artículo te mostraremos cómo puedes utilizarla en la plataforma MetaTrader 5, mediante la API de MQL5, para obtener una visión más profunda de tus datos de mercado.
preview
Redes neuronales en el trading: Entrenamiento de metaparámetros basado en la heterogeneidad (Final)

Redes neuronales en el trading: Entrenamiento de metaparámetros basado en la heterogeneidad (Final)

En este artículo se describe la implementación práctica del framework HimNet, basado en MQL5, listo para integrarse en el trading automatizado. Asimismo, mostramos cómo los metaparámetros adaptados a la heterogeneidad convierten el modelo en una herramienta universal capaz de hacer frente a una volatilidad cambiante.
preview
Entrenamiento de un U-Transformer no lineal sobre los residuos de un modelo autorregresivo lineal

Entrenamiento de un U-Transformer no lineal sobre los residuos de un modelo autorregresivo lineal

El artículo presenta un innovador sistema híbrido para la predicción de tipos de cambio que combina un modelo autorregresivo lineal con la arquitectura U-Transformer para el análisis de los residuos. El sistema alterna automáticamente entre las fuentes de señales en función de su calidad e incorpora una lógica de negociación completa con estrategias de averaging (promediación de posiciones) y pyramiding (piramidación de posiciones). La ventaja clave de este enfoque radica en que la red neuronal se entrena a partir de los residuos del modelo lineal, lo que simplifica la tarea y reduce el riesgo de sobreajuste. La implementación se ha realizado íntegramente en MQL5 y está lista para su uso en transacciones reales, con adaptación automática a las condiciones cambiantes del mercado.
preview
Redes neuronales en el trading: Entrenamiento de metaparámetros basado en la heterogeneidad (Componentes principales)

Redes neuronales en el trading: Entrenamiento de metaparámetros basado en la heterogeneidad (Componentes principales)

En este artículo analizamos con detalle los algoritmos para implementar los componentes clave del framework HimNet. Demostramos cómo, con un número mínimo de componentes aprendibles, se consigue una alta coherencia y controlabilidad de todo el sistema. La implementación presentada destaca por su compacidad y transparencia, lo que facilita su adaptación a problemas reales del mercado.
preview
Redes neuronales en el trading: Modelo de difusión adaptativa sobre grafos (SAGDFN)

Redes neuronales en el trading: Modelo de difusión adaptativa sobre grafos (SAGDFN)

En este artículo presentamos en detalle la arquitectura de SAGDFN, un framework moderno capaz de transformar el enfoque del procesamiento de datos espaciotemporales. Conserva la información clave incluso en grafos complejos y, al mismo tiempo, reduce los costos computacionales.
preview
Herramientas de trading de MQL5 (Parte 7): Panel informativo para el seguimiento de posiciones en múltiples símbolos y de la cuenta

Herramientas de trading de MQL5 (Parte 7): Panel informativo para el seguimiento de posiciones en múltiples símbolos y de la cuenta

En este artículo, desarrollamos un panel informativo en MQL5 para monitorizar posiciones en múltiples símbolos y métricas de cuenta como saldo, equidad y margen libre. Implementamos una tabla ordenable con actualizaciones en tiempo real, exportación a CSV y un efecto de encabezado brillante para mejorar la usabilidad y el atractivo visual.
preview
Redes neuronales en el trading: Modelo de difusión adaptativa sobre grafos (módulo de atención)

Redes neuronales en el trading: Modelo de difusión adaptativa sobre grafos (módulo de atención)

En este artículo analizaremos con detalle la implementación práctica de los componentes clave del framework SAGDFN. Vamos a mostrar cómo se organizan la atención dispersa y la selección de vecinos relevantes para la predicción de series temporales. Los enfoques presentados muestran un equilibrio entre la precisión de los pronósticos y la eficiencia de los cálculos.
preview
Del básico al intermedio: Indicadores técnicos (I)

Del básico al intermedio: Indicadores técnicos (I)

En este artículo veremos los conceptos básicos sobre cómo utilizar los indicadores técnicos incluidos y mantenidos por MetaTrader 5. Conocer y comprender este tipo de indicadores puede hacer que la implementación de una solución sea una tarea mucho más sencilla, rápida y eficiente, ya que no necesitas preocuparte por los cálculos que deben realizarse. La propia plataforma se encarga de realizarlos por nosotros.
preview
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 35): Entrenamiento y despliegue de modelos predictivos

Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 35): Entrenamiento y despliegue de modelos predictivos

Los datos históricos están lejos de ser «basura»: son la base de cualquier análisis de mercado sólido. En este artículo, te guiaremos paso a paso desde la recopilación de esos datos históricos hasta su uso para entrenar un modelo predictivo y, finalmente, la implementación de dicho modelo para realizar previsiones de precios en tiempo real. ¡Sigue leyendo para descubrir cómo hacerlo!
preview
Redes neuronales en el trading: una visión unificada del espacio y el tiempo (Extralonger)

Redes neuronales en el trading: una visión unificada del espacio y el tiempo (Extralonger)

El framework Extralonger muestra un enfoque para integrar factores espaciales y temporales en un único modelo, lo que permite considerar al mismo tiempo las regularidades locales y los ciclos a largo plazo. Esta arquitectura hace que la predicción de series temporales sea más resistente al ruido del mercado y permite analizar los datos en diferentes horizontes temporales. En el artículo se analiza en detalle cómo se llevan a la práctica estas ideas mediante OpenCL y MQL5.
preview
Trading algorítmico de arbitraje basado en la teoría de grafos

Trading algorítmico de arbitraje basado en la teoría de grafos

En este artículo, el arbitraje triangular se presenta como un problema de búsqueda de ciclos en un grafo orientado, en el que los vértices son divisas y las aristas, pares de divisas con pesos que representan los tipos de cambio. Ciclo rentable: producto de los pesos >1. Los algoritmos de Floyd-Warshall y DFS que hemos desarrollado encuentran rutas óptimas para el cambio de divisas que permiten volver al vértice de origen con beneficio.
preview
Red neuronal en la práctica: El caso de la puerta XOR

Red neuronal en la práctica: El caso de la puerta XOR

En este artículo intentaré mostrarte, mi querido lector, que no todo es como parece. Muchas veces tendemos a pensar que las cosas son de una determinada manera cuando, en realidad, podemos acabar creyendo algo que no necesariamente es cierto. Las redes neuronales son, con diferencia, uno de los temas más interesantes en términos generales. Tanto desde el punto de vista matemático como electrónico o incluso del software. A diferencia de lo que muchos creen o afirman, las redes neuronales no son, ni mucho menos, el problema ni la solución definitiva. Son solo una rama de investigación en la que debemos seguir estudiando e informándonos sobre lo que ocurre entre bastidores.
preview
Del básico al intermedio: Sobrecarga de operadores (VI)

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

Aquí implementaremos la eliminación mediante sobrecarga de operadores. Sin duda, este será un artículo que muchos necesitarán estudiar durante bastante tiempo para poder asimilar todo lo que se mostrará aquí. Quiero recordarte que lo que veremos será solo una pequeña e insignificante parte de todo aquello que llamamos programación.
preview
Algoritmo de optimización del dingo — Dingo Optimization Algorithm (DOA)

Algoritmo de optimización del dingo — Dingo Optimization Algorithm (DOA)

En este artículo se presenta un nuevo método metaheurístico basado en las estrategias de caza de los dingos australianos: el ataque en grupo, la persecución y la búsqueda de carroña. Veamos cómo se comporta, desde el punto de vista algorítmico, el algoritmo de optimización del dingo (DOA).
preview
Características del Wizard MQL5 que debe conocer (Parte 78): Estrategias con Gator y el oscilador AD para la resiliencia del mercado

Características del Wizard MQL5 que debe conocer (Parte 78): Estrategias con Gator y el oscilador AD para la resiliencia del mercado

El artículo presenta la segunda parte de un enfoque estructurado para operar con el oscilador Gator y el indicador de Acumulación/Distribución. Al introducir cinco nuevos patrones, el autor muestra cómo filtrar movimientos falsos, detectar reversiones tempranas y alinear señales en diferentes marcos temporales. Con ejemplos de código claros y pruebas de rendimiento, el material conecta la teoría con la práctica para los desarrolladores de MQL5.
preview
Redes neuronales en el trading: una visión unificada del espacio y el tiempo (Global-Local Attention)

Redes neuronales en el trading: una visión unificada del espacio y el tiempo (Global-Local Attention)

Continuamos trabajando en la implementación de los enfoques propuestos por los autores del framework Extralonger. En esta ocasión, nos centraremos en la creación del módulo Global-Local Spatial Attention con MQL5, analizando tanto su estructura como su integración práctica en el proceso computacional general.
preview
Redes neuronales en el trading: una visión unificada del espacio y el tiempo (Final)

Redes neuronales en el trading: una visión unificada del espacio y el tiempo (Final)

El framework Extralonger demuestra una capacidad única para integrar factores espaciales y temporales en un solo modelo, proporcionando una alta precisión en los pronósticos. Su arquitectura permite adaptarse a distintos horizontes de planificación e instrumentos financieros, manteniendo la transparencia y la capacidad de control del sistema.
preview
Red neuronal en la práctica: Descenso de gradiente

Red neuronal en la práctica: Descenso de gradiente

En este artículo intentaré presentar, de la forma más sencilla y didáctica posible, una de las cuestiones más controvertidas cuando se habla de redes neuronales: cómo buscar el mejor punto posible o el menor costo de una función. Mostraré la diferencia entre una regresión lineal y un descenso de gradiente. Ambos casos son bastante sencillos y sirven para demostrar que no siempre el camino que parece obvio es realmente el mejor.
preview
Del nivel básico al intermedio: Indicadores técnicos (II)

Del nivel básico al intermedio: Indicadores técnicos (II)

En este artículo mostramos cómo crear un indicador en MQL5 que dibuja múltiples medias móviles en un mismo gráfico, reduciendo el código duplicado. Se utilizan iMA, buffers de indicador, CopyBuffer, PlotIndexSetInteger/String y una estructura constante que agrupa períodos, métodos y colores. El dimensionamiento de indicatorbuffers e indicatorplots se deriva de Averange.Size(). El resultado facilita el mantenimiento y permite añadir o eliminar medias modificando únicamente una lista.
preview
Red neuronal en la práctica: Descenso de gradiente estocástico

Red neuronal en la práctica: Descenso de gradiente estocástico

El artículo explica, de forma práctica, cómo calcular y aplicar los gradientes de peso y sesgo en la neurona lineal en MQL5, además de presentar la variante estocástica del descenso de gradiente. Analizamos los criterios de parada, la limitación del número de iteraciones y los efectos del muestreo parcial. En el terminal de MetaTrader 5 se muestran los resultados y el trazado de un gráfico sencillo. Se indica al lector que modifique el conjunto de entrenamiento y analice el comportamiento.
preview
Robot de trading multiflujo con aprendizaje automático: del concepto a la implementación

Robot de trading multiflujo con aprendizaje automático: del concepto a la implementación

El artículo presenta el desarrollo paso a paso de un robot de trading multiflujo con aprendizaje automático en Python y MetaTrader 5. Se analiza la arquitectura del sistema, desde la recopilación de datos y la creación de indicadores técnicos hasta el entrenamiento de modelos XGBoost con gestión de riesgos de cartera. Asimismo, se describe detalladamente la implementación del aumento de datos, la clusterización de características mediante Gaussian Mixture Models y la coordinación de flujos para el trading paralelo de varios pares de divisas.