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
Aprendiendo a diseñar un sistema comercial basado en Parabolic SAR

Aprendiendo a diseñar un sistema comercial basado en Parabolic SAR

Esta es la continuación de una serie de artículos en los que aprendemos cómo crear sistemas comerciales usando los indicadores más populares. En el presente artículo, analizaremos el indicador Parabolic SAR. También desarrollaremos un sistema comercial para la plataforma MetaTrader 5 usando algunas estrategias simples.
preview
Desarrollando un canal de Donchian personalizado con la ayuda de MQL5

Desarrollando un canal de Donchian personalizado con la ayuda de MQL5

Existen muchas herramientas técnicas que se pueden usar para visualizar los canales de precios. Una de esas herramientas es el canal de Donchian. En este artículo, aprenderemos cómo crear un canal de Donchian, y también a usarlo como indicador personalizado dentro de un asesor experto.
preview
Múltiples indicadores en un gráfico (Parte 02): primeros experimentos

Múltiples indicadores en un gráfico (Parte 02): primeros experimentos

En el artículo anterior, múltiples indicadores en un gráfico, presenté los conceptos y fundamentos para que podamos utilizar múltiples indicadores en un gráfico. Aquí presentaré y desglosaré el código fuente.
preview
Trading de cuadrícula automatizado utilizando órdenes límite en la Bolsa de Moscú MOEX

Trading de cuadrícula automatizado utilizando órdenes límite en la Bolsa de Moscú MOEX

Hoy vamos a desarrollar un asesor comercial en el lenguaje de estrategias comerciales MQL5 para MetaTrader 5 de la Bolsa de Moscú MOEX. El asesor comerciará con una estrategia de cuadrícula en el terminal MetaTrader 5 en los mercados de la Bolsa de Moscú MOEX; también incluirá el cierre de posiciones usando stop loss o take profit, y eliminará las órdenes pendientes al suceder ciertas condiciones del mercado.
preview
Algoritmos de optimización de la población: Búsqueda armónica (HS)

Algoritmos de optimización de la población: Búsqueda armónica (HS)

Hoy estudiaremos y pondremos a prueba un algoritmo de optimización muy potente, la búsqueda armónica (HS), que se inspira en el proceso de búsqueda de la armonía sonora perfecta. ¿Qué algoritmo lidera ahora mismo nuestra clasificación?
preview
Aprendiendo a diseñar un sistema de trading basado en el Índice de Facilitación del Mercado MFI de Bill Williams

Aprendiendo a diseñar un sistema de trading basado en el Índice de Facilitación del Mercado MFI de Bill Williams

Bienvenidos a nuevo artículo de nuestra serie dedicada a la creación de sistemas comerciales basados en indicadores técnicos populares. Hoy analizaremos el Índice de Facilitación del Mercado (MFI), desarrollado por Bill Williams.
preview
Implementación de Deus EA: Trading automatizado con RSI y promedios móviles en MQL5

Implementación de Deus EA: Trading automatizado con RSI y promedios móviles en MQL5

Este artículo describe los pasos para implementar Deus EA basado en los indicadores RSI y promedio móvil para guiar el trading automatizado.
Plantilla para proyectar el MVC y posibilidades de uso
Plantilla para proyectar el MVC y posibilidades de uso

Plantilla para proyectar el MVC y posibilidades de uso

En el artículo, analizaremos una plantilla de MVC bastante extendida. Asimismo, estudiaremos sus posibilidades y las ventajas y desventajas de su uso en los programas MQL. Su esencia consiste en "dividir" el código existente en tres componentes separados: Modelo (Model), Vista (View) y Controlador (Controller).
Aprendiendo a diseñar un sistema comercial basado en CCI
Aprendiendo a diseñar un sistema comercial basado en CCI

Aprendiendo a diseñar un sistema comercial basado en CCI

En este nuevo artículo de nuestra serie sobre el diseño de sistemas comerciales, hablaremos del Índice del Canal de Mercaderías (CCI), estudiaremos sus entresijos y crearemos juntos un sistema comercial basado en este indicador.
Gráfico informativo "Qué supone MetaTrader Market"
Gráfico informativo "Qué supone MetaTrader Market"

