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
Aproximación por fuerza bruta a la búsqueda de patrones (Parte V): Una mirada desde el otro lado

Aproximación por fuerza bruta a la búsqueda de patrones (Parte V): Una mirada desde el otro lado

En este artículo mostraré al lector un enfoque del trading algorítmico completamente distinto al que he tenido que llegar después de bastante tiempo. Obviamente, todo esto está relacionado con mi programa de fuerza bruta, que ha sufrido una serie de cambios que le permiten resolver varios problemas al mismo tiempo. No obstante, el artículo ha resultado lo más general y sencillo posible, por lo que también resultará apto para quienes no conocen el tema o simplemente están de paso.
preview
Algoritmos de optimización de la población: Algoritmo genético binario (Binary Genetic Algorithm, BGA). Parte I

Algoritmos de optimización de la población: Algoritmo genético binario (Binary Genetic Algorithm, BGA). Parte I

En este artículo, analizaremos varios métodos utilizados en algoritmos genéticos binarios y otros algoritmos poblacionales. Asimismo, repasaremos los principales componentes del algoritmo, como la selección, el cruce y la mutación, así como su impacto en el proceso de optimización. Además, estudiaremos las formas de presentar la información y su repercusión en los resultados de la optimización.
preview
Plantillas listas para conectar indicadores en asesores (Parte 3): Indicadores de tendencia

Plantillas listas para conectar indicadores en asesores (Parte 3): Indicadores de tendencia

En este artículo de referencia, echaremos un vistazo a los indicadores estándar de la categoría de Indicadores de tendencia. Asimismo, crearemos plantillas listas para usar estos indicadores en asesores expertos: declaración y configuración de parámetros, inicialización y desinicialización de indicadores, y también obtención de datos y señales de los búferes de indicador en asesores.
preview
Aprendiendo MQL5 de principiante a profesional (Parte II): Tipos de datos básicos y uso de variables

Aprendiendo MQL5 de principiante a profesional (Parte II): Tipos de datos básicos y uso de variables

Continuamos la serie para principiantes. Hoy veremos cómo crear constantes y variables, además de registrar la fecha, los colores y otros datos útiles. Asimismo, aprenderemos a crear enumeraciones como días de la semana o estilos de cadena (sólido, punteado, etc.). Las variables y las expresiones son la base de la programación: se encuentran necesariamente en el 99% de los programas, por lo que comprenderlas es fundamental. Y así, si es usted nuevo en el mundo de la programación, este es un buen comienzo. Nivel de conocimientos de programación: muy básico, dentro del ámbito de mi artículo anterior (el enlace está al principio).
Los principios de la transformación del tiempo en el trading intradía
Los principios de la transformación del tiempo en el trading intradía

Los principios de la transformación del tiempo en el trading intradía

Este artículo aborda el concepto del tiempo de funcionamiento que permite recibir un flujo más uniforme del precio. También se aborda el código del promedio móvil modificado teniendo en cuenta la transformación del tiempo.
Falacias, Parte 2. La estadística es una pseudociencia o la "crónica de la caída en picado de cada día"
Falacias, Parte 2. La estadística es una pseudociencia o la "crónica de la caída en picado de cada día"

Falacias, Parte 2. La estadística es una pseudociencia o la "crónica de la caída en picado de cada día"

Muchos intentos de aplicar los métodos estadísticos a la realidad objetiva, como las series financieras, fracasan cuando se encuentran con los procesos no estacionarios, "colas gruesas" de las distribuciones probabilísticas que los acompañan y el insuficiente volumen de la información financiera. En este artículo intentaré referirme no a las series financieras como tales, sino a su presentación subjetiva, en este caso a la forma en que un trader intenta dominar las series, como el sistema de trading. La educción de las regularidades estadísticas de los resultados del trading es una tarea muy apasionante. En algunos casos, pueden sacarse verdaderas conclusiones sobre el modelo de este proceso y estas pueden aplicarse al sistema de trading.
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í.
Plantilla para proyectar el MVC y posibilidades de uso (Parte 2): Esquema de interacción entre los tres componentes
Plantilla para proyectar el MVC y posibilidades de uso (Parte 2): Esquema de interacción entre los tres componentes

Plantilla para proyectar el MVC y posibilidades de uso (Parte 2): Esquema de interacción entre los tres componentes

