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
Clases de tabla y encabezado basadas en el modelo de tabla de MQL5: Aplicación del concepto MVC

Clases de tabla y encabezado basadas en el modelo de tabla de MQL5: Aplicación del concepto MVC

Esta es la segunda parte del artículo dedicado a la implementación del modelo de tabla en MQL5 utilizando el paradigma constructivo MVC (Model-View-Controller). Este artículo trata sobre el desarrollo de clases de tabla y su encabezado a partir de un modelo de tabla previamente creado. Las clases desarrolladas serán la base para la posterior implementación de los componentes Vista (View) y Controlador (Controller), que se tratarán en los siguientes artículos.
preview
Desarrollo de un sistema de repetición (Parte 70): Ajuste del tiempo (III)

Desarrollo de un sistema de repetición (Parte 70): Ajuste del tiempo (III)

En este artículo, mostraré cómo utilizar la función CustomBookAdd de manera correcta y funcional. Aunque pueda parecer sencillo, tiene muchas implicaciones. Por ejemplo, permite indicar al indicador de mouse si el símbolo personalizado está en subasta, en negociación o si el mercado está cerrado. El contenido expuesto aquí tiene como único objetivo ser didáctico. En ningún caso debe considerarse una aplicación cuya finalidad sea distinta a la de aprender y estudiar los conceptos mostrados.
preview
Características del Wizard MQL5 que debe conocer (Parte 14): Previsión multiobjetivo de series temporales con STF

Características del Wizard MQL5 que debe conocer (Parte 14): Previsión multiobjetivo de series temporales con STF

La fusión espacio-temporal, que utiliza métricas espaciales y temporales en la modelización de datos, es útil sobre todo en teledetección y otras muchas actividades visuales para comprender mejor nuestro entorno. Gracias a un artículo publicado, adoptamos un enfoque novedoso en su uso examinando su potencial para los comerciantes.
preview
Los componentes de Vista y Controlador para tablas en el paradigma MVC de MQL5: elementos redimensionables

Los componentes de Vista y Controlador para tablas en el paradigma MVC de MQL5: elementos redimensionables

En este artículo, añadiremos la funcionalidad de cambiar el tamaño de los controles arrastrando los bordes y las esquinas del elemento con el ratón.
preview
Redes neuronales en el trading: Detección de anomalías en el dominio de la frecuencia (CATCH)

Redes neuronales en el trading: Detección de anomalías en el dominio de la frecuencia (CATCH)

El framework CATCH combina la transformada de Fourier y el parcheo de frecuencias para detectar con precisión anomalías del mercado inaccesibles a los métodos tradicionales. En el presente artículo, analizaremos cómo este enfoque revela patrones ocultos en los datos financieros.
preview
Creación de interfaces gráficas dinámicas MQL5 mediante el escalado de imágenes basado en recursos con interpolación bicúbica en gráficos de trading

Creación de interfaces gráficas dinámicas MQL5 mediante el escalado de imágenes basado en recursos con interpolación bicúbica en gráficos de trading

En este artículo exploramos las interfaces gráficas dinámicas MQL5, utilizando interpolación bicúbica para un escalado de imágenes de alta calidad en los gráficos de trading. Detallamos opciones de posicionamiento flexibles que permiten el centrado dinámico o el anclaje en esquina con desplazamientos personalizados.
preview
Redes neuronales: así de sencillo (Parte 97): Entrenamiento de un modelo con el MSFformer

Redes neuronales: así de sencillo (Parte 97): Entrenamiento de un modelo con el MSFformer

Al estudiar las distintas arquitecturas de construcción de modelos, prestamos poca atención al proceso de entrenamiento de los mismos. En este artículo intentaremos rellenar ese vacío.
preview
Kit de herramientas de negociación MQL5 (Parte 6): Ampliación de la libreria EX5 de gestión del historial con las funciones de última orden pendiente completada

Kit de herramientas de negociación MQL5 (Parte 6): Ampliación de la libreria EX5 de gestión del historial con las funciones de última orden pendiente completada

