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
Redes neuronales: así de sencillo (Parte 5): Cálculos multihilo en OpenCL

Redes neuronales: así de sencillo (Parte 5): Cálculos multihilo en OpenCL

Ya hemos analizado algunos tipos de implementación de redes neuronales. Podemos ver con facilidad que se repiten las mismas operaciones para cada neurona de la red. Y aquí sentimos el legítimo deseo de aprovechar las posibilidades que ofrece la computación multihilo de la tecnología moderna para acelerar el proceso de aprendizaje de una red neuronal. En el presente artículo, analizaremos una de las opciones para tal implementación.
preview
Aprendizaje automático y Data Science (Parte 07): Regresión polinomial

Aprendizaje automático y Data Science (Parte 07): Regresión polinomial

La regresión polinomial es un modelo flexible diseñado para resolver de forma eficiente problemas que un modelo de regresión lineal no puede gestionar. En este artículo, aprenderemos a crear modelos polinómicos en MQL5 y a sacar provecho de ellos.
preview
Desarrollo de un EA comercial desde cero (Parte 25): Dotando de robustez al sistema (II)

Desarrollo de un EA comercial desde cero (Parte 25): Dotando de robustez al sistema (II)

Aquí terminaremos de dar un empujón en el rendimiento del EA... así que prepárense para una larga lectura. Lo primero que haremos para que nuestro EA sea robusto es eliminar del código todo y absolutamente todo lo que no forme parte del sistema comercial.
preview
Introducción a MQL5 (Parte 5): Funciones de trabajo con arrays para principiantes

Introducción a MQL5 (Parte 5): Funciones de trabajo con arrays para principiantes

En el quinto artículo de nuestra serie, nos familiarizaremos con el mundo de los arrays en MQL5. Este artículo ha sido pensado para principiantes. En este artículo intentaremos repasar conceptos complejos de programación de manera simplificada para que el material resulte comprensible para todos. Asimismo, exploraremos conceptos básicos, discutiremos diferentes cuestiones y compartiremos conocimientos.
preview
Usando AutoIt con MQL5

Usando AutoIt con MQL5

Descripción breve. En este artículo, exploraremos la creación de scripts del terminal MetraTrader 5 integrando MQL5 con AutoIt. En el presente material, abarcaremos cómo automatizar varias tareas manipulando la interfaz de usuario de los terminales, y también presentaremos una clase que utiliza la biblioteca AutoItX.
preview
Creación de un modelo de restricción de tendencia de velas (Parte 1): Para EAs e Indicadores Técnicos

Creación de un modelo de restricción de tendencia de velas (Parte 1): Para EAs e Indicadores Técnicos

Este artículo está dirigido a principiantes y desarrolladores avanzados de MQL5. Proporciona un fragmento de código para definir y limitar los indicadores generadores de señales a tendencias en plazos superiores. De este modo, los operadores pueden mejorar sus estrategias incorporando una perspectiva de mercado más amplia, lo que da lugar a señales de negociación potencialmente más sólidas y fiables.
preview
Buscando patrones estacionales en el mercado de divisas con la ayuda del algoritmo CatBoost

Buscando patrones estacionales en el mercado de divisas con la ayuda del algoritmo CatBoost

En el presente artículo, mostramos la posibilidad de crear modelos de aprendizaje automático con filtros temporales y también descubrimos la efectividad de este enfoque. Ahora, podremos descartar el factor humano, diciéndole simplemente al modelo: "Quiero que comercies a una hora determinada de un día concreto de la semana". Así, podremos delegar en el algoritmo la búsqueda de patrones.
preview
Cómo construir un EA que opere automáticamente (Parte 08): OnTradeTransaction

Cómo construir un EA que opere automáticamente (Parte 08): OnTradeTransaction