Gráfico informativo "Qué supone MetaTrader Market"

Hace unas semanas se publicó el gráfico informativo sobre el servicio "Freelance", a modo de informe. Entonces les prometimos que muy pronto descubriríamos también las cifras sobre el Mercado. Así que ahora le proponemos familiarizarse con los datos que hemos reunido.
preview
Esperanza moral en el trading

Esperanza moral en el trading

Este artículo trata sobre la esperanza moral. Veremos varios ejemplos de su uso en el trading y qué resultados se pueden lograr con su ayuda.
preview
Tutorial de DirectX (Parte I): Dibujamos el primer triángulo

Tutorial de DirectX (Parte I): Dibujamos el primer triángulo

Este es un artículo introductorio sobre DirectX; en él describiremos las peculiaridades del trabajo con la API, ayudando al lector a comprender el orden de inicialización de sus componentes. Asimismo, ofreceremos un ejemplo sobre cómo escribir un script MQL que muestre un triángulo usando DirectX.
preview
Creamos un asesor multidivisa sencillo utilizando MQL5 (Parte 5): Bandas de Bollinger en el Canal de Keltner - Señales de Indicador

Creamos un asesor multidivisa sencillo utilizando MQL5 (Parte 5): Bandas de Bollinger en el Canal de Keltner - Señales de Indicador

En este artículo, entenderemos por asesor multidivisa un asesor o robot comercial que puede comerciar (abrir/cerrar órdenes, gestionar órdenes, por ejemplo, trailing-stop y trailing-profit, etc.) con más de un par de símbolos de un gráfico. En este artículo, usaremos las señales de dos indicadores, las Bandas de Bollinger® y el Canal de Keltner.
preview
Desarrollamos un Asesor Experto multidivisas (Parte 1): Funcionamiento conjunto de varias estrategias comerciales

Desarrollamos un Asesor Experto multidivisas (Parte 1): Funcionamiento conjunto de varias estrategias comerciales

Existen bastantes estrategias comerciales distintas. Para diversificar los riesgos y aumentar la estabilidad de los resultados comerciales, puede resultar útil utilizar varias estrategias que funcionen en paralelo. Pero si cada estrategia se implementa como un asesor independiente, se hace mucho más difícil gestionar su trabajo conjunto en una cuenta comercial. Para resolver este problema, es deseable implementar el funcionamiento de diferentes estrategias de negociación en un asesor.
preview
Experimentos con redes neuronales (Parte 2): Optimización inteligente de una red neuronal

Experimentos con redes neuronales (Parte 2): Optimización inteligente de una red neuronal

Las redes neuronales lo son todo. Vamos a comprobar en la práctica si esto es así. MetaTrader 5 como herramienta autosuficiente para el uso de redes neuronales en el trading. Una explicación sencilla.
preview
Algoritmos de optimización de la población: Algoritmo de recocido simulado (Simulated Annealing, SA). Parte I

Algoritmos de optimización de la población: Algoritmo de recocido simulado (Simulated Annealing, SA). Parte I

El algoritmo de recocido simulado es una metaheurística inspirada en el proceso de recocido de los metales. En nuestro artículo, realizaremos un análisis exhaustivo del algoritmo y mostraremos cómo muchas percepciones comunes y mitos que rodean a este método de optimización (el más popular y conocido) pueden ser incorrectos e incompletos. Anuncio de la segunda parte del artículo: "¡Conozca el algoritmo de recocido Isotrópico Simulado (Simulated Isotropic Annealing, SIA) del propio autor!"
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte V): Clases y colección de eventos comerciales, envío de eventos al programa
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte V): Clases y colección de eventos comerciales, envío de eventos al programa

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte V): Clases y colección de eventos comerciales, envío de eventos al programa