Aprenda a crear un módulo EX5 de funciones exportables que consultan y guardan datos de forma fluida para el pedido pendiente completado más recientemente. En esta guía paso a paso, mejoraremos la librería History Management EX5 desarrollando funciones específicas y compartimentadas para recuperar las propiedades esenciales de la última orden pendiente completada. Estas propiedades incluyen el tipo de orden, el tiempo de configuración, el tiempo de ejecución, el tipo de ejecución y otros detalles críticos necesarios para la gestión y el análisis eficaces del historial de operaciones de las órdenes pendientes.
preview
De novato a experto: Noticias animadas utilizando MQL5 (I)

De novato a experto: Noticias animadas utilizando MQL5 (I)

La accesibilidad a las noticias es un factor crítico a la hora de operar en el terminal MetaTrader 5. Aunque existen numerosas API de noticias, muchos operadores tienen dificultades para acceder a ellas e integrarlas de forma eficaz en su entorno de negociación. En este debate, nuestro objetivo es desarrollar una solución optimizada que lleve las noticias directamente al gráfico, donde más se necesitan. Lograremos esto mediante la creación de un asesor experto en titulares de noticias que monitorea y muestra actualizaciones de noticias en tiempo real desde fuentes API.
preview
Desarrollo de un sistema de repetición (Parte 77): Un nuevo Chart Trade (IV)

Desarrollo de un sistema de repetición (Parte 77): Un nuevo Chart Trade (IV)

En este artículo, explicaré algunos detalles y precauciones que debes tener en cuenta al crear un protocolo de comunicación. Son cosas bastante básicas y simples. No voy a profundizar demasiado en este artículo. Pero es necesario que comprendas su contenido para entender lo que sucederá en el receptor.
preview
Algoritmo de optimización de sociedad anárquica (Anarchic Society Optimization, ASO)

Algoritmo de optimización de sociedad anárquica (Anarchic Society Optimization, ASO)

En este artículo, nos familiarizaremos con el algoritmo de optimización de sociedad anárquica (Anarchic Society Optimization, ASO) y discutiremos cómo un algoritmo basado en el comportamiento irracional y aventurero de los participantes en una sociedad anárquica (un sistema anómalo de interacción social libre de poder centralizado y varios tipos de jerarquías) es capaz de explorar el espacio de soluciones y evitar las trampas del óptimo local. El artículo presenta una estructura ASO unificada aplicable tanto a problemas continuos como discretos.
preview
Uso de reglas de asociación en el análisis de datos de Forex

Uso de reglas de asociación en el análisis de datos de Forex

¿Cómo aplicar las reglas predictivas del análisis minorista de supermercados al mercado Forex real? ¿Cómo se relacionan las compras de galletas, leche y pan con las transacciones bursátiles? El artículo analiza un enfoque innovador del trading algorítmico basado en el uso de reglas de asociación.
preview
Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 5): Reglas de negociación autoadaptativas

Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 5): Reglas de negociación autoadaptativas

Las mejores prácticas, que definen cómo utilizar un indicador de forma segura, no siempre son fáciles de seguir. Las condiciones de mercado tranquilas pueden producir, sorprendentemente, lecturas en el indicador que no califican como señal de negociación, lo que conlleva la pérdida de oportunidades para los operadores algorítmicos. Este artículo propondrá una posible solución a este problema, al analizar cómo construir aplicaciones de negociación capaces de adaptar sus reglas de negociación a los datos de mercado disponibles.
preview
Creación de un sistema personalizado de detección de regímenes de mercado en MQL5 (Parte 2): Asesor experto

Creación de un sistema personalizado de detección de regímenes de mercado en MQL5 (Parte 2): Asesor experto

Este artículo detalla la construcción de un Asesor Experto Adaptativo (MarketRegimeEA) utilizando el detector de régimen de la Parte 1. Cambia automáticamente las estrategias comerciales y los parámetros de riesgo para mercados con tendencia, rango o volátiles. Se incluyen optimización práctica, manejo de transiciones y un indicador de múltiples marcos de tiempo.
preview
Formulación de un Asesor Experto Multipar Dinámico (Parte 4): Ajuste de volatilidad y riesgo