En este artículo, te mostraré cómo puedes utilizar el sistema de manejo de eventos para poder procesar con más agilidad y de mejor manera las cuestiones relacionadas con el sistema de órdenes, para que el EA sea más rápido. Así, éste no tendrá que estar buscando información todo el tiempo.
Programamos los modos de funcionamiento del Asesor Experto usando la programación orientada a objetos
Programamos los modos de funcionamiento del Asesor Experto usando la programación orientada a objetos

Programamos los modos de funcionamiento del Asesor Experto usando la programación orientada a objetos

En este artículo se considera la idea de la programación multi-modo de los robots comerciales usando el lenguaje MQL5. Se utiliza el enfoque orientado a objetos para la implementación de cada uno de los modos. Se muestra el ejemplo de la jerarquía de las clases de régimen y el ejemplo de las clases para el testeo (prueba). Se supone que la programación multi-modo de los robots comerciales toma en consideración las particularidades de cada modo de trabajo del Asesor Experto MQL5. Para la identificación de los modos se crean las funciones y enumeraciones.
Creación de un sistema de trading automatizado
Creación de un sistema de trading automatizado

Creación de un sistema de trading automatizado

Debe admitir que resulta tentador convertirse en el afortunado dueño de un programa que le permite desarrollar un sistema de trading automatizado (STA) rentable en pocos minutos. Sólo tiene que introducir las entradas adecuadas y pulsar "Enter". Y aquí lo tiene, su STA probado y con una previsión de beneficio positiva. Pero al ver a miles de personas dedicando miles de horas en el desarrollo de este singular STA, que será como "coser y cantar", mis afirmaciones le resultarían, por decirlo suavemente, poco convincentes. Por una parte, esto parece realmente inalcanzable... Pero en mi opinión, esto tiene solución.
Interfaces gráficas I: Probamos la librería en los programas de diferentes tipos y en el terminal MetaTrader 4 (Capítulo 5)
Interfaces gráficas I: Probamos la librería en los programas de diferentes tipos y en el terminal MetaTrader 4 (Capítulo 5)

Interfaces gráficas I: Probamos la librería en los programas de diferentes tipos y en el terminal MetaTrader 4 (Capítulo 5)

En el capítulo anterior de la primera parte de la serie sobre las interfaces gráficas, en la clase del formulario han sido añadidos los métodos que permiten manejar el formulario con los clics en los controles. En el presente artículo vamos a testear el trabajo realizado en diferentes tipos de programas MQL, como indicadores y scripts. En vista de que se ha planteado la tarea de diseñar una librería multiplataforma (en marco de las plataformas comerciales MetaTrader), también realizaremos las pruebas en MetaTrader 4.
Notificaciones por SMS sobre el estado del Asesor Experto
Notificaciones por SMS sobre el estado del Asesor Experto

Notificaciones por SMS sobre el estado del Asesor Experto

El desarrollo de un sistema de notificaciones por SMS que le informa sobre el estado de su Asesor Experto para estar siempre al corriente de cualquier situación crítica dondequiera que esté.
Modelando series temporales con ayuda de símbolos personalizados según las leyes de distribución establecidas
Modelando series temporales con ayuda de símbolos personalizados según las leyes de distribución establecidas

Modelando series temporales con ayuda de símbolos personalizados según las leyes de distribución establecidas

En el artículo se presenta una panorámica de las posibilidades del terminal a la hora de crear y trabajar con símbolos personalizados, ofreciendo diversas opciones de modelado de la historia comercial con la ayuda de símbolos personalizados, de tendencia y diferentes patrones gráficos.
Utilidad para la selección y navegación en MQL5 y MQL4: añadiendo las pestañas de "recordatorios" y guardando objetos gráficos
Utilidad para la selección y navegación en MQL5 y MQL4: añadiendo las pestañas de "recordatorios" y guardando objetos gráficos

Utilidad para la selección y navegación en MQL5 y MQL4: añadiendo las pestañas de "recordatorios" y guardando objetos gráficos

