Artículos sobre programación en el lenguaje MQL5

icon

Aprenda el lenguaje de programación de estrategias comerciales MQL5 leyendo numerosos artículos la mayor parte de los cuales han sido escritos por Ustedes - miembros de MQL5.community. Con el fin de buscar rápidamente la respuesta sobre una u otra cuestión de programación, todos los artículos están divididos en categorías: "Integración", "Probador", "Estrategias comerciales", etc.

Siga las nuevas publicaciones y participe en sus discusiones en el foro de MQL5.community!

Nuevo artículo
últimas | mejores
preview
De novato a experto: Noticias animadas utilizando MQL5 (V) Sistema de recordatorio de eventos

De novato a experto: Noticias animadas utilizando MQL5 (V) Sistema de recordatorio de eventos

En esta discusión, exploraremos nuevas mejoras a medida que integramos una lógica mejorada de alertas de eventos para los acontecimientos del calendario económico que muestra el EA «News Headline». Esta mejora es fundamental, ya que garantiza que los usuarios reciban notificaciones oportunas poco antes de que tengan lugar eventos importantes. Acompáñanos en este análisis para descubrir más.
preview
Del básico al intermedio: Eventos en Objetos (III)

Del básico al intermedio: Eventos en Objetos (III)

En este artículo, prepararemos el terreno para algo que se verá en el próximo artículo. ambién veremos cómo permitir que un objeto de tipo OBJ_LABEL pueda editarse y moverse de forma completamente interactiva. Es decir, podremos cambiar tanto el texto como la posición de un objeto de tipo OBJ_LABEL, sin abrir la ventana de propiedades del objeto.
preview
Integración de MQL5 con paquetes de procesamiento de datos (Parte 5): Aprendizaje adaptativo y flexibilidad

Integración de MQL5 con paquetes de procesamiento de datos (Parte 5): Aprendizaje adaptativo y flexibilidad

Esta parte se centra en la creación de un modelo de negociación flexible y adaptativo, entrenado con datos históricos del XAUUSD, preparándolo para su exportación a ONNX y su posible integración en sistemas de negociación en tiempo real.
preview
Del básico al intermedio: SandBox y MetaTrader

Del básico al intermedio: SandBox y MetaTrader

¿Sabes qué es una SandBox? ¿Sabes cómo trabajar con ella? Si la respuesta a cualquiera de estas preguntas es no, lee este artículo para entender el principio básico que hay detrás de una SandBox. Y entiende por qué MetaTrader 5 utiliza una SandBox para garantizar la integridad de algunos de sus datos. El contenido expuesto aquí tiene única y exclusivamente un objetivo didáctico. En ningún caso debe considerarse una aplicación cuya finalidad no sea el aprendizaje y el estudio de los conceptos mostrados.
preview
Aprendizaje automático y Data Science (Parte 46): Pronóstico de los mercados bursátiles con N-BEATS en Python

Aprendizaje automático y Data Science (Parte 46): Pronóstico de los mercados bursátiles con N-BEATS en Python

N-BEATS es un modelo revolucionario de aprendizaje profundo diseñado para la previsión de series temporales. Fue lanzado para superar los modelos clásicos de pronóstico de series temporales como ARIMA, PROPHET, VAR, etc. En este artículo vamos a analizar este modelo y a utilizarlo para predecir el mercado bursátil.
preview
Características del Wizard MQL5 que debe conocer (Parte 69): Uso de patrones del SAR y del RVI

Características del Wizard MQL5 que debe conocer (Parte 69): Uso de patrones del SAR y del RVI

El Parabolic SAR (SAR) y el Relative Vigor Index (RVI) son otro par de indicadores que podrían utilizarse conjuntamente en un asesor experto de MQL5. Este par de indicadores, al igual que los que hemos analizado anteriormente, también es complementario, ya que el SAR define la tendencia mientras que el RVI evalúa el impulso. Como de costumbre, utilizamos el asistente MQL5 para construir y probar cualquier potencial que pueda tener este emparejamiento de indicadores.
preview
Redes neuronales en el trading: Previsión probabilística de series temporales (Codificador)

Redes neuronales en el trading: Previsión probabilística de series temporales (Codificador)