Formulación de un Asesor Experto Multipar Dinámico (Parte 4): Ajuste de volatilidad y riesgo

Esta fase permite ajustar con precisión tu EA multipar para adaptar el tamaño de las operaciones y el riesgo en tiempo real utilizando indicadores de volatilidad como el ATR, lo que mejora la consistencia, la protección y el rendimiento en diversas condiciones de mercado.
preview
Del básico al intermedio: Paso por valor o por referencia

Del básico al intermedio: Paso por valor o por referencia

En este artículo entenderás en la práctica la diferencia entre el paso por valor y el paso por referencia. Aunque parece algo aparentemente sencillo y que no suele causar problemas, muchos programadores con una considerable experiencia suelen enfrentarse a verdaderos contratiempos con sus códigos, precisamente por este pequeño detalle. Saber cuándo, cómo y por qué usar un paso por valor o un paso por referencia marcará una gran diferencia en tu vida como programador. El contenido presentado aquí tiene como único objetivo la enseñanza. En ningún caso debe considerarse como una aplicación destinada a otro fin que no sea el aprendizaje y el estudio de los conceptos mostrados.
preview
Características del Wizard MQL5 que debe conocer (Parte 32): Regularización

Características del Wizard MQL5 que debe conocer (Parte 32): Regularización

La regularización es una forma de penalizar la función de pérdida en proporción a la ponderación discreta aplicada a lo largo de las distintas capas de una red neuronal. Observamos la importancia que esto puede tener, para algunas de las diversas formas de regularización, en ejecuciones de prueba con un Asesor Experto ensamblado mediante el asistente.
preview
Asesor experto basado en un aproximador MLP universal

Asesor experto basado en un aproximador MLP universal

El artículo presenta una forma sencilla y asequible de usar redes neuronales en un asesor comercial que no requiere conocimientos profundos en aprendizaje automático. El método excluye la normalización de la función objetivo y elimina los problemas de "explosión de pesos" y "estupor de la red", posibilitando un aprendizaje intuitivo y un control visual de los resultados.
preview
Técnicas de remuestreo para la evaluación de predicciones y clasificaciones en MQL5

Técnicas de remuestreo para la evaluación de predicciones y clasificaciones en MQL5

En este artículo exploraremos e implementaremos métodos para evaluar la calidad de los modelos que utilizan un único conjunto de datos como conjuntos de entrenamiento y validación.
preview
Guía de aprendizaje automático para MetaTrader 5 (Parte 1): Correcciones relacionadas con la fuga de datos y las marcas de tiempo

Guía de aprendizaje automático para MetaTrader 5 (Parte 1): Correcciones relacionadas con la fuga de datos y las marcas de tiempo

Antes incluso de empezar a utilizar el aprendizaje automático en nuestras operaciones en MetaTrader 5, es fundamental abordar uno de los riesgos más ignorados: la fuga de datos. En este artículo se analiza cómo las fugas de datos, en particular la «trampa de la marca de tiempo» de MetaTrader 5, pueden distorsionar el rendimiento de nuestro modelo y dar lugar a señales de trading poco fiables. Al profundizar en los mecanismos de este problema y presentar estrategias para evitarlo, allanamos el camino para crear modelos de aprendizaje automático sólidos que ofrezcan predicciones fiables en entornos de negociación en tiempo real.
preview
Desarrollo de un sistema de repetición (Parte 58): Volvemos a trabajar en el servicio

Desarrollo de un sistema de repetición (Parte 58): Volvemos a trabajar en el servicio

Después de haber tomado un descanso en el desarrollo y perfeccionamiento del servicio usado en la repetición/simulación, retomaremos el trabajo en él. Ahora que no utilizaremos algunos recursos, como las variables globales del terminal, es necesario reestructurar por completo algunas partes de él. No se preocupen, este proceso se explicará adecuadamente para que todos puedan seguir el desarrollo del servicio.
preview
Optimización de arrecifes de coral — Coral Reefs Optimization (CRO)