En este artículo, ampliaremos las posibilidades de la utilidad creada anteriormente, añadiéndole pestañas para seleccionar los instrumentos que necesitemos. Asimismo, aprenderemos a guardar los objetos gráficos creados en el gráfico de un instrumento determinado, para no crearlos de nuevo constantemente. E incluso aprenderemos a trabajar solo con los instrumentos que han sido elegidos preliminarmente con la ayuda del sitio web necesario.
Leer fuentes de noticias RSS a través de MQL4
Leer fuentes de noticias RSS a través de MQL4

Leer fuentes de noticias RSS a través de MQL4

Este artículo trata un ejemplo de lectura de márgenes RSS a través de MQL4 utilizando las funciones para el análisis de etiquetas HTML. Intentaremos hacer un trabajo que se pueda transformar en un indicador de noticias o en un lector RSS en lenguaje MQL4.
Lite_EXPERT2.mqh: Un conjunto operativo para los desarrolladores de Asesores Expertos
Lite_EXPERT2.mqh: Un conjunto operativo para los desarrolladores de Asesores Expertos

Lite_EXPERT2.mqh: Un conjunto operativo para los desarrolladores de Asesores Expertos

Este artículo es una continuación de la serie de artículos "Asesores Expertos basados en sistemas populares de trading, y un poco de alquimia en la optimización de robots". Permite familiarizar los lectores con una librería de funciones más universales del archivo Lite_EXPERT2.mqh.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XVI): Eventos de la colección de símbolos.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XVI): Eventos de la colección de símbolos.

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XVI): Eventos de la colección de símbolos.

En este artículo, vamos a crear la clase básica para todos los objetos de la biblioteca, encargada de añadir la funcionalidad de los eventos a todos sus herederos; asimismo, crearemos una clase para monitorear los eventos de la colección de símbolos basada en la nueva clase básica. Además, modificaremos las clases de la cuenta y los eventos de la cuenta para trabajar con la nueva funcionalidad del objeto básico.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXIV): Clase comercial principal - corrección automática de parámetros erróneos
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXIV): Clase comercial principal - corrección automática de parámetros erróneos

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXIV): Clase comercial principal - corrección automática de parámetros erróneos

En el presente artículo, analizaremos el manejador de parámetros erróneos de la orden comercial, mejoraremos la clase comercial básica y también corregiremos el funcionamiento de la clase de eventos comerciales: ahora, todos los eventos comerciales, tanto únicos, como simultáneos en un mismo tick, serán correctamente determinados en los programas.
preview
Trailing stop en el trading

Trailing stop en el trading

En este artículo, analizaremos el uso del trailing stop en el trading: su utilidad y eficacia, y cómo podemos utilizarlo. La eficacia de un trailing stop depende en gran medida de la volatilidad del precio y de la selección del nivel de stop loss. Para fijar un stop loss pueden usarse diversos métodos.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XII): Implementando la clase de objeto "cuenta" y la colección de objetos de cuenta
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XII): Implementando la clase de objeto "cuenta" y la colección de objetos de cuenta

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XII): Implementando la clase de objeto "cuenta" y la colección de objetos de cuenta

En el artículo anterior, definimos los eventos de cierre de posiciones para MQL4 en la biblioteca y eliminamos las propiedades de las órdenes que nos resultaban innecesarias. En el presente artículo, analizaremos la creación del objeto "Cuenta", crearemos una colección de objetos de cuenta y prepararemos la funcionalidad de para monitorear los eventos de las cuentas.
Visualizando la optimización de una estrategia comercial en MetaTrader 5
Visualizando la optimización de una estrategia comercial en MetaTrader 5

Visualizando la optimización de una estrategia comercial en MetaTrader 5

En el artículo se ha implementado una aplicación MQL con interfaz gráfica para la visualización ampliada del proceso de optimización. La interfaz gráfica ha sido creada con la ayuda de la última versión de la biblioteca EasyAndFast. En ocasiones, a muchos usarios les surge la siguiente pregunta: ¿para qué necesitamos las interfaces gráficas en las aplicaciones MQL? En este artículo se muestra uno de los numerosos casos en los que pueden resultar útiles para los tráders.
Cómo hemos desarrollado el servicio de señales comerciales MetaTrader y el trading social en general
Cómo hemos desarrollado el servicio de señales comerciales MetaTrader y el trading social en general

