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
Conexión del Asesor Experto con ICQ en MQL5
Conexión del Asesor Experto con ICQ en MQL5

Conexión del Asesor Experto con ICQ en MQL5

Este artículo describe el método de intercambio de información entre el Asesor Experto y usuarios de ICQ, y presenta varios ejemplos. El material facilitado resultará interesante para aquellos que deseen recibir información de trading remotamente de un terminal de cliente, a través de un ICQ client en su teléfono móvil o PDA.
Interfaces gráficas XI: Campos de edición y combobox en las celdas de la tabla (build 15)
Interfaces gráficas XI: Campos de edición y combobox en las celdas de la tabla (build 15)

Interfaces gráficas XI: Campos de edición y combobox en las celdas de la tabla (build 15)

En esta actualización de la librería, el control «Tabla» (clase CTable) será completado con nuevas opciones. Vamos a ampliar la gama de los controles en las celdas de la tabla, completándola esta vez con los campos de edición y los combobox. Como adición, a esta actualización ha sido añadida la posibilidad que permite al usuario de la aplicación MQL controlar los tamaños de la ventana durante su ejecución.
Diseñar e implementar nuevos widgets GUI basados en la clase CChartObject
Diseñar e implementar nuevos widgets GUI basados en la clase CChartObject

Diseñar e implementar nuevos widgets GUI basados en la clase CChartObject

Tras haber escrito antes un artículo sobre un Expert Advisor semiautomático con un interfaz GUI, me he dado cuenta de la conveniencia de mejorar el interfaz con algunas características nuevas para indicadores y Expert Advisors más complejos. Y después de familiarizarme con las clases de la librería estándar de MQL5, he implementado unos widgets nuevos. En este artículo se describe el proceso de diseño e implementación de nuevos widgets GUI de MQL5, que pueden utilizarse con indicadores y Expert Advisors. Los widgets descritos en este artículo son CChartObjectSpinner, CChartObjectProgressBar y CChartObjectEditTable.
preview
Redes neuronales: así de sencillo (Parte 9): Documentamos el trabajo realizado

Redes neuronales: así de sencillo (Parte 9): Documentamos el trabajo realizado

Ya hemos recorrido un largo camino y el código de nuestra biblioteca ha crecido de manera considerable. Resulta difícil monitorear todas las conexiones y dependencias. Y, obviamente, antes de proseguir con el desarrollo del proyecto, necesitaremos documentar el trabajo ya realizado y actualizar la documentación en cada paso posterior. Una documentación debidamente redactada nos ayudará a ver la integridad de nuestro trabajo.
preview
Algoritmo de recompra: un modelo matemático para aumentar la eficiencia

Algoritmo de recompra: un modelo matemático para aumentar la eficiencia

En este artículo, usaremos el algoritmo de recompra como guía en un mundo con una mayor comprensión de la efectividad de los sistemas comerciales y comenzaremos a trabajar en los principios generales para mejorar la eficiencia comercial usando las matemáticas y la lógica; también aplicaremos los métodos menos comunes para aumentar la eficiencia en el contexto del uso de cualquier sistema comercial.
preview
Desarrollo de un EA comercial desde cero (Parte 23): Un nuevo sistema de órdenes (VI)

Desarrollo de un EA comercial desde cero (Parte 23): Un nuevo sistema de órdenes (VI)

Haremos más fluido el sistema de ordenes. Aquí les mostraré cómo y dónde hacer cambios en el código para tener algo más fluido que nos permita modificar los límites de posición mucho más rápido.
preview
Cómo construir un EA que opere automáticamente (Parte 09): Automatización (I)

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

Aunque la creación de un Expert Advisor automático no es una tarea muy complicada, sin los conocimientos adecuados, se puede acabar cometiendo muchos errores. En este artículo, vamos a ver cómo construir el primer nivel de automatización, que es crear el disparador para activar breakeven y trailing stop.
preview
Desarrollando un EA comercial desde cero (Parte 10): Acceso a los indicadores personalizados

Desarrollando un EA comercial desde cero (Parte 10): Acceso a los indicadores personalizados

¿Cómo acceder a los indicadores personalizados directamente en el EA? A un EA comercial solo se le sacará partido realmente si se puede usar indicadores personalizados en él, de lo contrario, será solo un conjunto de códigos e instrucciones.
Interfaces gráficas XI: Refactorización del código de la librería (build 14.1)
Interfaces gráficas XI: Refactorización del código de la librería (build 14.1)