Este artículo continúa y completa el tema planteado en el último artículo: la plantilla MVC en los programas MQL. En este artículo, veremos un posible esquema de interacción entre estos tres componentes.
El lenguaje MQL como medio de marcado de la interfaz gráfica de programas MQL. Parte 2
El lenguaje MQL como medio de marcado de la interfaz gráfica de programas MQL. Parte 2

El lenguaje MQL como medio de marcado de la interfaz gráfica de programas MQL. Parte 2

En este artículo, presentamos un nuevo concepto para la descripción de la interfaz de ventana de los programas MQL con la ayuda de las construcciones del lenguaje MQL. La creación de GUI basadas en el marcado MQL ofrece una funcionalidad adicional para almacenar la caché y generar de manera dinámica elementos, y también para gestionar los estilos y los nuevos esquemas de procesamiento de eventos. Aquí, ofrecemos la versión mejorada de la biblioteca estándar de los elementos de control.
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
Aprendizaje automático y Data Science (Parte 10): Regresión de cresta

Aprendizaje automático y Data Science (Parte 10): Regresión de cresta

La regresión de cresta (Ridge Regression) es una técnica simple para reducir la complejidad del modelo y combatir el ajuste que puede derivar de una regresión lineal simple.
preview
La técnica comercial RSI Deep Three Move

La técnica comercial RSI Deep Three Move

El presente artículo muestra la técnica comercial RSI Deep Three Move en MetaTrader 5. El artículo se basa en una nueva serie de estudios que demuestran varias técnicas comerciales basadas en el RSI, así como un indicador técnico para medir la fuerza y el impulso de los valores, incluidas las acciones, las divisas y las materias primas.
preview
Aproximación por fuerza bruta a la búsqueda de patrones (Parte II): Inmersión

Aproximación por fuerza bruta a la búsqueda de patrones (Parte II): Inmersión

En el presente artículo, continuaremos con el tema de la fuerza bruta. Intentaremos destacar mejor los patrones con la ayuda de la nueva versión mejorada de nuestro programa y trataremos de encontrar la diferencia en la estabilidad usando distintos segmentos temporales y diferentes marcos temporales para las cotizaciones.
preview
Asesor Experto Grid-Hedge Modificado en MQL5 (Parte I): Creamos un sencillo asesor de cobertura

Asesor Experto Grid-Hedge Modificado en MQL5 (Parte I): Creamos un sencillo asesor de cobertura

Hoy crearemos un sencillo asesor de cobertura como base para nuestro asesor Grid-Hedge más avanzado, que será una mezcla de estrategias de rejilla y cobertura clásicas. Al final de este artículo, usted sabrá cómo crear una estrategia de cobertura simple y lo que la gente opina sobre la rentabilidad de esta estrategia.
Recetas MQL5 - procesamiento de eventos personalizados del gráfico
Recetas MQL5 - procesamiento de eventos personalizados del gráfico

Recetas MQL5 - procesamiento de eventos personalizados del gráfico

En este artículo vamos a estudiar varios aspectos sobre la confección de proyectos y el procesamiento de los eventos personalizados del gráfico en el entorno MQL5. Se propondrá un ejemplo de aproximación para la clasificación de eventos. Asimismo, se muestra el código de programa de la clase de evento y la clase de procesador de eventos personalizados.
preview
Aprendizaje automático y Data Science (Parte 02): Regresión logística

Aprendizaje automático y Data Science (Parte 02): Regresión logística

La clasificación de los datos es un punto crucial para los tráders algorítmicos y los programadores. En este artículo, nos centraremos en uno de los algoritmos logísticos de clasificación que podría ayudarnos a identificar los síes o los noes, las subidas y bajadas, las compras y las ventas.
Asesores Expertos basados en sistemas populares de trading, y un poco de alquimia en la optimización de robots (Parte II)
Asesores Expertos basados en sistemas populares de trading, y un poco de alquimia en la optimización de robots (Parte II)

Asesores Expertos basados en sistemas populares de trading, y un poco de alquimia en la optimización de robots (Parte II)

En este artículo el autor continúa analizando la implementación de algoritmos de los sistemas de trading más sencillos, y describe algunos detalles relevantes sobre la optimización de resultados. Los traders principiantes y los desarrolladores noveles de EA encontrarán especialmente útil este texto.
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
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.
Algoritmo de autoadaptación (Parte IV): Funcionalidad adicional y pruebas
Algoritmo de autoadaptación (Parte IV): Funcionalidad adicional y pruebas

Algoritmo de autoadaptación (Parte IV): Funcionalidad adicional y pruebas