En anteriores artículos comenzamos a crear una gran biblioteca multiplataforma cuyo objetivo es simplificar la escritura de programas para las plataformas MetaTrader 5 y MetaTrader 4. En la cuarta parte, hemos puesto a prueba el seguimiento de eventos comerciales en la cuenta. En esta parte, vamos a crear las clases de los eventos comerciales y a colocarlas en la colección de eventos desde la que serán enviadas al objeto básico de la biblioteca Engine y al gráfico del programa de control.
preview
Creación simple de indicadores complejos usando objetos

Creación simple de indicadores complejos usando objetos

El artículo presenta un método para crear indicadores complejos que nos evitará problemas al trabajar con múltiples gráficos y búferes, así como al combinar datos de varias fuentes.
preview
Uso de modelos ONNX en MQL5

Uso de modelos ONNX en MQL5

ONNX (Open Neural Network Exchange) es un estándar abierto para representar modelos de redes neuronales. En este artículo, analizaremos el proceso de creación de un modelo CNN-LSTM para pronosticar series temporales financieras, y también el uso del modelo ONNX creado en un asesor experto MQL5.
preview
El modelo de movimiento de precios y sus principales disposiciones (Parte 3): Cálculo de parámetros óptimos en el juego bursátil

El modelo de movimiento de precios y sus principales disposiciones (Parte 3): Cálculo de parámetros óptimos en el juego bursátil

En el marco del presente enfoque de ingeniería desarrollado por el autor, basado en la teoría de la probabilidad, se encuentran las condiciones para abrir una posición rentable, y también se calculan los valores óptimos (que maximizan las ganancias) para el stop loss y el take profit.
preview
Ejemplo de optimización estocástica y control óptimo

Ejemplo de optimización estocástica y control óptimo

Este Asesor Experto, llamado SMOC, que significa Stochastic Model Optimal Control (Modelo Estocástico de Control Óptimo), es un ejemplo sencillo de un avanzado sistema algorítmico de trading para MetaTrader 5. Utiliza una combinación de indicadores técnicos, control predictivo de modelos y gestión dinámica de riesgos para tomar decisiones comerciales. El EA incorpora parámetros adaptativos, dimensionamiento de posiciones basado en la volatilidad y análisis de tendencias para optimizar su rendimiento en diferentes condiciones de mercado.
preview
Aprendiendo a diseñar un sistema de trading con Accelerator Oscillator

Aprendiendo a diseñar un sistema de trading con Accelerator Oscillator

Aquí tenemos un nuevo artículo de nuestra serie dedicada a la creación de sistemas comerciales basados en indicadores técnicos populares. Esta vez analizaremos el indicador Accelerator Oscillator: aprenderemos a utilizarlo y a crear sistemas comerciales basados en él.
Trabajando con las series temporales en la biblioteca DoEasy (Parte 47): Indicadores estándar de periodo y símbolo múltiples
Trabajando con las series temporales en la biblioteca DoEasy (Parte 47): Indicadores estándar de periodo y símbolo múltiples

Trabajando con las series temporales en la biblioteca DoEasy (Parte 47): Indicadores estándar de periodo y símbolo múltiples

En el presente artículo, comenzaremos a desarrollar los métodos de trabajo con los indicadores estándar, lo cual nos permitirá crear indicadores estándar de periodo y símbolo múltiples basados en las clases de la bibliotecas. Asimismo, añadiremos a las clases de las series temporales el evento "Barras Omitidas" y aligeraremos el código del programa principal, trasladando las funciones de preparación de la biblioteca de dicho programa a la clase CEngine.
Indicador técnico de preparación propia
Indicador técnico de preparación propia

Indicador técnico de preparación propia

En este artículo, analizaremos algunos algoritmos que nos permitirán crear nuestro propio indicador técnico. Asimismo, veremos cómo, con unos supuestos iniciales muy sencillos, podremos obtener resultados bastante complejos e interesantes.
preview
Creación de un asesor experto integrado de MQL5 y Telegram (Parte 3): Envío de señales de MQL5 a Telegram

Creación de un asesor experto integrado de MQL5 y Telegram (Parte 3): Envío de señales de MQL5 a Telegram

