Artículos con ejemplos de programación en el lenguaje MQL5

icon

Le espera una gran variedad de diferentes artículos sobre la creación de indicadores y robots comerciales para la plataforma MetaTrader usando el lenguaje MQL5. Cada artículo va acompañado con los códigos fuente, Usted puede abrir e iniciarlos en el editor MetaEditor de una manera independiente.

Estos artículos serán útiles tanto para los principiantes en el trading automático, como para los operadores experimentados en la programación y el trading. Aquí encontrará no sólo los ejemplos, sino también las nuevas ideas.

Nuevo artículo
últimas | mejores
preview
Del básico al intermedio: Como burbujas de jabón

Del básico al intermedio: Como burbujas de jabón

En este artículo, se explicará un mecanismo muy simple y fácil de entender, cuyo propósito es ordenar un array cualquiera. En él, veremos que no siempre el resultado obtenido es el que esperamos tener, por lo que será necesario adaptar la propia implementación para conseguir los resultados adecuados.
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
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
Análisis de espectro singular (SSA) en MQL5

Análisis de espectro singular (SSA) en MQL5

Este artículo pretende servir de guía para aquellas personas que no estén familiarizadas con el concepto de análisis de espectro singular (SSA) y que deseen adquirir los conocimientos necesarios para poder aplicar las herramientas integradas disponibles en MQL5.
preview
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
Del básico al intermedio: Acceso aleatorio (I)

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

En este artículo tendremos nuestra primera experiencia con el acceso aleatorio al contenido de un archivo. Esto apunta tanto a la escritura como a la lectura de información y datos almacenados en un archivo. Sin embargo, como este tema es bastante extenso para explicarlo en un único artículo, aquí solo haremos una introducción a esta cuestión del acceso aleatorio.
preview
Teoría de grafos: Aplicación del algoritmo de Dijkstra al trading

Teoría de grafos: Aplicación del algoritmo de Dijkstra al trading

El algoritmo de Dijkstra, una solución clásica para hallar el camino más corto en la teoría de grafos, puede optimizar las estrategias de trading mediante la modelización de las redes de mercado. Los traders pueden utilizarlo para encontrar las rutas más eficientes en los datos del gráfico de velas.
preview
Formulación de un Asesor Experto Multipar Dinámico (Parte 3): Estrategias de reversión a la media y de impulso

Formulación de un Asesor Experto Multipar Dinámico (Parte 3): Estrategias de reversión a la media y de impulso

En este artículo, analizaremos la tercera parte de nuestro proceso de creación de un asesor experto (EA) dinámico para múltiples pares, centrándonos específicamente en la integración de las estrategias de trading de reversión a la media y momentum. Analizaremos cómo detectar y reaccionar ante las desviaciones de los precios respecto a la media (puntuación Z), y cómo medir el impulso en varios pares de divisas para determinar la dirección de la operación.
preview
Desarrollamos un asesor experto multidivisas (Parte 28): Añadimos un gestor de cierre de posiciones

Desarrollamos un asesor experto multidivisas (Parte 28): Añadimos un gestor de cierre de posiciones

Cuando se ejecutan varias estrategias en paralelo, resulta recomendable cerrar periódicamente todas las posiciones abiertas y volver a empezar las estrategias. El código existente solo permite implementar este comportamiento con manipulaciones manuales. Vamos a intentar automatizar esta parte.
preview
De novato a experto: Noticias animadas utilizando MQL5 (IV) Análisis de mercado sobre modelos de IA alojados localmente

De novato a experto: Noticias animadas utilizando MQL5 (IV) Análisis de mercado sobre modelos de IA alojados localmente