Seguimos completando el algoritmo con la funcionalidad mínima necesaria y realizando pruebas con el material obtenido. La rentabilidad ha resultado baja, pero los artículos nos muestran un modelo que nos permite comerciar con beneficios de una forma completamente automática con instrumentos comerciales completamente diferentes, y no solo diferentes, sino que también se comercian en mercados fundamentalmente distintos.
Archivo de registro alternativo con el uso de HTML y CSS
Archivo de registro alternativo con el uso de HTML y CSS

Archivo de registro alternativo con el uso de HTML y CSS

En este artículo describiré el proceso de escritura de una sencilla pero muy potente biblioteca para la creación de archivos html, aprenderemos a ajustar su visualización y veremos cómo pueden implementarse y utilizarse fácilmente en nuestros expertos o en el script.
preview
La estacionalidad en el mercado de divisas y oportunidades para aprovecharla

La estacionalidad en el mercado de divisas y oportunidades para aprovecharla

Toda persona moderna está familiarizada con el concepto de estacionalidad, por ejemplo, todos estamos acostumbrados al aumento del precio de las verduras frescas en invierno o a la subida del precio del combustible durante las heladas severas, pero pocas personas saben que existen patrones similares en el mercado de divisas.
Utilizando MetaTrader 4 en el análisis de patrones temporales
Utilizando MetaTrader 4 en el análisis de patrones temporales

Utilizando MetaTrader 4 en el análisis de patrones temporales

El análisis de patrones basados en el tiempo sirve para determinar cuál es el mejor momento para entrar en el mercado, o para saber si una operación determinada debe evitarse a toda costa. En este artículo utilizamos MetaTrader 4 para analizar el historial de datos, y generamos unos resultados de optimización que pueden resultar útiles en los sistemas de trading automáticos.
Como escribir Zig Zags rápido sin redibujado
Como escribir Zig Zags rápido sin redibujado

Como escribir Zig Zags rápido sin redibujado

Se propone un método bastante universal de escribir indicadores del tipo Zig Zag. El método incluye una parte considerable de los Zig Zags ya descritos y nos permite crear otros nuevos con relativa facilidad.
Aprendiendo a diseñar un sistema de trading con Envelopes
Aprendiendo a diseñar un sistema de trading con Envelopes

Aprendiendo a diseñar un sistema de trading con Envelopes

En este artículo, compartiré con ustedes uno de los métodos para comeciar con bandas. Esta vez analizaremos el indicador Envelopes y veremos lo fácil que resulta crear algunas estrategias basadas en él.
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.
preview
Indicadores con control interactivo en el gráfico.

Indicadores con control interactivo en el gráfico.

Una nueva mirada a la interfaz del indicador. Lo más importante es la comodidad. Tras probar docenas de estrategias comerciales diferentes a lo largo de los años, además de probar cientos de indicadores diferentes, he llegado a algunas conclusiones propias que quiero compartir con ustedes en este artículo.
Secretos del terminal de cliente de MetaTrader 4: Biblioteca de archivos en MetaEditor
Secretos del terminal de cliente de MetaTrader 4: Biblioteca de archivos en MetaEditor

Secretos del terminal de cliente de MetaTrader 4: Biblioteca de archivos en MetaEditor

Cuando se crean programas personalizados, el editor de código es de gran importancia. Cuantas más funciones hay disponibles en el editor, más rápida y cómoda es la creación del programa. Muchos programas se crean sobre la base de un código ya existente. ¿Utiliza un indicador o un script que no se ajusta completamente a su propósito? Descargue el código de este programa de nuestro sitio web y personalícelo.
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
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
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.
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.
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.
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?
Puntos de interrupción en la "Prueba de estrategia": ¡Es posible!
Puntos de interrupción en la "Prueba de estrategia": ¡Es posible!

Puntos de interrupción en la "Prueba de estrategia": ¡Es posible!

Este artículo aborda la emulación de los puntos de interrupción durante la ejecución de la "Prueba de estrategia" y la visualización de la información de depuración.
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.
preview
Cómo añadir Trailing Stop según el indicador Parabolic SAR

Cómo añadir Trailing Stop según el indicador Parabolic SAR

Al crear una estrategia comercial, debemos probar una amplia variedad de stops de protección. Y aquí surge la idea del ajuste dinámico del nivel de Stop Loss siguiendo el precio. El mejor candidato en este punto es el indicador Parabolic SAR, resulta difícil pensar en algo más simple y claro.
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
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.
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.