Optimización de arrecifes de coral — Coral Reefs Optimization (CRO)

Este artículo presenta un análisis exhaustivo del algoritmo de optimización de arrecifes de coral (CRO), un método metaheurístico inspirado en los procesos biológicos de formación y desarrollo de los arrecifes de coral. El algoritmo modela aspectos clave de la evolución de los corales: la reproducción externa e interna, el asentamiento de larvas, la reproducción asexual y la competencia por un espacio limitado en el arrecife. El artículo se centra en una versión mejorada del algoritmo.
preview
Redes neuronales en el trading: Modelo multivariado de extremo a extremo para la predicción de series temporales (GinAR)

Redes neuronales en el trading: Modelo multivariado de extremo a extremo para la predicción de series temporales (GinAR)

Le invitamos a explorar un enfoque innovador para la previsión de series temporales con datos faltantes usando el framework GinAR. El artículo muestra la implementación de componentes clave en OpenCL, lo que garantiza un alto rendimiento. En este artículo, analizaremos con detalle la integración de estas soluciones en MQL5. Esto nos permitirá comprender cómo aplicar el método en la práctica en el trading.
preview
Del básico al intermedio: Directiva Include

Del básico al intermedio: Directiva Include

En este artículo, hablaremos de una directiva de compilación ampliamente utilizada en los diversos códigos que puedes encontrar en MQL5. Aunque esta directiva de compilación se explicará aquí de manera bastante básica y superficial, es importante comenzar a entender cómo usarla, ya que pronto será indispensable para avanzar hacia un nivel de programación superior. El contenido expuesto aquí tiene un propósito puramente didáctico. En ningún caso debe considerarse una aplicación cuya finalidad no sea el aprendizaje y el estudio de los conceptos presentados.
preview
Desarrollamos un asesor experto multidivisas (Parte 26): Informador para instrumentos comerciales

Desarrollamos un asesor experto multidivisas (Parte 26): Informador para instrumentos comerciales

Antes de continuar con el desarrollo de asesores expertos multidivisas, vamos a intentar crear un nuevo proyecto utilizando la biblioteca desarrollada. Usando este ejemplo, descubriremos cómo organizar mejor el almacenamiento del código fuente y cómo puede ayudarnos el uso del nuevo repositorio de código de MetaQuotes.
preview
Aprendizaje automático y Data Science (Parte 38): Aprendizaje por transferencia de IA en los mercados de divisas

Aprendizaje automático y Data Science (Parte 38): Aprendizaje por transferencia de IA en los mercados de divisas

Los avances en inteligencia artificial que acaparan los titulares, desde ChatGPT hasta los coches autónomos, no se basan en modelos aislados, sino en el conocimiento acumulado que se transfiere desde diversos modelos o campos comunes. Ahora bien, este mismo enfoque de «aprender una vez, aplicar en todas partes» puede aplicarse para ayudarnos a transformar nuestros modelos de IA en el trading algorítmico. En este artículo, vamos a aprender cómo podemos aprovechar la información obtenida de diversos instrumentos para mejorar las predicciones sobre otros utilizando el aprendizaje por transferencia.
preview
Características del Wizard MQL5 que debe conocer (Parte 18): Búsqueda de arquitectura neural con vectores propios

Características del Wizard MQL5 que debe conocer (Parte 18): Búsqueda de arquitectura neural con vectores propios

Búsqueda de arquitectura neuronal, un enfoque automatizado para determinar la configuración ideal de la red neuronal, puede ser una ventaja cuando se enfrentan muchas opciones y grandes conjuntos de datos de prueba. Analizamos cómo, cuando se combinan vectores propios, este proceso puede resultar aún más eficiente.
preview
Del básico al intermedio: Puntero a función

Del básico al intermedio: Puntero a función