Interfaces gráficas XI: Refactorización del código de la librería (build 14.1)

A medida que la librería va creciendo, es necesario optimizar de nuevo su código para reducir su tamaño. La versión de la librería descrita en este artículo se ha hecho aún más orientada a objetos. Eso ha mejorado la facilidad de comprensión del código. La descripción detallada de los últimos cambios permitirá al lector desarrollar la librería por sí mismo, según las necesidades que tenga.
preview
Aprendiendo a diseñar un sistema de trading con MFI

Aprendiendo a diseñar un sistema de trading con MFI

Aquí tenemos un nuevo artículo de nuestra serie destinada a la creación de sistemas comerciales basados en indicadores técnicos populares. Esta vez está dedicado al índice de flujo de dinero (IMF). Estudiaremos este indicador con todo detalle y desarrollaremos sistemas comerciales MQL5 simples para su ejecución en MetaTrader 5.
preview
Arbitraje triangular con predicciones

Arbitraje triangular con predicciones

Este artículo simplifica el arbitraje triangular y le muestra cómo utilizar predicciones y software especializado para operar con divisas de forma más inteligente, incluso si es nuevo en el mercado. ¿Listo para operar con experiencia?
Resultados del Mercado MQL5 en el primer periodo de 2013
Resultados del Mercado MQL5 en el primer periodo de 2013

Resultados del Mercado MQL5 en el primer periodo de 2013

Desde el momento de su fundación el Mercado MQL5 (la tienda de robots comerciales e indicadores técnicos) ha atraido a sus filas a más de 250 investigadores y desarrolladores, que han publicado 580 productos. Los resultados del primer periodo de 2013 muestran que algunos vendedores tienen bastante éxito en el Mercado MQL5 y han obtenido con sus ventas un beneficio considerable.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte X): Compatibilidad con MQL4 - Eventos de apertura de posición y activación de órdenes pendientes
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte X): Compatibilidad con MQL4 - Eventos de apertura de posición y activación de órdenes pendientes

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte X): Compatibilidad con MQL4 - Eventos de apertura de posición y activación de órdenes pendientes

En artículos anteriores, comenzamos a crear una gran biblioteca multiplataforma, cuyo cometido es simplificar la escritura de programas para las plataformas MetaTrader 5 y MetaTrader 4. En la novena parte, comenzamos a completar las clases de la biblioteca para trabajar en MQL4. En el presente artículo, continuaremos desarrollando la biblioteca para hacerla totalmente compatible con MQL4.
MetaTrader AppStore Results for Q3 2013
MetaTrader AppStore Results for Q3 2013

MetaTrader AppStore Results for Q3 2013

Another quarter of the year has passed and we have decided to sum up its results for MetaTrader AppStore - the largest store of trading robots and technical indicators for MetaTrader platforms. More than 500 developers have placed over 1 200 products in the Market by the end of the reported quarter.
preview
Gradient boosting (CatBoost) en las tareas de construcción de sistemas comerciales. Un enfoque ingenuo

Gradient boosting (CatBoost) en las tareas de construcción de sistemas comerciales. Un enfoque ingenuo

Entrenamiento del clasificador CatBoost en el lenguaje Python, exportación al formato mql5; análisis de los parámetros del modelo y simulador de estrategias personalizado. Para preparar los datos y entrenar el modelo, se usan el lenguaje de programación Python y la biblioteca MetaTrader5.
preview
Aprendizaje automático y Data Science (Parte 23): ¿Por qué LightGBM y XGBoost superan a muchos modelos de IA?

Aprendizaje automático y Data Science (Parte 23): ¿Por qué LightGBM y XGBoost superan a muchos modelos de IA?

Estas técnicas avanzadas de árboles de decisión potenciados por gradiente ofrecen un rendimiento y una flexibilidad superiores, lo que las hace ideales para el modelado financiero y el comercio algorítmico. Aprenda a aprovechar estas herramientas para optimizar sus estrategias comerciales, mejorar la precisión predictiva y obtener una ventaja competitiva en los mercados financieros.
Ampliamos la funcionalidad del Constructor de estrategias
Ampliamos la funcionalidad del Constructor de estrategias

Ampliamos la funcionalidad del Constructor de estrategias