Cómo hemos desarrollado el servicio de señales comerciales MetaTrader y el trading social en general

Estamos perfeccionando activamente el servicio Señales, deshaciéndonos en el proceso de los anteriores desarrollos e introduciendo cambios en los mecanismos existentes. El MetaTrader Signals de hace dos años y el MetaTrader Signals actual son dos servicios totalmente diferentes.
Recuento múltiple de barras nulas en algunos indicadores
Recuento múltiple de barras nulas en algunos indicadores

Recuento múltiple de barras nulas en algunos indicadores

El artículo trata sobre el problema de recuento del valor del indicador en la Terminal de Cliente de MetaTrader 4 cuando cambia la barra nula. Resume la idea general de cómo añadir al código del indicador algún elemento de programa extra que permita restablecer el código de programa guardado antes del recuento múltiple.
Experto comercial universal: Las estrategias de usuario y las clases comerciales auxiliares (Parte 3)
Experto comercial universal: Las estrategias de usuario y las clases comerciales auxiliares (Parte 3)

Experto comercial universal: Las estrategias de usuario y las clases comerciales auxiliares (Parte 3)

En este artículo continuamos con la descripción de los algoritmos del motor comercial CStrategy. En la tercera parte de esta serie de artículos se analizan con detalle ejemplos de escritura de estrategias comerciales específicas que utilizan este enfoque. Además, se presta gran atención a los algoritmos auxiliares: el sistema de registro y el acceso a los datos bursátiles con la ayuda de un indexador convencional (Close[1], Open[0], etc.).
preview
Media móvil en MQL5 desde cero: Sencilla y accesible

Media móvil en MQL5 desde cero: Sencilla y accesible

Usando ejemplos sencillos, hoy analizaremos los principios del cálculo de las medias móviles y nos familiarizaremos con las formas de optimizar el cálculo de los indicadores y, en consecuencia, de las medias móviles.
Kit del trader: Indicadores para el diseño
Kit del trader: Indicadores para el diseño

Kit del trader: Indicadores para el diseño

Este artículo incluye las principales tareas para el diseño de los indicadores, así como soluciones y automatizaciones.
preview
Analizando por qué fallan los asesores expertos

Analizando por qué fallan los asesores expertos

En este artículo, ofrecemos un análisis de los datos de divisas para entender mejor por qué los asesores expertos pueden tener un buen rendimiento en algunos intervalos y un mal rendimiento en otros.
Comprendemos la "memoria" del mercado usando la diferenciación y el análisis entrópico
Comprendemos la "memoria" del mercado usando la diferenciación y el análisis entrópico

Comprendemos la "memoria" del mercado usando la diferenciación y el análisis entrópico

El área de la aplicación de la diferenciación fraccionada es bastante amplia. Por ejemplo, los algoritmos del aprendizaje automático normalmente reciben una serie diferencial en la entrada. El problema es que es necesario mostrar los datos nuevos de acuerdo con la historia existente para que el modelo del aprendizaje automático pueda reconocerlos. En este artículo, se considera un enfoque original en la diferenciación de una serie temporal, además, se muestra el ejemplo de un sistema comercial auto-optimizable a base de una serie diferencial obtenida.
preview
Cómo ver las transacciones directamente en el gráfico sin tener que perderse en el historial de transacciones

Cómo ver las transacciones directamente en el gráfico sin tener que perderse en el historial de transacciones

En este artículo, crearemos una herramienta sencilla para visualizar cómodamente posiciones y transacciones directamente en el gráfico con navegación mediante teclas. Esto permitirá a los operadores examinar visualmente las transacciones individuales y recibir toda la información sobre los resultados comerciales directamente en el momento.
Una nueva mirada al gráfico Equivolume
Una nueva mirada al gráfico Equivolume

