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
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.
Estudio de técnicas de análisis de velas (Parte IV): Actualizaciones y adiciones a la aplicación
Estudio de técnicas de análisis de velas (Parte IV): Actualizaciones y adiciones a la aplicación

Estudio de técnicas de análisis de velas (Parte IV): Actualizaciones y adiciones a la aplicación

En el presente artículo, vamos a presentar la siguiente versión de la aplicación Pattern Analyzer. En esta versión se han corregido algunas imperfecciones y se han añadido nuevas capacidades; además, se ha dado un nuevo enfoque a la comodidad y la actualidad de la interfaz actual. En este caso, además, se han tenido en cuenta las sugerencias reflejadas en los comentarios de los artículos anteriores. Podrá familiarizarse con el resultado leyendo el presente artículo.
Recetas MQL5 – Obteniendo las propiedades de una posición de cobertura abierta
Recetas MQL5 – Obteniendo las propiedades de una posición de cobertura abierta

Recetas MQL5 – Obteniendo las propiedades de una posición de cobertura abierta

La plataforma MetaTrader 5 no es solo una plataforma multimercado, sino que también permite usar diferentes sistemas de registro de posiciones. Estas posibilidades amplian considerablemente el instrumental para la implementación y formalización de las ideas comerciales. En el artículo, vamos a hablar sobre cómo procesar y considerar las propiedades de las posiciones al llevar su registro de forma independiente ("cobertura"). Así, en el artículo proponemos una clase derivada, mostrando a continuación ejemplos de procesamiento y obtención de las propiedades de la posición de cobertura.
preview
MQL5 — Tú también puedes convertirte en un maestro de este lenguaje

MQL5 — Tú también puedes convertirte en un maestro de este lenguaje

En este artículo, realizaré algo parecido a una entrevista conmigo mismo, compartiendo cómo di mis primeros pasos en MQL5. Con esta guía, quiero ayudarte a convertirte en un extraordinario programador de MQL5 mostrándote las bases esenciales para tal logro. Todo lo que necesitas traer contigo es un genuino deseo de aprender.
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.
Ampliación de la librería estándar de MQL5 y la reutilización del código
Ampliación de la librería estándar de MQL5 y la reutilización del código

Ampliación de la librería estándar de MQL5 y la reutilización del código

La librería estándar de MQL5 le facilita la vida como desarrollador. No obstante, no abarca todas las necesidades de todos los desarrolladores del mundo, con lo cual querrá tener a su disposición más material personalizado para dar un paso más y ampliarla. En este artículo, se describe la integración del indicador técnico Zig-Zag de MetaQuotes en la librería estándar. Para conseguir nuestro objetivo, nos hemos basado en la filosofía de diseño de MetaQuotes.
Sistema de notificaciones de voz para evetos comerciales y señales
Sistema de notificaciones de voz para evetos comerciales y señales

Sistema de notificaciones de voz para evetos comerciales y señales

En nuestros tiempos, los asistentes de voz juegan hace mucho un papel considerable en la vida del hombre, ya sea como navegador, buscador de voz o traductor. Por eso, en el presente artículo trataremos de desarrollar un sistema sencillo y comprensible de notificaciones de voz para los diferentes eventos comerciales, los estados del mercado o las señales de los sistemas comerciales.
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.
preview
Matrices y vectores en MQL5: funciones de activación

Matrices y vectores en MQL5: funciones de activación

En este artículo, describiremos solo uno de los aspectos del aprendizaje automático: las funciones de activación. En las redes neuronales artificiales, las funciones de activación de neuronas calculan el valor de la señal de salida en función de los valores de una señal de entrada o un conjunto de señales de entrada. Hoy le mostraremos lo que hay "debajo del capó".
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
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.
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.
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
Algoritmos de optimización de la población: Colonia artificial de abejas (Artificial Bee Colony - ABC)

Algoritmos de optimización de la población: Colonia artificial de abejas (Artificial Bee Colony - ABC)

Hoy estudiaremos el algoritmo de colonia artificial de abejas. Asimismo, complementaremos nuestros conocimientos con nuevos principios para el estudio de los espacios funcionales. En este artículo hablaremos sobre mi interpretación de la versión clásica del algoritmo.
Resultados del Mercado MQL5 en el segundo periodo de 2013
Resultados del Mercado MQL5 en el segundo periodo de 2013

Resultados del Mercado MQL5 en el segundo periodo de 2013

Tras año y medio de exitoso trabajo, el Mercado MQL5 se ha convertido en la tienda más grande de trading de estrategias comerciales e indicadores técnicos. En ella se han publicado cerca de 800 aplicaciones comerciales de 350 desarrolladores de todo el mundo. Además, los traders ya han comprado e instalado en sus terminales MetaTrader 5 más de 100.000 programas comerciales.
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.).
Crear aplicación interactiva para visualizar los canales RSS en MetaTrader 5
Crear aplicación interactiva para visualizar los canales RSS en MetaTrader 5

Crear aplicación interactiva para visualizar los canales RSS en MetaTrader 5