En dos artículos anteriores, analizamos el uso de las figuras técnicas de Merrill aplicándolas a diferentes tipos de datos. Fue desarrollada una aplicación para la simulación a base de esta idea. En este artículo, continuaremos nuestro trabajo con el Constructor de estrategias, mejoraremos su funcionamiento, lo haremos más cómodo, así como ampliaremos su funcionalidad y capacidades.
Algoritmo de autoadaptación (Parte III): Renunciando a la optimización
Algoritmo de autoadaptación (Parte III): Renunciando a la optimización

Algoritmo de autoadaptación (Parte III): Renunciando a la optimización

No podemos obtener un algoritmo verdaderamente estable si para seleccionar los parámetros utilizamos la optimización basada en datos históricos. Un algoritmo estable en sí mismo debe saber qué parámetros se necesitan para trabajar con cualquier instrumento comercial en cualquier momento. El algoritmo no debe suponer ni adivinar: debe saber con certeza.
preview
Combinatoria y teoría de la probabilidad en el trading (Parte V): Análisis de curvas

Combinatoria y teoría de la probabilidad en el trading (Parte V): Análisis de curvas

En este artículo, hemos decidido investigar un poco sobre la conversión de varios estados en estados dobles. El objetivo principal es el propio análisis y las conclusiones útiles que extraigamos, que nos pueden ayudar en el desarrollo posterior de algoritmos comerciales escalables basados ​​en la teoría de la probabilidad. Obviamente, no hemos podido evitar el uso de matemáticas, pero, teniendo en cuenta la experiencia de artículos anteriores, hemos observado que la información general resulta mucho más útil que los detalles en sí.
preview
Creación de una interfaz gráfica de usuario interactiva en MQL5 (Parte 1): Creación del panel

Creación de una interfaz gráfica de usuario interactiva en MQL5 (Parte 1): Creación del panel

Este artículo explora los pasos fundamentales en la elaboración e implementación de un panel de Interfaz Gráfica de Usuario (GUI) utilizando MetaQuotes Language 5 (MQL5). Los paneles de utilidades personalizados mejoran la interacción del usuario en la negociación simplificando las tareas habituales y visualizando la información esencial de la negociación. Al crear paneles personalizados, los operadores pueden agilizar su flujo de trabajo y ahorrar tiempo durante las operaciones.
Cómo ser un mejor programador (parte 02): 5 cosas que evitar para convertirse en un programador exitoso de MQL5
Cómo ser un mejor programador (parte 02): 5 cosas que evitar para convertirse en un programador exitoso de MQL5

Cómo ser un mejor programador (parte 02): 5 cosas que evitar para convertirse en un programador exitoso de MQL5

Este es un artículo de lectura obligada para cualquiera que desee mejorar su carrera como programador. Esta serie de artículos tiene como objetivo convertirlo a usted en el mejor programador posible, sin importar la experiencia que tenga. Las ideas analizadas funcionan tanto para principiantes como para profesionales de la programación en MQL5.
preview
Valoración visual de los resultados de optimización

Valoración visual de los resultados de optimización

La conversación en este artículo se centrará en cómo crear gráficos para todas las pasadas de optimización y elegir el criterio personalizado óptimo. Y también sobre cómo, teniendo un conocimiento mínimo de MQL5 y un gran ánimo de trabajar, usando los artículos del sitio y los comentarios en el foro, podremos escribir lo que queramos.
preview
Estrategia de Bill Williams con y sin otros indicadores y predicciones

Estrategia de Bill Williams con y sin otros indicadores y predicciones

En este artículo, analizaremos una de las famosas estrategias de Bill Williams, la analizaremos e intentaremos mejorarla con otros indicadores y predicciones.
preview
Algoritmos de optimización de la población: Algoritmo de luciérnagas (Firefly Algorithm - FA)

Algoritmos de optimización de la población: Algoritmo de luciérnagas (Firefly Algorithm - FA)

Hoy analizaremos el método de optimización «Búsqueda con ayuda del algoritmo de luciérnagas» 'Firefly Algorithm Search' (FA). Tras modificar el algoritmo, este ha pasado de ocupar un lugar marginal a convertirse en un verdadero líder en la tabla de calificación.
Ventajas de las señales MQL5
Ventajas de las señales MQL5

Ventajas de las señales MQL5

