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
Reimaginando las estrategias clásicas: El petróleo

Reimaginando las estrategias clásicas: El petróleo

En este artículo, revisamos una estrategia clásica de negociación de crudo con el objetivo de mejorarla aprovechando algoritmos de aprendizaje automático supervisado. Construiremos un modelo de mínimos cuadrados para predecir los futuros precios del crudo Brent basándonos en el diferencial entre los precios del crudo Brent y del crudo WTI. Nuestro objetivo es identificar un indicador adelantado de futuros cambios en los precios del Brent.
preview
Redes neuronales en el trading: Modelos con transformada de wavelet y atención multitarea (Final)

Redes neuronales en el trading: Modelos con transformada de wavelet y atención multitarea (Final)

En el artículo anterior, analizamos los fundamentos teóricos y pusimos en práctica los planteamientos del framework Multitask-Stockformer, que combina la transformada de wavelet y el modelo multitarea Self-Attention. Hoy seguiremos aplicando los algoritmos del framework anterior y evaluaremos su eficacia con datos históricos reales.
preview
Desarrollo de un sistema de repetición — Simulación de mercado (Parte 09): Eventos personalizados

Desarrollo de un sistema de repetición — Simulación de mercado (Parte 09): Eventos personalizados

Aquí veremos cómo accionar eventos personalizados y mejorar la cuestión de cómo el indicador informa del estado del servicio de repetición/simulación.
preview
Introducción a MQL5 (Parte 13): Guía para principiantes sobre cómo crear indicadores personalizados (II)

Introducción a MQL5 (Parte 13): Guía para principiantes sobre cómo crear indicadores personalizados (II)

Este artículo le guía a través del proceso de creación de un indicador Heikin Ashi personalizado desde cero y muestra cómo integrar indicadores personalizados en un EA. Abarca cálculos de indicadores, lógica de ejecución de operaciones y técnicas de gestión de riesgos para mejorar las estrategias de negociación automatizadas.
preview
Optimización y ajuste de código sin procesar para mejorar los resultados de las pruebas retrospectivas

Optimización y ajuste de código sin procesar para mejorar los resultados de las pruebas retrospectivas

Mejore su código MQL5 optimizando la lógica, refinando los cálculos y reduciendo el tiempo de ejecución para mejorar la precisión de las pruebas retrospectivas. Ajuste los parámetros, optimice los bucles y elimine ineficiencias para obtener un mejor rendimiento.
preview
Cómo publicar código en CodeBase: Guía práctica

Cómo publicar código en CodeBase: Guía práctica

En este artículo, analizaremos el proceso de publicación de diferentes tipos de programas para el terminal en la biblioteca de código fuente MQL5 usando ejemplos reales.
preview
Redes neuronales en el trading: Pronóstico de series temporales con descomposición modal adaptativa (Final)

Redes neuronales en el trading: Pronóstico de series temporales con descomposición modal adaptativa (Final)

El artículo analiza la adaptación y la implementación práctica del framework ACEFormer usando MQL5 en el contexto del trading algorítmico. Hoy mostraremos las decisiones arquitectónicas clave, las características del entrenamiento y los resultados de las pruebas del modelo con datos reales.
preview
Aprendizaje automático y Data Science (Parte 33): Pandas Dataframe en MQL5, recopilación de datos para facilitar el uso de ML

Aprendizaje automático y Data Science (Parte 33): Pandas Dataframe en MQL5, recopilación de datos para facilitar el uso de ML

Cuando se trabaja con modelos de aprendizaje automático, es esencial garantizar la coherencia de los datos utilizados para el entrenamiento, la validación y las pruebas. En este artículo, crearemos nuestra propia versión de la biblioteca Pandas en MQL5 para garantizar un enfoque unificado para el manejo de datos de aprendizaje automático, con el fin de asegurar que se apliquen los mismos datos dentro y fuera de MQL5, donde se lleva a cabo la mayor parte del entrenamiento.
preview
De novato a experto: Noticias animadas utilizando MQL5 (IX) Gestión de múltiples símbolos en un único gráfico para el trading de noticias

De novato a experto: Noticias animadas utilizando MQL5 (IX) Gestión de múltiples símbolos en un único gráfico para el trading de noticias