En esta discusión, analizaremos cómo autoalojar modelos de IA de código abierto y utilizarlos para obtener información sobre el mercado. Esto forma parte de nuestro esfuerzo continuo por ampliar el News Headline EA, con la introducción de una franja «AI Insights» que lo convierte en una herramienta de asistencia con múltiples integraciones. La versión mejorada del Asesor Experto (EA) tiene como objetivo mantener informados a los operadores a través de eventos del calendario, noticias financieras de última hora, indicadores técnicos y, ahora, perspectivas de mercado generadas por IA, ofreciendo así un apoyo oportuno, variado e inteligente para la toma de decisiones de trading. Únete a la conversación mientras exploramos estrategias prácticas de integración y cómo MQL5 puede colaborar con recursos externos para crear un terminal de trabajo para trading potente e inteligente.
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
Creación de un Panel de administración de operaciones en MQL5 (Parte XII): Integración de una calculadora de valores Forex

Creación de un Panel de administración de operaciones en MQL5 (Parte XII): Integración de una calculadora de valores Forex

El cálculo preciso de los valores clave de las operaciones es una parte indispensable del flujo de trabajo de cualquier operador. En este artículo, analizaremos la integración de una potente herramienta —la calculadora de Forex— en el Panel de gestión de operaciones, lo que amplía aún más la funcionalidad de nuestro sistema «Trading Administrator» de múltiples paneles. A la hora de realizar operaciones, es fundamental determinar de forma eficaz el riesgo, el tamaño de la posición y el beneficio potencial, y esta nueva función está diseñada para que ese proceso sea más rápido e intuitivo dentro del panel. Veamos cómo se aplica MQL5 en la creación de paneles de trading avanzados.
preview
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 26): Herramienta de patrones pin bar y envolventes con divergencia del RSI (patrones múltiples)

Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 26): Herramienta de patrones pin bar y envolventes con divergencia del RSI (patrones múltiples)

En línea con nuestro objetivo de desarrollar herramientas prácticas basadas en la acción del precio, este artículo analiza la creación de un Asesor Experto (EA) que detecta patrones de «pin bar» y «engulfing», utilizando la divergencia del RSI como señal de confirmación antes de generar cualquier señal de trading.
preview
Dominando los registros (Parte 7): Cómo mostrar los registros en un gráfico

Dominando los registros (Parte 7): Cómo mostrar los registros en un gráfico

Descubre cómo mostrar los registros directamente en el gráfico de MetaTrader de forma organizada, con marcos, títulos y scroll automático. En este artículo te mostramos cómo crear un sistema visual de registros con MQL5, ideal para supervisar en tiempo real lo que hace tu robot.
preview
Del básico al intermedio: FileSave y FileLoad

Del básico al intermedio: FileSave y FileLoad

En este artículo se explicarán y explorarán algunas formas de trabajar con las funciones de la biblioteca FileSave y FileLoad. Aunque mucha gente las considera poco prometedoras, debido a algunas limitaciones o dificultades que generan en ciertos escenarios, entender correctamente cómo funcionan estas dos funciones puede ahorrarte mucho trabajo en determinados momentos. Además, son una excelente forma de trabajar con archivos de log.
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
Del básico al intermedio: Eventos en Objetos (IV)

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

En este artículo, terminaremos lo que comenzamos en el artículo anterior. Es decir, una forma total y completamente interactiva de redimensionar los objetos directamente en el gráfico. Aunque muchos imaginen que, para hacer algo así, haría falta mucho más conocimiento de MQL5, notarás que, con conceptos simples y conocimientos muy básicos, podemos implementar una forma de trabajar con los objetos directamente en el gráfico. Algo que da un resultado muy divertido y bastante interesante.
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. Tambié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
Creación de un Panel de administración de operaciones en MQL5 (Parte XI): Interfaz moderna de funciones de comunicación (I)

Creación de un Panel de administración de operaciones en MQL5 (Parte XI): Interfaz moderna de funciones de comunicación (I)

Hoy nos centramos en mejorar la interfaz de mensajería del Panel de Comunicaciones para adaptarla a los estándares de las aplicaciones de comunicación modernas y de alto rendimiento. Esta mejora se logrará actualizando la clase CommunicationsDialog. Únase a nosotros en este artículo y debate mientras exploramos ideas clave y describimos los próximos pasos para avanzar en la programación de interfaces utilizando MQL5.
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
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
Del básico al intermedio: Objetos (IV)