Probablemente ya hayas oído hablar de los punteros cuando se habla de programación. Pero ¿sabías que podemos hacer uso de este tipo de dato aquí, en MQL5? Esto, claro, de una manera que no nos haga perder el control ni genere comportamientos extraños durante la ejecución del código. Sin embargo, como es un recurso de uso muy específico y orientado a ciertos tipos de actividad, es difícil ver a alguien hablar sobre qué es un puntero y cómo usarlo en MQL5.
preview
Redes neuronales en el trading: Generalización de series temporales sin vinculación a datos (Mamba4Cast)

Redes neuronales en el trading: Generalización de series temporales sin vinculación a datos (Mamba4Cast)

En este artículo, presentaremos el framework Mamba4Cast y analizaremos más de cerca uno de sus componentes clave: la codificación posicional basada en marcas temporales. Asimismo, mostraremos cómo se forma la incorporación temporal considerando la estructura de calendario de los datos.
preview
Redes neuronales en el trading: Generalización de series temporales sin vinculación a datos (Módulos básicos del modelo)

Redes neuronales en el trading: Generalización de series temporales sin vinculación a datos (Módulos básicos del modelo)

Seguimos familiarizándonos con el framework Mamba4Cast. Hoy profundizaremos en la implementación práctica de los enfoques propuestos. Mamba4Cast no ha sido diseñado para un largo periodo de calentamiento en cada nueva serie temporal, sino para un funcionamiento inmediato. Gracias al concepto de pronóstico Zero-Shot, el modelo es capaz de generar inmediatamente pronósticos de alta calidad sobre datos reales sin entrenamiento adicional ni ajuste de hiperparámetros.
preview
Optimización del modelo de nubes atmosféricas — Atmosphere Clouds Model Optimization (ACMO): Teoría

Optimización del modelo de nubes atmosféricas — Atmosphere Clouds Model Optimization (ACMO): Teoría

Este artículo se centra en el algoritmo metaheurístico Atmosphere Clouds Model Optimisation (ACMO), que modela el comportamiento de las nubes para resolver problemas de optimización. El algoritmo usa los principios de generación, movimiento y propagación de nubes, adaptándose a las "condiciones meteorológicas" del espacio de soluciones. El artículo revela cómo una simulación meteorológica del algoritmo encuentra soluciones óptimas en un espacio de posibilidades complejo y detalla las etapas del ACMO, incluida la preparación del "cielo", el nacimiento de las nubes, su movimiento y la concentración de la lluvia.
preview
Redes neuronales en el trading: Segmentación de datos basada en expresiones de referencia

Redes neuronales en el trading: Segmentación de datos basada en expresiones de referencia

En el proceso de análisis de la situación del mercado, dividimos este en segmentos individuales, identificando las tendencias clave. Sin embargo, los métodos tradicionales de análisis suelen centrarse en un solo aspecto, lo cual limita nuestra percepción. En este artículo, presentaremos un método que nos permitirá seleccionar varios objetos, ofreciéndonos una comprensión más completa y variada de la situación.
preview
Algoritmo de optimización de neuroboides — Neuroboids Optimization Algorithm (NOA)

Algoritmo de optimización de neuroboides — Neuroboids Optimization Algorithm (NOA)

Hoy hablaremos de una nueva metaheurística de optimización inspirada en la naturaleza: el NOA (Neuroboids Optimisation Algorithm), que combina principios de inteligencia colectiva y redes neuronales. A diferencia de los métodos clásicos, el algoritmo usa una población de "neuroboides" autodidactas, cada uno con su propia red neuronal que adapta la estrategia de búsqueda en tiempo real. En el artículo se revela la arquitectura del algoritmo, los mecanismos de autoaprendizaje de los agentes y las perspectivas de aplicación de este enfoque híbrido a problemas complejos de optimización.
preview
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 21): Herramienta de detección de cambios en la estructura del mercado

Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 21): Herramienta de detección de cambios en la estructura del mercado