El trading basado en noticias suele requerir la gestión de múltiples posiciones y símbolos en muy poco tiempo debido al aumento de la volatilidad. En este artículo, abordamos los retos que plantea el trading con múltiples símbolos mediante la integración de esta función en nuestro EA «News Headline». En este artículo veremos cómo el trading algorítmico con MQL5 hace que el trading con múltiples símbolos sea más eficiente y eficaz.
preview
Simulación de mercado (Parte 10): Sockets (IV)

Simulación de mercado (Parte 10): Sockets (IV)

En este artículo, te muestro lo que necesitas hacer para empezar a utilizar Excel y controlar MetaTrader 5, pero de una forma muy interesante. Para ello, utilizaremos un complemento de Excel, de modo que no sea necesario utilizar el VBA integrado. Si no sabes de qué complemento se trata, consulta este artículo y aprende a programar en Python directamente en Excel.
preview
Características del Wizard MQL5 que debe conocer (Parte 19): Inferencia bayesiana

Características del Wizard MQL5 que debe conocer (Parte 19): Inferencia bayesiana

La inferencia bayesiana es la adopción del teorema de Bayes para actualizar la hipótesis de probabilidad a medida que se dispone de nueva información. Esto intuitivamente se inclina hacia la adaptación en el análisis de series de tiempo, por lo que observamos cómo podríamos usarlo para crear clases personalizadas no solo para la señal sino también para la gestión de dinero y los trailing stops.
preview
Redes neuronales en el trading: Superpoint Transformer (SPFormer)

Redes neuronales en el trading: Superpoint Transformer (SPFormer)

En este artículo, nos familiarizaremos con un método de segmentación de objetos 3D basado en el Superpoint Transformer (SPFormer), que elimina la necesidad de agregar datos intermedios, lo cual acelera el proceso de segmentación y mejora el rendimiento del modelo.
preview
Optimización de Battle Royale — Battle Royale Optimizer (BRO)

Optimización de Battle Royale — Battle Royale Optimizer (BRO)

El artículo describe un innovador enfoque de optimización que combina la competición espacial de soluciones con el estrechamiento adaptativo del espacio de búsqueda, lo cual convierte al Battle Royale Optimizer en una prometedora herramienta para el análisis financiero.
preview
Creación de un Panel de administración de operaciones en MQL5 (Parte VI): Interfaz de múltiples funciones (I)

Creación de un Panel de administración de operaciones en MQL5 (Parte VI): Interfaz de múltiples funciones (I)

La función del administrador de operaciones va más allá de las comunicaciones por Telegram; también puede participar en diversas actividades de control, como la gestión de órdenes, el seguimiento de posiciones y la personalización de interfaces. En este artículo, compartiremos información práctica sobre cómo ampliar nuestro programa para admitir múltiples funcionalidades en MQL5. Esta actualización tiene como objetivo superar la limitación actual del Panel de administración, que se centra principalmente en la comunicación, permitiéndole gestionar una gama más amplia de tareas.
preview
Introducción a MQL5 (Parte 11): Guía de trabajo con indicadores incorporados en MQL5 para principiantes (II)

Introducción a MQL5 (Parte 11): Guía de trabajo con indicadores incorporados en MQL5 para principiantes (II)

Descubra cómo desarrollar un Asesor Experto (Expert Advisor, EA) en MQL5 utilizando múltiples indicadores como el RSI, la media móvil y el oscilador estocástico para detectar divergencias alcistas y bajistas ocultas. En este artículo aprenda a implementar una gestión de riesgos eficaz y a automatizar las operaciones con ejemplos detallados y código fuente totalmente comentado con fines educativos.
preview
Redes neuronales en el trading: Jerarquía de habilidades para el comportamiento adaptativo de agentes (HiSSD)

Redes neuronales en el trading: Jerarquía de habilidades para el comportamiento adaptativo de agentes (HiSSD)

Hoy nos familiarizaremos con el framework HiSSD, que combina el aprendizaje jerárquico y los enfoques multiagente para crear sistemas adaptativos. En este artículo, detallaremos cómo este enfoque innovador ayuda a identificar patrones ocultos en los mercados financieros y a optimizar las estrategias comerciales en un entorno descentralizado.
preview
Simulación de mercado (Parte 04): Creación de la clase C_Orders (I)

Simulación de mercado (Parte 04): Creación de la clase C_Orders (I)

En este artículo comenzaremos a construir la clase C_Orders para poder enviar órdenes al servidor de negociación. Lo haremos poco a poco, ya que el objetivo es explicar detalladamente cómo se realizará esto a través del sistema de mensajería.
preview
Redes neuronales en el trading: Modelos híbridos de secuencias de grafos (GSM++)