Del básico al intermedio: Objetos (IV)

Puede que este sea el artículo más divertido hasta ahora. Esto ocurre porque aquí implementaremos una modificación de un objeto presente en MetaTrader 5 para crear otro que no existe originalmente en la plataforma. Claro, lo que verás aquí puede parecer una locura, pero funciona y tiene un objetivo muy interesante.
preview
Del básico al intermedio: Objetos (III)

Del básico al intermedio: Objetos (III)

En este artículo veremos cómo podemos implementar un sistema de interacción muy atractivo e interesante, sobre todo para quienes están empezando a practicar programación en MQL5. No se trata de algo realmente nuevo. La forma en que abordaré el tema hará que todo sea mucho más fácil de entender, ya que veremos, en la práctica, cómo se desarrolla una programación estructural con un objetivo bastante divertido.
preview
Del básico al intermedio: Eventos de mouse

Del básico al intermedio: Eventos de mouse

Este artículo es uno de esos en los que, definitivamente, no basta con ver el código y estudiarlo para entender qué ocurre. De hecho, es necesario crear una aplicación ejecutable y usarla en cualquier gráfico. Esto, para poder entender pequeños detalles que, de otro modo, son muy complicados de comprender. Como, por ejemplo, la combinación del teclado con el mouse para construir ciertos tipos de cosas.
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
Creación de un Panel de administración de operaciones en MQL5 (Parte X): Interfaz basada en recursos externos

Creación de un Panel de administración de operaciones en MQL5 (Parte X): Interfaz basada en recursos externos

Actualmente estamos aprovechando las capacidades de MQL5 para utilizar recursos externos, como imágenes en formato BMP, para crear una interfaz de inicio con un estilo único para el Panel de Administración de Operaciones. La estrategia que se muestra aquí resulta especialmente útil al empaquetar múltiples recursos, incluyendo imágenes, sonidos y más, para una distribución más eficiente. En este artículo exploramos cómo se implementan estas características para ofrecer una interfaz moderna y visualmente atractiva para nuestro New_Admin_Panel EA.
preview
Desarrollamos un asesor experto multidivisas (Parte 27): Componente para mostrar textos de varias líneas

Desarrollamos un asesor experto multidivisas (Parte 27): Componente para mostrar textos de varias líneas

Si es necesario mostrar información textual en un gráfico, podemos utilizar la función Comment(), pero sus capacidades son bastante limitadas. Por ello, en este artículo, crearemos nuestro propio componente: un cuadro de diálogo de pantalla completa capaz de mostrar texto de varias líneas con configuraciones de fuente flexibles y soporte de desplazamiento.
preview
Reimaginando las estrategias clásicas (Parte 14): Configuraciones de alta probabilidad

Reimaginando las estrategias clásicas (Parte 14): Configuraciones de alta probabilidad

Las configuraciones de alta probabilidad son bien conocidas en nuestra comunidad de trading, pero lamentablemente no están bien definidas. En este artículo, nuestro objetivo será encontrar una forma empírica y algorítmica de definir con precisión qué constituye una configuración de alta probabilidad, identificándolas y explotándolas. Mediante el uso de árboles de potenciación de gradiente, demostramos cómo el lector puede mejorar el rendimiento de una estrategia de negociación arbitraria y comunicar mejor la tarea exacta que debe realizarse a nuestro ordenador de una manera más significativa y explícita.
preview
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 20): Flujo externo (IV) — Correlation Pathfinder

Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 20): Flujo externo (IV) — Correlation Pathfinder

Correlation Pathfinder ofrece un nuevo enfoque para comprender la dinámica de los pares de divisas, como parte de la serie de desarrollo de herramientas de análisis de la acción del precio. Esta herramienta automatiza la recopilación y el análisis de datos, lo que permite comprender cómo interactúan pares como el EUR/USD y el GBP/USD. Mejora tu estrategia de trading con información práctica y en tiempo real que te ayudará a gestionar el riesgo y a detectar oportunidades de forma más eficaz.
preview
Ingeniería de características con Python y MQL5 (Parte IV): Reconocimiento de patrones de velas japonesas mediante regresión con UMAP