En este artículo, creamos un Asesor Experto MQL5 que codifica capturas de pantalla de gráficos como datos de imagen y las envía a un chat de Telegram a través de peticiones HTTP. Al integrar la codificación y transmisión de fotos, mejoramos el sistema existente MQL5-Telegram con perspectivas visuales de trading directamente dentro de Telegram.
Aserciones en los programas MQL5
Aserciones en los programas MQL5

Aserciones en los programas MQL5

Este artículo explica cómo utilizar aserciones en el lenguaje MQL5. Proporciona dos mecanismos de aserción a modo de ejemplo, así como una guía para implementarlas correctamente.
preview
Reimaginando estrategias clásicas en Python: Cruce de medias móviles (MAs, Moving Averages)

Reimaginando estrategias clásicas en Python: Cruce de medias móviles (MAs, Moving Averages)

En este artículo, revisamos la estrategia clásica de cruce de medias móviles para evaluar su eficacia actual. Dado el tiempo transcurrido desde su creación, exploramos las posibles mejoras que la IA puede aportar a esta estrategia de negociación tradicional. Mediante la incorporación de técnicas de IA, pretendemos aprovechar las capacidades predictivas avanzadas para optimizar potencialmente los puntos de entrada y salida de las operaciones, adaptarnos a las condiciones variables del mercado y mejorar el rendimiento global en comparación con los enfoques convencionales.
preview
Optimización automatizada de parámetros para estrategias de negociación con Python y MQL5

Optimización automatizada de parámetros para estrategias de negociación con Python y MQL5

Existen varios tipos de algoritmos para la autooptimización de estrategias y parámetros de negociación. Estos algoritmos se utilizan para mejorar automáticamente las estrategias de negociación basándose en datos históricos y actuales del mercado. En este artículo veremos uno de ellos con ejemplos en Python y MQL5.
preview
Aprendiendo a diseñar un sistema de trading con Bulls Power

Aprendiendo a diseñar un sistema de trading con Bulls Power

Bienvenidos a un nuevo artículo de la serie dedicada a la creación de sistemas comerciales basados en indicadores técnicos populares. En esta ocasión, hablaremos sobre el índice de fuerza alcista Bulls Power y crearemos un sistema comercial basado en sus indicadores.
preview
Trabajando con las series temporales en la biblioteca DoEasy (Parte 51): Indicadores estándar compuestos de período y símbolo múltiples

Trabajando con las series temporales en la biblioteca DoEasy (Parte 51): Indicadores estándar compuestos de período y símbolo múltiples

En este artículo, vamos a finalizar el desarrollo de indicadores estándar de período y símbolo múltiples. A base del indicador Ichimoku Kinko Hyo, vamos a analizar la creación de los indicadores personalizados de composición compleja que disponen de los búferes dibujados auxiliares para la visualización de los datos en el gráfico.
Gráficos en la biblioteca DoEasy (Parte 83): Clase de objeto gráfico abstracto estándar
Gráficos en la biblioteca DoEasy (Parte 83): Clase de objeto gráfico abstracto estándar

Gráficos en la biblioteca DoEasy (Parte 83): Clase de objeto gráfico abstracto estándar

En el presente artículo, crearemos la clase de objeto gráfico abstracto. Este objeto constituirá la base para crear las clases de objetos gráficos estándar. Los objetos gráficos tienen muchas propiedades y hoy, antes de crear una clase de objeto gráfico abstracto, necesitaremos hacer mucho trabajo preparatorio: registrar estas propiedades en las enumeraciones de la biblioteca.
preview
Lenguaje de programación visual Drakon: una herramienta de comunicación para desarrolladores y clientes MQL

Lenguaje de programación visual Drakon: una herramienta de comunicación para desarrolladores y clientes MQL