Redes neuronales en el trading: Modelos híbridos de secuencias de grafos (GSM++)

Los modelos híbridos de secuencias de grafos (GSM++) combinan los puntos fuertes de distintas arquitecturas para posibilitar un análisis de datos de gran precisión y optimizar los costes computacionales. Estos modelos se adaptan eficazmente a los datos dinámicos del mercado, mejorando la presentación y el procesamiento de la información financiera.
preview
Formulación Genérica de Optimización (GOF, Generic Optimization Formulation) utilizando el `Criterio máximos del usuario` (Custom Max) con múltiples restricciones en el Probador de Estrategias

Formulación Genérica de Optimización (GOF, Generic Optimization Formulation) utilizando el `Criterio máximos del usuario` (Custom Max) con múltiples restricciones en el Probador de Estrategias

En este artículo presentaremos una forma de implementar problemas de optimización con múltiples objetivos y restricciones al seleccionar «Custom Max» en la pestaña Setting del terminal MetaTrader 5. Como ejemplo, el problema de optimización podría ser: Maximizar el Factor de Beneficio, el Beneficio Neto y el Factor de Recuperación, de forma que la reducción sea inferior al 10%, el número de pérdidas consecutivas sea inferior a 5 y el número de operaciones por semana sea superior a 5.
preview
Características del Wizard MQL5 que debe conocer (Parte 47): Aprendizaje por refuerzo con diferencia temporal

Características del Wizard MQL5 que debe conocer (Parte 47): Aprendizaje por refuerzo con diferencia temporal

La diferencia temporal es otro algoritmo del aprendizaje por refuerzo que actualiza los valores Q basándose en la diferencia entre las recompensas previstas y las reales durante el entrenamiento del agente. Se centra específicamente en la actualización de los valores Q sin tener en cuenta su emparejamiento estado-acción. Por lo tanto, veremos cómo aplicar esto, tal y como hemos hecho en artículos anteriores, en un Asesor Experto creado mediante un asistente.
preview
Movimiento de precios: Modelos matemáticos y análisis técnico

Movimiento de precios: Modelos matemáticos y análisis técnico

Pronosticar los movimientos de los pares de divisas es un factor importante para el éxito en el trading. Este artículo explora varios modelos de movimiento de precios, analiza sus ventajas y desventajas y además explora su aplicación práctica en estrategias comerciales. Asimismo, consideraremos enfoques que nos permitirán identificar patrones ocultos y mejorar la precisión de los pronósticos.
preview
Criterio de independencia de Hilbert-Schmidt (HSIC)

Criterio de independencia de Hilbert-Schmidt (HSIC)

El presente artículo analiza la prueba estadística no paramétrica HSIC (Criterio de Independencia de Hilbert-Schmidt) diseñada para identificar dependencias lineales y no lineales en los datos. Para el cálculo de HSIC en el lenguaje MQL5, se propone la implementación de dos algoritmos: la prueba de permutación exacta y la aproximación gamma. La eficacia de los métodos se demuestra en el modelado de datos sintéticos de una relación no lineal entre las características y la variable objetivo.
preview
Algoritmos de optimización de la población: Resiliencia ante el estancamiento en los extremos locales (Parte II)

Algoritmos de optimización de la población: Resiliencia ante el estancamiento en los extremos locales (Parte II)

Hoy continuaremos un experimento cuyo objetivo es investigar el comportamiento de los algoritmos de optimización basados en poblaciones en el contexto de su capacidad para abandonar eficazmente los mínimos locales cuando la diversidad de la población es baja y alcanzar los máximos globales. Resultados del estudio.
preview
Redes neuronales: así de sencillo (Parte 81): Razonamiento de movimiento guiado por el contexto de grueso a fino (CCMR, Coarse-to-Fine Context-Guided Motion Reasoning)

Redes neuronales: así de sencillo (Parte 81): Razonamiento de movimiento guiado por el contexto de grueso a fino (CCMR, Coarse-to-Fine Context-Guided Motion Reasoning)

En trabajos anteriores, siempre evaluábamos el estado actual del entorno. Al mismo tiempo, la dinámica de los cambios en los indicadores siempre permaneció «entre bastidores». En este artículo quiero presentarle un algoritmo que permite evaluar el cambio directo de los datos entre 2 estados ambientales sucesivos.
preview
Redes neuronales en el trading: Representación lineal por partes de series temporales