El asesor experto (EA) «Market Structure Flip Detector» actúa como su socio vigilante, observando constantemente los cambios en el sentimiento del mercado. Mediante el uso de umbrales basados en el rango verdadero medio (ATR), detecta eficazmente los cambios de estructura y señala cada «máximo más bajo» y cada «mínimo más alto» con indicadores claros. Gracias a la rápida ejecución de MQL5 y a su API flexible, esta herramienta ofrece análisis en tiempo real que ajusta la visualización para una legibilidad óptima y proporciona un panel de control en directo para supervisar el número de cambios de estructura y los tiempos. Además, las notificaciones de sonido y push personalizables le garantizan que se mantenga informado de las señales críticas, lo que le permite comprobar cómo unos datos sencillos y unas rutinas de apoyo pueden transformar los movimientos de los precios en estrategias prácticas.
preview
Desarrollo de un sistema de repetición (Parte 55): Módulo de control

Desarrollo de un sistema de repetición (Parte 55): Módulo de control

En este artículo, implementaremos el indicador de control de manera que pueda integrarse en el sistema de mensajes que está en desarrollo. Aunque no es algo muy complejo de hacer, es necesario entender algunos detalles sobre cómo inicializar este módulo. El contenido expuesto aquí tiene como objetivo, pura y simplemente, la didáctica. En ningún caso debe considerarse como una aplicación cuya finalidad no sea el aprendizaje y el estudio de los conceptos mostrados.
preview
Características del Wizard MQL5 que debe conocer (Parte 15): Máquinas de vectores de soporte utilizando el polinomio de Newton

Características del Wizard MQL5 que debe conocer (Parte 15): Máquinas de vectores de soporte utilizando el polinomio de Newton

Las máquinas de vectores de soporte clasifican los datos en función de clases predefinidas explorando los efectos de aumentar su dimensionalidad. Se trata de un método de aprendizaje supervisado bastante complejo dado su potencial para tratar datos multidimensionales. Para este artículo consideramos cómo su implementación muy básica de datos bidimensionales puede hacerse más eficientemente con el polinomio de Newton al clasificar precio-acción.
preview
Del básico al intermedio: Recursividad

Del básico al intermedio: Recursividad

En este artículo, veremos un concepto de programación muy interesante y bastante divertido, aunque debe ser tratado con extremo respeto, ya que un mal uso o un mal entendimiento del mismo convierte programas relativamente simples en algo innecesariamente complicado. Aunque, el buen uso y la perfecta adecuación en situaciones igualmente adecuadas convierten la recursividad en un gran aliado para resolver cuestiones que, de otra forma, serían mucho más trabajosas y demoradas. El contenido expuesto aquí tiene un propósito puramente didáctico. En ningún caso debe ser considerado como una aplicación cuya finalidad no sea el aprendizaje y el estudio de los conceptos mostrados.
preview
Redes neuronales en el trading: Agente con memoria multinivel

Redes neuronales en el trading: Agente con memoria multinivel

Los enfoques de memoria multinivel que imitan los procesos cognitivos humanos permiten procesar datos financieros complejos y adaptarse a nuevas señales, lo cual contribuye a mejorar la eficacia de las decisiones de inversión en mercados dinámicos.
preview
Análisis de las brechas temporales de precios en MQL5 (Parte II): Creamos un mapa de calor de la distribución de liquidez a lo largo del tiempo

Análisis de las brechas temporales de precios en MQL5 (Parte II): Creamos un mapa de calor de la distribución de liquidez a lo largo del tiempo

Hoy veremos una guía detallada sobre cómo crear un indicador de mapa de calor para MetaTrader 5 que visualice la distribución de precios a lo largo del tiempo como un mapa de calor. El artículo revela la base matemática del análisis de densidad temporal, donde cada nivel de precio está coloreado desde el rojo (tiempo mínimo de estancia) hasta el azul (tiempo máximo de estancia).
preview
Algoritmo de optimización caótica — Chaos optimization algorithm (COA)

Algoritmo de optimización caótica — Chaos optimization algorithm (COA)

Hoy hablaremos de un algoritmo de optimización caótica (COA) mejorado, que combina los efectos del caos con mecanismos de búsqueda adaptativos. El algoritmo usa un conjunto de mapeos caóticos y componentes inerciales para explorar el espacio de búsqueda. El artículo revela los fundamentos teóricos de los métodos caóticos de optimización financiera.