Ingeniería de características con Python y MQL5 (Parte IV): Reconocimiento de patrones de velas japonesas mediante regresión con UMAP

Las técnicas de reducción de dimensiones se utilizan ampliamente para mejorar el rendimiento de los modelos de aprendizaje automático. Analicemos una técnica relativamente nueva conocida como Aproximación y Proyección de Variedades Uniformes (Uniform Manifold Approximation and Projection, UMAP). Esta nueva técnica se ha desarrollado con el objetivo expreso de superar las limitaciones de los métodos tradicionales, que generan artefactos y distorsiones en los datos. UMAP es una potente técnica de reducción de dimensionalidad que nos ayuda a agrupar velas japonesas similares de una manera novedosa y eficaz, lo que reduce el error en datos fuera de muestra y mejora nuestro rendimiento de trading.
preview
Creación de un Panel de administración de operaciones en MQL5 (Parte IX): Organización del código (V): Clase AnalyticsPanel

Creación de un Panel de administración de operaciones en MQL5 (Parte IX): Organización del código (V): Clase AnalyticsPanel

En este análisis veremos cómo obtener datos de mercado en tiempo real e información de la cuenta, calcular métricas y mostrar los datos en un panel personalizado. Para lograrlo, profundizaremos en el desarrollo de una clase AnalyticsPanel que englobe todas estas funcionalidades, incluida la creación de paneles. Este esfuerzo forma parte de nuestra continua expansión del Nuevo Panel de Administración EA, que introduce funcionalidades avanzadas utilizando principios de diseño modular y mejores prácticas para la organización del código.
preview
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 19): ZigZag Analyzer

Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 19): ZigZag Analyzer

Todos los traders que se basan en el movimiento de los precios utilizan manualmente las líneas de tendencia para confirmar las tendencias e identificar posibles niveles de cambio de tendencia o de continuación. En esta serie dedicada a la creación de un conjunto de herramientas para el análisis de la acción del precio, presentamos una herramienta diseñada para trazar líneas de tendencia inclinadas que facilitan el análisis del mercado. Esta herramienta simplifica el proceso para los traders al destacar claramente las tendencias y los niveles clave que resultan esenciales para evaluar eficazmente la evolución de los precios.
preview
Dominando los registros (Parte 6): Guardando los registros en la base de datos

Dominando los registros (Parte 6): Guardando los registros en la base de datos

Este artículo explora el uso de bases de datos para almacenar registros de forma estructurada y escalable. Abarca conceptos fundamentales, operaciones esenciales, configuración e implementación de un controlador de base de datos en MQL5. Finalmente, valida los resultados y destaca los beneficios de este enfoque para la optimización y la monitorización eficiente.
preview
Creación de un Panel de administración de operaciones en MQL5 (Parte IX): Organización del código (IV): Clase sobre el Panel de gestión de operaciones

Creación de un Panel de administración de operaciones en MQL5 (Parte IX): Organización del código (IV): Clase sobre el Panel de gestión de operaciones

Esta discusión trata sobre el TradeManagementPanel actualizado en nuestro asesor experto New_Admin_Panel. La actualización mejora el panel mediante el uso de clases integradas para ofrecer una interfaz de gestión de operaciones fácil de usar. Incluye botones para abrir posiciones y controles para gestionar las operaciones existentes y las órdenes pendientes. Una característica clave es la gestión de riesgos integrada, que permite establecer los valores de stop loss y take profit directamente en la interfaz. Esta actualización mejora la organización del código para programas grandes y simplifica el acceso a las herramientas de gestión de pedidos, que a menudo son complejas en la terminal.
preview
Desarrollo de asesores expertos autooptimizables en MQL5 (Parte 6): Reglas de negociación autoadaptativas (II)

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