En este artículo se describe cómo crear la aplicación que visualiza los canales RSS. Además, hablaremos sobre los aspectos del uso de la Biblioteca estándar durante la creación de los programas interactivos en MetaTrader 5.
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.
preview
Estrategia comercial de reversión a la media simple

Estrategia comercial de reversión a la media simple

La reversión a la media es una técnica de negociación de contratendencia en la que el tráder espera que el precio regrese a algún tipo de equilibrio, que generalmente se mide usando una media u otro indicador estadístico de la tendencia promediada.
Interfaces gráficas VII: Control "Pestañas" (Capítulo 2)
Interfaces gráficas VII: Control "Pestañas" (Capítulo 2)

Interfaces gráficas VII: Control "Pestañas" (Capítulo 2)

En el primer capítulo de la séptima parte han sido presentadas tres clases de los controles para la creación de las tablas: tabla de las etiquetas de texto (CLabelsTable), tabla de los campos de edición (CTable) y la tabla dibujada (CCanvasTable). En este artículo (capítulo 2) hablaremos del control “Pestañas”.
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.
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.
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.
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.
Cuentos de robots comerciales: ¿mejor poco, pero mejor?
Cuentos de robots comerciales: ¿mejor poco, pero mejor?

Cuentos de robots comerciales: ¿mejor poco, pero mejor?

Hace dos años, en el artículo "La última cruzada" usted y yo, querido lector, vimos juntos un método (bastante interesante y poco usado en la actualidad) de representación de la información en el mercado, el gráfico de punto y forma. Ahora le propongo intentar escribir un robot comercial, basado en patrones que se pueden ver en los gráficos de punto y forma.
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.
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.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte III): Colección de órdenes y posiciones de mercado, búsqueda y filtrado
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte III): Colección de órdenes y posiciones de mercado, búsqueda y filtrado

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte III): Colección de órdenes y posiciones de mercado, búsqueda y filtrado

En el primer artículo, comenzamos la creación de una gran biblioteca multiplataforma para construir con facilidad programas en las plataformas MetaTrader 5 y MetaTrader 4. Acto seguido, continuamos el desarrollo de la biblioteca y corregimos las órdenes y transacciones históricas. En esta ocasión, vamos a crear una clase que nos permita elegir y filtrar cómodamente órdenes y posiciones en las listas de colecciones; en concreto, crearemos un objeto básico de la biblioteca, llamado Engine, y añadiremos a la biblioteca una colección de órdenes y posiciones de mercado.
preview
Desarrollando un EA comercial desde cero (Parte 12): Time and Trade (I)

Desarrollando un EA comercial desde cero (Parte 12): Time and Trade (I)

Vamos a crear un Time & Trade de rápida interpretación para para lectura de flujo ordenes. Esta es la primera parte en la que construiremos este sistema. En el próximo artículo completaremos el sistema con la información que falta, ya que para ello necesitaremos agregar varias cosas nuevas a nuestro código EA.
Desarrollando un algoritmo de autoadaptación (Parte II): Aumentando la efectividad
Desarrollando un algoritmo de autoadaptación (Parte II): Aumentando la efectividad

Desarrollando un algoritmo de autoadaptación (Parte II): Aumentando la efectividad

En este artículo, continuaremos el tema del anterior. No obstante, primero flexibilizaremos el algoritmo desarrollado anteriormente. El algoritmo se ha vuelto más estable, con un aumento en el número de velas en la ventana de análisis o con un aumento en el porcentaje del umbral del preponderancia de velas descendentes o ascendentes. Hemos tenido que llegar a un compromiso y establecer un tamaño de muestra más grande para el análisis o un porcentaje mayor de preponderancia de la vela predominante.
preview
Multibot en MetaTrader: iniciamos múltiples robots desde un gráfico

Multibot en MetaTrader: iniciamos múltiples robots desde un gráfico

En este artículo, veremos una plantilla simple para crear un robot MetaTrader universal que se pueda usar en varios gráficos, pero adjunto a uno solo, sin necesidad de configurar cada ejemplar del robot en cada gráfico individual.
preview
¡200 usd por su artículo de trading algorítmico!

¡200 usd por su artículo de trading algorítmico!

Escriba un artículo y contribuya al desarrollo del trading algorítmico. Comparta su experiencia en el comercio y la programación y le pagaremos 200 dólares. Además, la publicación en el popular sitio web MQL5.com será una gran oportunidad para su promoción personal en el entorno profesional. Le leerán miles de tráders. Podrá debatir sus ideas con personas afines, adquirir nuevas experiencias y rentabilizar sus conocimientos.
Interfaces gráficas XI: Integración de la librería gráfica estándar (build 16)
Interfaces gráficas XI: Integración de la librería gráfica estándar (build 16)

Interfaces gráficas XI: Integración de la librería gráfica estándar (build 16)

Desde hace poco tiempo, fue presentada la nueva versión de la librería gráfica para el diseño de los gráficos científicos (clase CGraphic). En esta actualización de la librería para la creación de las interfaces gráficas será presentada la versión con nuevo control para crear los gráficos. Ahora, será aún más fácil visualizar los datos de diferentes tipos.
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.
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.
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.
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
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
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.
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.