Redes neuronales en el trading: Representación lineal por partes de series temporales

Este artículo es algo distinto de los anteriores de esta serie. En él, hablaremos de una representación alternativa de las series temporales. La representación lineal por partes de series temporales es un método de aproximación de una serie temporal usando funciones lineales en intervalos pequeños.
preview
Características del Wizard MQL5 que debe conocer (Parte 39): Índice de fuerza relativa

Características del Wizard MQL5 que debe conocer (Parte 39): Índice de fuerza relativa

El Índice de fuerza relativa (Relative Strength Index, RSI) es un oscilador de momento popular que mide el ritmo y el tamaño del cambio de precio reciente de un valor para evaluar situaciones de sobrevaloración y subvaloración en el precio del valor. Estos conocimientos sobre velocidad y magnitud son clave para definir puntos de reversión. Ponemos este oscilador a trabajar en otra clase de señal personalizada y examinamos las características de algunas de sus señales. Sin embargo, comenzaremos resumiendo lo que comenzamos anteriormente sobre las Bandas de Bollinger.
preview
Visualización de estrategias en MQL5: distribuimos los resultados de la optimización en gráficos de criterios

Visualización de estrategias en MQL5: distribuimos los resultados de la optimización en gráficos de criterios

En este artículo, escribiremos un ejemplo de visualización del proceso de optimización e implementaremos la visualización de las tres mejores pasadas para cuatro criterios de optimización. Asimismo, ofreceremos la posibilidad de seleccionar una de las tres mejores pasadas para mostrar sus datos en tablas y gráficos.
preview
Determinamos la sobrecompra y la sobreventa usando la teoría del caos

Determinamos la sobrecompra y la sobreventa usando la teoría del caos

Hoy determinaremos la sobrecompra y la sobreventa del mercado mediante la teoría del caos; usando la integración de los principios de la teoría del caos, la geometría fractal y las redes neuronales, pronosticaremos los mercados financieros. El presente artículo demostrará la aplicación del exponente de Lyapunov como medida de la aleatoriedad del mercado y la adaptación dinámica de las señales comerciales. La metodología incluye un algoritmo de generación de ruido fractal, activación por tangente hiperbólica y optimización con impulso.
preview
Desarrollo de un sistema de repetición — Simulación de mercado (Parte 04): Haciendo ajustes (II)

Desarrollo de un sistema de repetición — Simulación de mercado (Parte 04): Haciendo ajustes (II)

Vamos continuar con el desarrollo del sistema y el control. Sin una forma de controlar el servicio, se complica avanzar y mejorar el sistema.
preview
Redes neuronales: así de sencillo (Parte 93): Predicción adaptativa en los ámbitos de la frecuencia y el tiempo (Parte final)

Redes neuronales: así de sencillo (Parte 93): Predicción adaptativa en los ámbitos de la frecuencia y el tiempo (Parte final)

En este artículo, continuamos la aplicación de los planteamientos del modelo ATFNet, que combina de forma adaptativa los resultados de 2 bloques (frecuencia y tiempo) dentro de la predicción de series temporales.
preview
Kit de herramientas de negociación MQL5 (Parte 4): Desarrollo de una biblioteca EX5 para la gestión del historial

Kit de herramientas de negociación MQL5 (Parte 4): Desarrollo de una biblioteca EX5 para la gestión del historial

Aprenda a recuperar, procesar, clasificar, ordenar, analizar y gestionar posiciones cerradas, órdenes e historiales de operaciones utilizando MQL5 mediante la creación de una amplia biblioteca EX5 de gestión de historiales con un enfoque detallado paso a paso.
preview
Desarrollamos un asesor experto multidivisas (Parte 23): Ordenando la cadena de etapas de optimización automática de proyectos (II)

Desarrollamos un asesor experto multidivisas (Parte 23): Ordenando la cadena de etapas de optimización automática de proyectos (II)

Hoy nuestro objetivo consiste en crear un sistema de optimización periódica automática de las estrategias comerciales utilizadas en un asesor experto final. El sistema se vuelve más complejo a medida que se desarrolla, por lo que de vez en cuando debemos examinarlo en su conjunto para detectar cuellos de botella y soluciones subóptimas.
preview
Desarrollo de un sistema de repetición (Parte 49): Esto complica las cosas (I)

Desarrollo de un sistema de repetición (Parte 49): Esto complica las cosas (I)