El servicio "señales comerciales", aparecido hace poco en MetaTrader 5, permite a los traders copiar las operaciones comerciales de cualquier suministrador de señales. El usuario elige una señal que le interese, se suscribe a ella, y todas las operaciones se repetirán entonces en su cuenta. El suministrador no jugará con desventaja, ya que puede establecer el precio que quiera por la suscripción, recibiendo, así, una cantidad fijada por parte de cada cliente.
preview
Remuestreo avanzado y selección de modelos CatBoost con el método de fuerza bruta

Remuestreo avanzado y selección de modelos CatBoost con el método de fuerza bruta

Este artículo describe uno de los posibles enfoques respecto a la transformación de datos para mejorar las capacidades generalizadoras del modelo, y también analiza la iteración sobre los modelos CatBoost y la elección del mejor de ellos.
preview
Indicadores multiples en un gráfico (Parte 03):  Desarrollo de definiciones para los usuarios

Indicadores multiples en un gráfico (Parte 03): Desarrollo de definiciones para los usuarios

Es la primera vez que se actualiza la funcionalidad del sistema de indicadores. En el artículo anterior Múltiples indicadores en un gráfico expliqué el código base para poder utilizar más de un indicador dentro de una subventana, pero lo que se presentó era sólo la base inicial de un sistema mucho mayor.
Otras clases en la biblioteca DoEasy (Parte 68): Clase de objeto de ventana de gráfico y clases de objetos de indicador en la ventana del gráfico
Otras clases en la biblioteca DoEasy (Parte 68): Clase de objeto de ventana de gráfico y clases de objetos de indicador en la ventana del gráfico

Otras clases en la biblioteca DoEasy (Parte 68): Clase de objeto de ventana de gráfico y clases de objetos de indicador en la ventana del gráfico

En este artículo, seguiremos desarrollando la clase de objeto de gráfico. Para ello, le añadiremos una lista de objetos de ventana de gráfico, en la que, a su vez, estarán disponibles las listas de indicadores colocados en ellos.
preview
Aprendizaje de máquinas en sistemas comerciales con cuadrícula y martingale. ¿Apostaría por ello?

Aprendizaje de máquinas en sistemas comerciales con cuadrícula y martingale. ¿Apostaría por ello?

En este artículo, presentaremos al lector la técnica del aprendizaje automático para el comercio con martingale y cuadrícula. Para nuestra sorpresa, este enfoque, por algún motivo, no se ha tratado en absoluto en la red global. Después de leer el artículo, podremos crear nuestros propios bots.
preview
Aprendizaje automático y Data Science (Parte 11): Clasificador bayesiano ingenuo y teoría de la probabilidad en el trading

Aprendizaje automático y Data Science (Parte 11): Clasificador bayesiano ingenuo y teoría de la probabilidad en el trading

Comerciar con probabilidades es como caminar por la cuerda floja: requiere precisión, equilibrio y una clara comprensión del riesgo. En el mundo del trading, la probabilidad lo es todo: es lo que determina el resultado, el éxito o el fracaso, los beneficios o las pérdidas. Usando el poder de la probabilidad, los tráders pueden tomar decisiones mejor informadas, gestionar el riesgo con mayor eficacia y alcanzar sus objetivos financieros. Tanto si es usted un inversor experimentado como un tráder principiante, comprender las probabilidades puede ser la clave para liberar su potencial comercial. En este artículo, analizaremos el fascinante mundo del trading probabilístico y le mostraremos cómo llevar su modo de comerciar al siguiente nivel.
¿Necesitan los traders los servicios de los desarrolladores?
¿Necesitan los traders los servicios de los desarrolladores?

¿Necesitan los traders los servicios de los desarrolladores?

El trading algorítmico se hace más popular y solicitado lo que lógicamente ha comportado la aparición de la demanda de algoritmos exóticos y tareas originales. Una determinada parte de estas complejas aplicaciones está representada en Code Base o Market, y se puede obtenerlos con un par de clics pero no todo lo que tienen conviene a los traders. En este caso ellos empiezan a buscar a los desarrolladores capaces de escribir la aplicación necesaria, los encuentran en Freelance y encargan el trabajo.
preview
Desarrollando un EA comercial desde cero (Parte 07): Adición de el Volume At Price (I)

Desarrollando un EA comercial desde cero (Parte 07): Adición de el Volume At Price (I)