Este artículo analiza la optimización de los niveles y períodos del RSI para obtener mejores señales de trading. Presentamos métodos para estimar los valores óptimos del RSI y automatizar la selección de periodos mediante búsquedas por cuadrículas y modelos estadísticos. Por último, implementamos la solución en MQL5 mientras aprovechamos Python para el análisis. Nuestro enfoque pretende ser pragmático y directo para ayudarle a resolver problemas potencialmente complicados con sencillez.
preview
Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 18): Introducción a la teoría de los cuartos (III) — Quarters Board

Desarrollo de un kit de herramientas para el análisis de la acción del precio (Parte 18): Introducción a la teoría de los cuartos (III) — Quarters Board

En este artículo mejoramos el script Quarters original con la introducción del Quarters Board, una herramienta que te permite alternar los niveles de cuartos directamente en el gráfico sin necesidad de volver a revisar el código. Puede activar o desactivar fácilmente niveles específicos, y el EA también proporciona comentarios sobre la dirección de la tendencia para ayudarle a comprender mejor los movimientos del mercado.
preview
Creación de un Panel de administración de operaciones en MQL5 (Parte IX): Organización del código (III): Módulo de comunicación

Creación de un Panel de administración de operaciones en MQL5 (Parte IX): Organización del código (III): Módulo de comunicación

Únase a nosotros para profundizar en los últimos avances en el diseño de la interfaz MQL5, mientras presentamos el panel de comunicaciones rediseñado y continuamos nuestra serie sobre la creación del nuevo Panel de administración utilizando los principios de la modularización. Desarrollaremos la clase CommunicationsDialog paso a paso, explicando detalladamente cómo heredarla de la clase Dialog. Además, aprovecharemos las matrices y la clase ListView en nuestro desarrollo. Obtenga información útil para mejorar sus habilidades de desarrollo en MQL5: ¡lea el artículo y participe en el debate en la sección de comentarios!
preview
El componente View para tablas en el paradigma MQL5 MVC: Contenedores

El componente View para tablas en el paradigma MQL5 MVC: Contenedores

En este artículo, hablaremos sobre cómo crear un control «Contenedor» que permita desplazarse por su contenido. Dentro del proceso, se mejorarán las clases ya implementadas de controles de la biblioteca gráfica.
preview
De novato a experto: Noticias animadas utilizando MQL5 (III) — Información sobre indicadores

De novato a experto: Noticias animadas utilizando MQL5 (III) — Información sobre indicadores

En este artículo, mejoraremos el EA News Headline introduciendo una línea dedicada a la información de los indicadores: una visualización compacta en el gráfico de las señales técnicas clave generadas a partir de indicadores populares como el RSI, el MACD, el estocástico y el CCI. Este enfoque elimina la necesidad de múltiples subventanas de indicadores en la terminal MetaTrader 5, lo que mantiene su espacio de trabajo limpio y eficiente. Al aprovechar la API MQL5 para acceder a los datos de los indicadores en segundo plano, podemos procesar y visualizar información del mercado en tiempo real utilizando una lógica personalizada. Únase a nosotros para explorar cómo manipular los datos de los indicadores en MQL5 para crear un sistema de información inteligente y que ahorra espacio, todo ello en una sola línea horizontal en su gráfico de operaciones.
preview
De novato a experto: Noticias animadas utilizando MQL5 (II)

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

Hoy damos un paso más adelante al integrar una API de noticias externa como fuente de titulares para nuestro EA News Headline. En esta fase, exploraremos diversas fuentes de noticias, tanto consolidadas como emergentes, y aprenderemos a acceder a sus API de forma eficaz. También abordaremos métodos para analizar los datos recuperados en un formato optimizado para su visualización en nuestro Asesor Experto. Únase al debate mientras exploramos las ventajas de acceder a los titulares de noticias y al calendario económico directamente en el gráfico, todo ello dentro de una interfaz compacta y no intrusiva.