Le invitamos a explorar un nuevo enfoque que combina métodos clásicos y redes neuronales modernas para el análisis de series temporales. El artículo ofrece una descripción detallada de la arquitectura y los principios de funcionamiento del modelo K²VAE.
preview
Programación gráfica para principiantes (Parte I): Aprendiendo CCanvas con Crazy Scalper

Programación gráfica para principiantes (Parte I): Aprendiendo CCanvas con Crazy Scalper

Este artículo introduce la librería CCanvas en MQL5 mediante el desarrollo paso a paso de un minijuego que se ejecuta sobre el gráfico de MetaTrader 5. Se explican el sistema de coordenadas, el renderizado vectorial de formas, el canal alfa para transparencias, el bucle con temporizador, la máquina de estados, la física básica y la detección de colisiones AABB, además de la captura de teclado. Al finalizar, podrá crear superficies graficas interactivas y sentar las bases de paneles y minijuegos propios.
preview
Análisis de la dinámica horaria de los símbolos de trading y de sus spreads en MetaTrader 5

Análisis de la dinámica horaria de los símbolos de trading y de sus spreads en MetaTrader 5

El indicador de índice de estacionalidad ProSpread con media móvil, como herramienta de análisis técnico que identifica patrones estacionales en el movimiento del precio, analiza el comportamiento del precio en determinadas horas de negociación, puede usarse tanto con un único instrumento como con el spread entre dos activos, y visualiza la probabilidad estadística de movimientos direccionales.
preview
Del básico al intermedio: Eventos en objetos (I)

Del básico al intermedio: Eventos en objetos (I)

En este artículo, veré tres de los seis eventos que MetaTrader 5 puede disparar cuando algo sucede con un objeto presente en el gráfico. Estos eventos son muy útiles cuando se trata de interacción con el usuario. Esto se debe a que, sin entender estos eventos, tendrás mucho más trabajo para mantener cierta configuración en el gráfico, al intentar controlar objetos con finalidades específicas.
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
Características del Wizard MQL5 que debe conocer (Parte 72): Uso de los patrones del MACD y del OBV con aprendizaje supervisado

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

Damos continuidad a nuestro último artículo, en el que presentamos el par de indicadores formado por el MACD y el OBV, analizando cómo se podría mejorar esta combinación mediante el aprendizaje automático. MACD y OBV forman un emparejamiento complementario en cuanto a tendencia y volumen. Nuestro enfoque de aprendizaje automático utiliza una red neuronal convolucional que emplea un kernel para dimensionar sus núcleos y canales, al tiempo que ajusta las previsiones de este par de indicadores. Como siempre, esto se realiza en un archivo de clase de señal personalizado que funciona con el asistente MQL5 para ensamblar un Asesor Experto.
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
Del básico al intermedio: Eventos en Objetos (II)

Del básico al intermedio: Eventos en Objetos (II)

En este artículo, veremos cómo funcionan los tres últimos tipos de eventos que puede disparar un objeto. Entender esto será muy divertido, ya que, al final, haremos algo que, para muchos, puede parecer una especie de locura, pero que es perfectamente posible y tiene un resultado bastante sorprendente.
preview
Algoritmo de optimización basado en los sueños — Dream Optimization Algorithm (DOA)

Algoritmo de optimización basado en los sueños — Dream Optimization Algorithm (DOA)

Un algoritmo de optimización poblacional inspirado en un fenómeno controvertido y poco estudiado: el fenómeno de los sueños humanos. Grupos de agentes con distintas «memorias», modulación cosenoidal del movimiento y una distribución de fases inusual de 99/1: descubra cómo estas características influyen en la eficacia de la optimización de sus estrategias de trading.
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
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
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
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
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
Automatización de estrategias de trading en MQL5 (Parte 25): Sistema de líneas de tendencia con ajuste por mínimos cuadrados y generación dinámica de señales

Automatización de estrategias de trading en MQL5 (Parte 25): Sistema de líneas de tendencia con ajuste por mínimos cuadrados y generación dinámica de señales

En este artículo, desarrollamos un programa de trading con líneas de tendencia que utiliza el ajuste por mínimos cuadrados para detectar líneas de tendencia de soporte y resistencia, generando señales dinámicas de compra y venta en función de los toques de precio y abriendo posiciones en función de las señales generadas.
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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.