Este es uno de los indicadores más poderosos que existen. Para aquellos que operan y tratan de tener un cierto grado de asertividad, no pueden dejar de tener este indicador en su gráfico, aunque es más utilizado por aquellos que operan observando el flujo («tape reading») también puede ser utilizado por aquellos que utilizan sólo la acción del precio.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VII): Eventos de activación de órdenes StopLimit, preparación de la funcionalidad para los eventos de modificación de órdenes y posiciones
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VII): Eventos de activación de órdenes StopLimit, preparación de la funcionalidad para los eventos de modificación de órdenes y posiciones

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte VII): Eventos de activación de órdenes StopLimit, preparación de la funcionalidad para los eventos de modificación de órdenes y posiciones

En anteriores artículos comenzamos a crear una gran biblioteca multiplataforma cuyo objetivo es simplificar la creación de programas para las plataformas MetaTrader 5 y MetaTrader 4. En la sexta parte, enseñamos a la biblioteca a trabajar con posiciones en las cuentas de compensación. En esta parte, implementaremos el seguimiento de los eventos de activación de órdenes StopLimit y prepararemos la funcionalidad necesaria para monitorear la modificación de órdenes y posiciones.
preview
Trabajamos con matrices y vectores en MQL5

Trabajamos con matrices y vectores en MQL5

Para resolver problemas matemáticos, se han añadido a MQL5 matrices y vectores. Los nuevos tipos tienen métodos incorporados para escribir un código conciso y fácilmente comprensible que se acerque a una notación matemática. Los arrays son algo bueno, pero las matrices, en muchos casos, resultan mejores.
preview
Creamos un asesor multidivisa sencillo utilizando MQL5 (Parte 7): Señales de los indicadores ZigZag y Awesome Oscillator

Creamos un asesor multidivisa sencillo utilizando MQL5 (Parte 7): Señales de los indicadores ZigZag y Awesome Oscillator

En este artículo, entenderemos por EA multidivisa un EA o robot comercial que utiliza indicadores ZigZag y Awesome Oscillator que filtran mutuamente sus señales.
preview
Desarrollo de un robot en Python y MQL5 (Parte 1): Preprocesamiento de datos

Desarrollo de un robot en Python y MQL5 (Parte 1): Preprocesamiento de datos

Desarrollar un robot de trading basado en aprendizaje automático: Una guía detallada. El primer artículo de la serie trata de la recogida y preparación de datos y características. El proyecto se ejecuta utilizando el lenguaje de programación y las librerías Python, así como la plataforma MetaTrader 5.
preview
Algoritmos de optimización de la población: Método de Nelder-Mead

Algoritmos de optimización de la población: Método de Nelder-Mead

En el artículo de hoy, le presentamos un estudio completo del método de Nelder-Mead, en el que se explica cómo el símplex (el espacio de parámetros de la función) se modifica y reordena en cada iteración para alcanzar la solución óptima; asimismo, describiremos una forma de mejorar este método.
preview
Algoritmos de optimización de la población: Optimización de colonias de hormigas (ACO)

Algoritmos de optimización de la población: Optimización de colonias de hormigas (ACO)

En esta ocasión, analizaremos el algoritmo de optimización de colonias de hormigas (ACO). El algoritmo es bastante interesante y ambiguo al mismo tiempo. Intentaremos crear un nuevo tipo de ACO.
preview
Creación de un asesor experto integrado de MQL5 y Telegram (Parte 1): Envío de mensajes desde MQL5 a Telegram

Creación de un asesor experto integrado de MQL5 y Telegram (Parte 1): Envío de mensajes desde MQL5 a Telegram

En este artículo, creamos un Asesor Experto (EA) en MQL5 para enviar mensajes a Telegram usando un bot. Configuramos los parámetros necesarios, incluido el token de API del bot y el ID de chat, y luego realizamos una solicitud HTTP POST para entregar los mensajes. Posteriormente, gestionamos la respuesta para garantizar una entrega exitosa y solucionar cualquier problema que surja en caso de falla. Esto garantiza que enviemos mensajes desde MQL5 a Telegram a través del bot creado.
Gráficos en la biblioteca DoEasy (Parte 77): Clase de objeto Sombra
Gráficos en la biblioteca DoEasy (Parte 77): Clase de objeto Sombra

Gráficos en la biblioteca DoEasy (Parte 77): Clase de objeto Sombra

En el presente artículo, vamos a crear la clase para el objeto de sombra, que es heredero del objeto de elemento gráfico. Asimismo, añadiremos la posibilidad de rellenar el fondo del objeto con relleno en gradiente.