DRAKON es un lenguaje de programación visual especialmente diseñado para simplificar la interacción entre especialistas de distintas ramas (biólogos, físicos, ingenieros...) y programadores en proyectos espaciales rusos (por ejemplo, al crear el complejo "Burán"). En este artículo, hablaremos sobre cómo DRAKON hace que la creación de algoritmos sea accesible e intuitiva, incluso si nunca nos hemos enfrentado al código. Asimismo, también veremos cómo el lenguaje DRAKON ayuda tanto al cliente a explicar sus pensamientos al encargar robots comerciales, como al programador a cometer menos errores en funciones complejas.
preview
Redes neuronales: así de sencillo (Parte 27): Aprendizaje Q profundo (DQN)

Redes neuronales: así de sencillo (Parte 27): Aprendizaje Q profundo (DQN)

Seguimos explorando el aprendizaje por refuerzo. En este artículo, hablaremos del método de aprendizaje Q profundo o deep Q-learning. El uso de este método permitió al equipo de DeepMind crear un modelo capaz de superar a los humanos jugando a los videojuegos de ordenador de Atari. Nos parece útil evaluar el potencial de esta tecnología para las tareas comerciales.
preview
Comprensión y uso eficaz del simulador de estrategias MQL5

Comprensión y uso eficaz del simulador de estrategias MQL5

Para los desarrolladores de MQL5 resulta imperativo dominar herramientas importantes y valiosas. Una de esas herramientas es el simulador de estrategias. El presente artículo es una guía práctica para utilizar el simulador de estrategias MQL5.
preview
Redes neuronales: así de sencillo (Parte 82): Modelos de ecuaciones diferenciales ordinarias (NeuralODE)

Redes neuronales: así de sencillo (Parte 82): Modelos de ecuaciones diferenciales ordinarias (NeuralODE)

En este artículo, hablaremos de otro tipo de modelos que están destinados a estudiar la dinámica del estado ambiental.
preview
Recetas MQL5 - Servicios

Recetas MQL5 - Servicios

Este artículo describe las capacidades versátiles de los servicios, como los programas MQL5 que no requieren un gráfico vinculante. Asimismo, se detallan las diferencias de los servicios respecto a otros programas MQL5, enfatizando los matices del trabajo del desarrollador con los servicios. Como ejemplos, el lector podrá estudiar varias tareas que abarcan una amplia gama de funcionalidades que pueden implementarse como un servicio.
preview
Desarrollando un EA de trading desde cero (Parte 16): Acceso a los datos en la Web (II)

Desarrollando un EA de trading desde cero (Parte 16): Acceso a los datos en la Web (II)

Saber cómo introducir los datos de la Web en un EA no es tan obvio, o mejor dicho, no es tan simple que puede hacerse sin conocer y entender realmente todas las características que están presentes en MetaTrader 5.
preview
DoEasy. Elementos de control (Parte 1): Primeros pasos

DoEasy. Elementos de control (Parte 1): Primeros pasos

Con este artículo, iniciamos un extenso tutorial sobre la creación de controles al estilo de Windows Forms en MQL5. Vamos a empezar el tema creando una clase de panel. Ya se está haciendo difícil manejar las cosas sin controles. Por consiguiente, crearemos todos los controles posibles al estilo de Windows Forms.
preview
La magia de los intervalos comerciales de tiempo con Frames Analyzer

La magia de los intervalos comerciales de tiempo con Frames Analyzer

¿Qué es Frames Analyzer? Se trata de un complemento para que cualquier experto comercial analice marcos de optimización durante la optimización de parámetros en el simulador de estrategias, así como fuera del simulador mediante la lectura de un archivo MQD o una base de datos creada inmediatamente después de la optimización de parámetros. El usuario podrá compartir estos resultados de optimización con otros tráders que tengan la herramienta Frames Analyzer para analizarlos juntos.
preview
Cómo construir un EA que opere automáticamente (Parte 15): Automatización (VII)

Cómo construir un EA que opere automáticamente (Parte 15): Automatización (VII)

Para coronar esta secuencia sobre automatización vamos a complementar lo visto en el artículo anterior. Este muestra definitivamente cómo todo encajará, haciendo que el Asesor Experto funcione como un reloj.