Una nueva mirada al gráfico Equivolume

El artículo aborda el método de construcción de gráficos en el cual cada barra está compuesta por el mismo número de ticks.
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
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.
preview
Modelos de clasificación de la biblioteca Scikit-learn y su exportación a ONNX

Modelos de clasificación de la biblioteca Scikit-learn y su exportación a ONNX

En este artículo, analizaremos el uso de todos los modelos de clasificación del paquete Scikit-learn para resolver el problema de la clasificación de los iris de Fisher; asimismo, intentaremos convertir estos al formato ONNX y usar los modelos resultantes en programas MQL5. También compararemos la precisión de los modelos originales y sus versiones ONNX en el conjunto de datos completo Iris dataset.
preview
Aproximación por fuerza bruta a la búsqueda de patrones (Parte IV): Funcionalidad mínima

Aproximación por fuerza bruta a la búsqueda de patrones (Parte IV): Funcionalidad mínima

En este artículo, mostraremos una versión mejorada de la fuerza bruta, basada en los objetivos establecidos en el artículo anterior, y trataremos de abarcar este tema de la forma más amplia posible usando los asesores y la configuración obtenidos con este método. También ofreceremos a la comunidad la posibilidad de probar la nueva versión del programa.
El lenguaje MQL como medio de marcado de la interfaz gráfica de programas MQL (Parte 3). Diseñador de formas
El lenguaje MQL como medio de marcado de la interfaz gráfica de programas MQL (Parte 3). Diseñador de formas

El lenguaje MQL como medio de marcado de la interfaz gráfica de programas MQL (Parte 3). Diseñador de formas

En este artículo, finalizaremos la descripción del nuevo concepto para la construcción de la interfaz de ventana de los programas MQL con la ayuda de las construcciones del lenguaje MQL. El editor gráfico especial permitirá ajustar de forma interactiva una disposición formada por las clases básicas de elementos de GUI, y después exportarla a una descripción MQL para usarla en nuestro proyecto MQL. Asimismo, presentamos la construcción interna del editor y las instrucciones para el usuario. Los códigos fuente se adjuntan al final del artículo.
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
Cómo construir un EA que opere automáticamente (Parte 12): Automatización (IV)

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

Si crees que los sistemas automatizados son sencillos, eso indica que aún no has entendido del todo lo necesario para crearlos. En este texto, hablaremos de un problema al que se enfrentan muchos Expert Advisors: la ejecución indiscriminada de órdenes, y de una posible solución a este problema.
El mercado y la física de sus patrones globales
El mercado y la física de sus patrones globales

El mercado y la física de sus patrones globales

En el presente artículo trataremos de comprobar la suposición de que cualquier sistema con un mínimo conocimiento del mercado puede operar a escala global. No vamos a inventar teorías ni leyes: reflexionaremos únicamente sobre la base de hechos conocidos por todos, convirtiendo paulatinamente dichos hechos al lenguaje del análisis matemático.
Instrumental para el comercio manual rápido: Funcionalidad básica
Instrumental para el comercio manual rápido: Funcionalidad básica

Instrumental para el comercio manual rápido: Funcionalidad básica

En la actualidad, cada vez son más los tráders que dan el salto a los sistemas comerciales automáticos. Muchos de ellos, o bien demandan una configuración inicial, o bien (una parte de los mismos) que los sistemas ya estén totalmente automatizados. No obstante, queda una parte significativa de tráders que comercian manualmente, a la antigua. En este artículo, crearemos un conjunto de herramientas para el comercio automático rápido con la ayuda de atajos de teclado y la ejecución de acciones comerciales rápidas en un solo clic.
preview
Redes neuronales de propagación inversa del error en matrices MQL5

Redes neuronales de propagación inversa del error en matrices MQL5

El artículo describe la teoría y la práctica de la aplicación del algoritmo de propagación inversa del error en MQL5 con la ayuda de matrices. Asimismo, incluye clases y ejemplos preparados del script, el indicador y el asesor.