En este artículo complicaremos un poco las cosas. Utilizando lo que vimos en los artículos anteriores, comenzaremos a liberar el archivo de plantilla para que el usuario pueda utilizar una plantilla personalizada. Sin embargo, haré los cambios poco a poco, ya que también modificaré el indicador con el fin de reducir la carga de MetaTrader 5.
preview
Red neural en la práctica: Pseudo inversa (I)

Red neural en la práctica: Pseudo inversa (I)

Aquí, comenzaremos a ver cómo podemos implementar, utilizando MQL5 puro, el cálculo de la pseudo inversa. A pesar de que el código que veremos será considerablemente más complicado para los principiantes de lo que realmente me gustaría presentar, aún estoy pensando en cómo explicarlo de manera sencilla. Considera esto una oportunidad para estudiar un código poco común. Así que ve con calma. Sin prisa. Aunque no esté enfocado en ser eficiente o de rápida ejecución, el objetivo es ser lo más didáctico posible.
preview
El método de agrupamiento para el manejo de datos: Implementación del algoritmo iterativo multicapa en MQL5

El método de agrupamiento para el manejo de datos: Implementación del algoritmo iterativo multicapa en MQL5

En este artículo describimos la implementación del algoritmo iterativo multicapa del método de agrupamiento para el manejo de datos en MQL5.
preview
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 25): Rompefractales de doble EMA

Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 25): Rompefractales de doble EMA

La acción del precio es un método fundamental para identificar configuraciones de trading rentables. Sin embargo, el seguimiento manual de los movimientos y patrones de precios puede resultar complicado y llevar mucho tiempo. Para solucionar esto, estamos desarrollando herramientas que analizan automáticamente la evolución de los precios, proporcionando señales oportunas cada vez que se detectan oportunidades potenciales. Este artículo presenta una herramienta robusta que aprovecha las rupturas fractales junto con las medias móviles exponenciales (EMA) de 14 y 200 periodos para generar señales de trading fiables, ayudando a los operadores a tomar decisiones informadas con mayor confianza.
preview
Visualización de transacciones en un gráfico (Parte 2): Visualización gráfica de datos

Visualización de transacciones en un gráfico (Parte 2): Visualización gráfica de datos

Aquí vamos a desarrollar un script desde cero que simplifica la descarga de pantallas de impresión de operaciones para analizar las entradas de operaciones. Toda la información necesaria sobre una operación debe mostrarse cómodamente en un gráfico con la posibilidad de dibujar distintos plazos.
preview
Algoritmo de optimización del comportamiento social adaptativo (ASBO): — Adaptive Social Behavior Optimization (ASBO): Evolución en dos fases

Algoritmo de optimización del comportamiento social adaptativo (ASBO): — Adaptive Social Behavior Optimization (ASBO): Evolución en dos fases

Este artículo supone una continuación del tema del comportamiento social de los organismos vivos y su impacto en el desarrollo de un nuevo modelo matemático: el ASBO (Adaptive Social Behavior Optimization). Así, nos sumergiremos en la evolución en dos fases, probaremos el algoritmo y sacaremos conclusiones. Al igual que en la naturaleza un grupo de organismos vivos une sus esfuerzos para sobrevivir, el ASBO utiliza los principios de comportamiento colectivo para resolver problemas de optimización complejos.
preview
Del básico al intermedio: Punto flotante

Del básico al intermedio: Punto flotante

Este artículo es una breve introducción a lo que sería el punto flotante. Como este contenido es muy complicado, te aconsejo leer con calma y atención. No esperes dominar el sistema de punto flotante de manera rápida. El mismo solo se domina con el tiempo y la experiencia de uso. Pero este artículo te ayudará a entender por qué, a veces, tu aplicación reporta un resultado diferente del esperado originalmente. 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 mostrados.
preview
Características del Wizard MQL5 que debe conocer (Parte 52): Accelerator Oscillator (AC)

Características del Wizard MQL5 que debe conocer (Parte 52): Accelerator Oscillator (AC)

El Accelerator Oscillator es otro indicador de Bill Williams que sigue la aceleración del impulso del precio y no solo su ritmo. Aunque es muy similar al oscilador Awesome que analizamos en un artículo reciente, busca evitar los efectos de retraso centrándose más en la aceleración que en la velocidad. Como siempre, examinamos qué patrones podemos obtener de esto y también qué importancia podría tener cada uno de ellos en el trading a través de un asesor experto creado por el Asistente MQL5 (MQL5 Wizard).