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
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte II): Colección de órdenes y transacciones históricas
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte II): Colección de órdenes y transacciones históricas

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte II): Colección de órdenes y transacciones históricas

En el primer artículo, comenzamos a crear una gran biblioteca multiplataforma, cuyo cometido es facilitar la creación de programas para las plataformas MetaTrader 5 y MetaTrader 4. Creamos el objeto abstracto COrder, que es el objeto básico para guardar los datos de las órdenes y transacciones históricas, así como de las órdenes y posiciones de mercado. Ahora, vamos a crear todos los objetos necesarios para guardar los datos de la historia de la cuenta en colecciones.
Guía práctica de MQL5: Controles de la subventana del indicador: Barra de desplazamiento
Guía práctica de MQL5: Controles de la subventana del indicador: Barra de desplazamiento

Guía práctica de MQL5: Controles de la subventana del indicador: Barra de desplazamiento

Vamos a continuar explorando los diversos controles y esta vez nos centraremos en la barra de desplazamiento. Al igual que en el artículo anterior llamado "Guía práctica de MQL5: Controles de la subventana del indicador: Botones", todas las operaciones se llevarán a cabo en la subventana del indicador. Tome un momento para leer el artículo mencionado anteriormente, ya que proporciona una descripción detallada de la utilización de eventos en la función OnChartEvent(), asimismo, se verá este punto muy por encima en este artículo. Con fines ilustrativos, esta vez vamos a crear una barra de desplazamiento vertical para una larga lista de todas las propiedades de los instrumentos financieros que se puedan obtener mediante los recursos de MQL5.
Los principios del cálculo económico de los indicadores
Los principios del cálculo económico de los indicadores

Los principios del cálculo económico de los indicadores

Las llamadas a los usuarios y a los indicadores técnicos requieren muy poco espacio en el código del programa de los sistemas de trading automatizados. Se trata a menudo de pocas líneas de código. Pero con frecuencia, son estas pocas líneas de código las que requieren la mayor parte del tiempo, destinada a probar el Expert Advisor. Por lo tanto, hay que tener en cuenta mucho más de lo parecía al principio todo lo que está relacionado con los cálculos de datos en un indicador. Este artículo trata justamente esta cuestión.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte IV): Eventos comerciales
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte IV): Eventos comerciales

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte IV): Eventos comerciales

En los anteriores artículos, comenzamos a crear una gran biblioteca multiplataforma, cuyo objetivo es facilitar la escritura de programas para las plataformas MetaTrader 5 y MetaTrader 4. Ya disponemos de una colección de órdenes y transacciones históricas, y órdenes y posiciones de mercado, así como de una clase para seleccionar y filtrar órdenes cómodamente. En esta parte, vamos a continuar desarrollando el objeto básico, además de enseñar a la biblioteca Engine a monitorear los eventos comerciales en la cuenta.
Trademinator 3: el auge de las máquinas de trading
Trademinator 3: el auge de las máquinas de trading

Trademinator 3: el auge de las máquinas de trading

En el artículo "Dr. Tradelove..." creamos un Expert Advisor que optimiza independientemente los parámetros del sistema de trading preseleccionado. Además, decidimos crear un Expert Advisor que no solo pudiera optimizar los parámetros de un sistema de trading subyacente al EA, sino también elegir el mejor de varios sistemas de trading. Vamos a ver qué sale de esto...
preview
Redes neuronales: así de sencillo (Parte 7): Métodos de optimización adaptativos

Redes neuronales: así de sencillo (Parte 7): Métodos de optimización adaptativos

En artículos anteriores, hemos usado el descenso de gradiente estocástico para entrenar una red neuronal utilizando una única tasa de aprendizaje para todas las neuronas de la red. En este artículo, proponemos al lector buscar métodos de aprendizaje adaptativo que nos permitan modificar la tasa de aprendizaje de cada neurona. Vamos a echar un vistazo a las ventajas y desventajas de este enfoque.
MetaTrader 4 trabajando con antivirus y cortafuegos
MetaTrader 4 trabajando con antivirus y cortafuegos

MetaTrader 4 trabajando con antivirus y cortafuegos

La mayoría de traders usan programas especiales para proteger sus PC. Por desgracia, estos programas no solo no protegen los ordenadores frente a las intrusiones, virus y troyanos, sino que también consumen una cantidad importante de recursos. Esto está relacionado con el tráfico de la red, en primer lugar, algo que está completamente controlado por algunos antivirus y cortafuegos inteligentes. La razón de escribir este artículo fue que los traders se quejaban de la lentitud del terminal de cliente de MetaTrader 4 cuando trabaja con Outpost Firewall. Hemos decidido hacer nuestra propia investigación usando Kaspersky Antivirus 6.0 y Outpost Firewall Pro 4.0.
preview
Aprendiendo a diseñar un sistema de trading con Volumes

Aprendiendo a diseñar un sistema de trading con Volumes

En este nuevo artículo de la serie sobre la creación de sistemas comerciales basados en indicadores técnicos populares, hablaremos del indicador Volumes. El volumen como concepto es un factor importante en el comercio en los mercados financieros y, por tanto, debe tenerse siempre en cuenta. En este artículo, aprenderemos a desarrollar un sistema comercial basado en el indicador Volumes.
Cómo implementar sus propios criterios de optimización
Cómo implementar sus propios criterios de optimización

Cómo implementar sus propios criterios de optimización

En este artículo veremos la implementación de los criterios del beneficio/disminución de fondos, con los resultados resumidos en un archivo desarrollado para el Asesor Experto Moving Average (Promedio móvil).
Interfaces gráficas VIII: Control "Explorador de archivos" (Capítulo 3)
Interfaces gráficas VIII: Control "Explorador de archivos" (Capítulo 3)

Interfaces gráficas VIII: Control "Explorador de archivos" (Capítulo 3)

En los capítulos anteriores de la octava parte de la serie, nuestra librería se ha completado con las clases para la creación de los punteros para el cursor del ratón, calendarios y listas jerárquicas. En este artículo vamos a analizar el control “Explorador de archivos” que también puede utilizarse como parte de la interfaz gráfica de la aplicación MQL.
Trabajando con las series temporales en la biblioteca DoEasy (Parte 41): Ejemplo de indicador de símbolo y periodo múltiples
Trabajando con las series temporales en la biblioteca DoEasy (Parte 41): Ejemplo de indicador de símbolo y periodo múltiples

Trabajando con las series temporales en la biblioteca DoEasy (Parte 41): Ejemplo de indicador de símbolo y periodo múltiples

En el artículo, analizaremos un ejemplo de creación de un indicador de símbolo y periodo múltiples usando las clases de las series temporales de la biblioteca DoEasy. Dicho indicador representará en la subventana el gráfico de la pareja de divisas seleccionada con el marco temporal seleccionado en forma de velas japonesas. Asimismo, mejoraremos las clases de la biblioteca y crearemos un archivo aparte para guardar las enumeraciones para los parámetros de entrada de los programas y la selección del lenguaje de compilación.
Cómo escribir un cliente nativo de Twitter para MetaTrader 4 y MetaTrader 5 sin usar DLL
Cómo escribir un cliente nativo de Twitter para MetaTrader 4 y MetaTrader 5 sin usar DLL

Cómo escribir un cliente nativo de Twitter para MetaTrader 4 y MetaTrader 5 sin usar DLL

¿Quiere usted recibir tweets o publicar sus señales comerciales en Twitter? Ya no tendrá que buscar soluciones para ello: en esta serie de artículos, analizaremos cómo trabajar con Twitter sin usar DLL. Juntos, implementaremos una Tweeter API con ayuda de MQL. En el primer artículo, hablaremos de las posibilidades de autenticación y autorización a través de Twitter API.
Guía práctica de MQL5: Reducción del efecto del sobreajuste y el manejo de la falta de cotizaciones
Guía práctica de MQL5: Reducción del efecto del sobreajuste y el manejo de la falta de cotizaciones

Guía práctica de MQL5: Reducción del efecto del sobreajuste y el manejo de la falta de cotizaciones

Sea cual sea la estrategia de trading que utilice, siempre habrá que preguntarse qué parámetros escoger para asegurar futuras ganancias. Este artículo proporciona un ejemplo de un Asesor Experto con una posibilidad de mejorar varios parámetros de símbolos a la vez. Este método está previsto para reducir el sobreajuste de los parámetros y manejar situaciones donde los datos de un solo símbolo no son suficientes para el estudio.
Enfoque científico sobre el desarrollo de algoritmos comerciales
Enfoque científico sobre el desarrollo de algoritmos comerciales

Enfoque científico sobre el desarrollo de algoritmos comerciales

En el presente artículo, estudiaremos con ejemplos la metodología de desarrollo de algoritmos comerciales usando un enfoque científico secuencial sobre el análisis de las posibiles patrones de formación de precio y la construcción de algoritmos comerciales basados en dichas leyes.
Cómo ser un mejor programador (parte 05): Aprendiendo a desarrollar más rápido
Cómo ser un mejor programador (parte 05): Aprendiendo a desarrollar más rápido

Cómo ser un mejor programador (parte 05): Aprendiendo a desarrollar más rápido

Sin duda, todo desarrollador querría escribir código más rápido; por eso, le agradará saber que la capacidad de codificar de forma más rápida y eficaz no es algo con lo que solo nazcan unas pocas personas, es una habilidad que se puede adquirir. Eso es lo que intentaremos trabajar en el artículo de hoy.
Pegado de contrato de futuros en MetaTrader 5
Pegado de contrato de futuros en MetaTrader 5

Pegado de contrato de futuros en MetaTrader 5

El análisis técnico de los contratos de futuros (futuros, en lo sucesivo) se ve dificultado por la breve duración de su circulación. En gráficos relativamente cortos resulta difícil llevar a cabo el análisis técnico, por ejemplo, la cantidad de barras en el gráfico diurno de futuros en el índice de la bolsa ucraniana UX-9.13 es de algo más de 100. Por eso al trader le surge la cuestión sobre la construcción de instrumentos sintéticos sobre los futuros. En el artículo veremos el tema del pegado de la historia de los contratos de futuros con diferentes fechas de duración en el terminal MetaTrader 5.
Aumente la eficiencia de sus sistemas lineales de trading
Aumente la eficiencia de sus sistemas lineales de trading

Aumente la eficiencia de sus sistemas lineales de trading

En el artículo de hoy se muestra a los programadores intermedios en MQL5 cómo pueden sacar mayor rendimiento a sus sistemas lineales de trading (lote fijo) mediante una simple implementación de la conocida técnica de potenciación. Se llama así, porque el crecimiento de la curva de patrimonio resultante es geométrico o exponencial, con forma de parábola. En particular, vamos a implementar una variante práctica de MQL5, se trata del método de fracción fija para determinar el tamaño de una posición, desarrollado por Ralph Vince.
El sistema experto 'Comentador'. Aplicación práctica de indicadores embebidos en programas MQL4
El sistema experto 'Comentador'. Aplicación práctica de indicadores embebidos en programas MQL4

El sistema experto 'Comentador'. Aplicación práctica de indicadores embebidos en programas MQL4

El presente artículo describe el uso de los indicadores técnicos en el lenguaje de programación MQL4.
Probando Asesores Expertos en marcos temporales no estándar
Probando Asesores Expertos en marcos temporales no estándar

Probando Asesores Expertos en marcos temporales no estándar

No es fácil, es facilísimo. ¡Los Asesores Expertos se pueden probar en marcos de tiempo no estándar! Tan solo hay que sustituir los datos del marco temporal estándar por los del no estándar. Incluso podemos probar nuestros Asesores Expertos en varios marcos temporales no estándar.
Interfaces gráficas X: Campo de edición del texto, slider de imágenes y controles simples (build 5)
Interfaces gráficas X: Campo de edición del texto, slider de imágenes y controles simples (build 5)

Interfaces gráficas X: Campo de edición del texto, slider de imágenes y controles simples (build 5)

En este artículo vamos a analizar los controles nuevos, tales como: «Campo de edición del texto», «Slider de imágenes», así como los controles simples adicionales, «Etiqueta de texto» e «Imagen». La librería sigue desarrollándose, y además de la aparición de controles nuevos, se van mejorando los que ya han sido creados anteriormente.
Guía práctica de MQL5: Desarrollo de un indicador de volatilidad multisímbolo en MQL5
Guía práctica de MQL5: Desarrollo de un indicador de volatilidad multisímbolo en MQL5

Guía práctica de MQL5: Desarrollo de un indicador de volatilidad multisímbolo en MQL5

En este artículo, trataremos el desarrollo de un indicador de volatilidad multisímbolo. El desarrollo de los indicadores multisímbolo puede presentar algunas dificultades para los desarrolladores novatos de MQL5 que este artículo ayudará a aclarar. Los temas importantes que aparecerán a lo largo del desarrollo de un indicador multisímbolo tendrán que ver con la sincronización de otros símbolos respecto al símbolo actual, la falta de algunos datos de los indicadores y la identificación del principio de las barras "true" (verdaderas) en un periodo de tiempo determinado. Se tendrán en cuenta de cerca todas estas cuestiones en este artículo.
Experto comercial universal: Modelo de eventos y prototipo de estrategia comercial (Parte 2)
Experto comercial universal: Modelo de eventos y prototipo de estrategia comercial (Parte 2)

Experto comercial universal: Modelo de eventos y prototipo de estrategia comercial (Parte 2)

Este artículo continúa con la serie de comentarios dedicados al modelo universal de expertos. En esta parte se describe un modelo original de eventos basado en el procesamiento centralizado de datos, y también se estudia la estructura de la clase básica del motor CStrategy.
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXV): Procesando los errores retornados por el servidor comercial
Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXV): Procesando los errores retornados por el servidor comercial

Biblioteca para el desarrollo rápido y sencillo de programas para MetaTrader (Parte XXV): Procesando los errores retornados por el servidor comercial

Después de enviar una orden comercial al servidor, no deberíamos pensar que "ya está todo hecho", ya que ahora tendremos que comprobar los códigos de error, o bien la ausencia de los mismos. En el presente artículo, vamos a implementar el procesamiento de los errores retornados por el servidor comercial, preparando asimismo la base para crear solicitudes comerciales pendientes.
preview
WebSocket para MetaTrader 5

WebSocket para MetaTrader 5

Antes de que aparecieran las funciones de red en la API MQL5 actualizada, las aplicaciones MetaTrader tenían una capacidad limitada para conectarse e interactuar con servicios basados ​​en el protocolo WebSocket. Ahora, la situación es distinta. En este artículo, analizaremos la implementación de la biblioteca WebSocket en el MQL5 puro. Asimismo, presentaremos una breve descripción del protocolo WebSocket y una guía paso a paso sobre el uso de la biblioteca resultante.
Cómo cortar un código de AE para una vida más fácil y menos errores.
Cómo cortar un código de AE para una vida más fácil y menos errores.

Cómo cortar un código de AE para una vida más fácil y menos errores.

Un simple concepto que se describe en el artículo, permite simplificar los sistemas de trading existentes a aquellos que desarrollan sistemas de trading automático en MQL4, así como a reducir el tiempo necesario para desarrolloar estos nuevos sistemas, gracias a los códigos más cortos.
Análisis técnico: ¿Qué analizamos?
Análisis técnico: ¿Qué analizamos?

Análisis técnico: ¿Qué analizamos?

En este artículo se han intentado de analizar de forma global algunas peculiaridades de la representación de las cotizaciones accesibles para el análisis en el terminal MetaTrader. En el presente artículo no vamos a hablar de técnologías de programación, nuestro análisis tiene un carácter más general.
Gráficos en la biblioteca DoEasy (Parte 90): Eventos de objetos gráficos estándar. Funcionalidad básica
Gráficos en la biblioteca DoEasy (Parte 90): Eventos de objetos gráficos estándar. Funcionalidad básica

Gráficos en la biblioteca DoEasy (Parte 90): Eventos de objetos gráficos estándar. Funcionalidad básica

En este artículo, crearemos la funcionalidad básica para el seguimiento de eventos de objetos gráficos estándar. Empezaremos con el evento de doble clic sobre un objeto gráfico.
preview
Análisis de clústeres (Parte I): Usando la inclinación de las líneas de indicador

Análisis de clústeres (Parte I): Usando la inclinación de las líneas de indicador

El análisis de clústeres es uno de los elementos más importantes de la inteligencia artificial. En este artículo, trataremos de aplicar el análisis de inclinación del clúster del indicador para obtener valores de umbral que nos ayuden a determinar la naturaleza plana o de tendencia del mercado.
Recetas de MQL5 - procesamiento de eventos típicos del gráfico
Recetas de MQL5 - procesamiento de eventos típicos del gráfico

Recetas de MQL5 - procesamiento de eventos típicos del gráfico

En este artículo se analizan los eventos típicos del gráfico y se dan ejemplos de su procesamiento. Han sido considerados los eventos del ratón, evento del teclazo, creación/cambio de propiedades, eliminación del objeto gráfico, clic del ratón en el gráfico y en el objeto gráfico, desplazamiento del objeto gráfico con ratón, fin de edición del texto en el campo de introducción, así como los eventos de modificación del gráfico. Cada evento va acompañado con ejemplos de programas en MQL5.
Interfaces gráficas IV: Elementos informativos de la interfaz (Capítulo 1)
Interfaces gráficas IV: Elementos informativos de la interfaz (Capítulo 1)

Interfaces gráficas IV: Elementos informativos de la interfaz (Capítulo 1)

En este momento, la librería para la creación de las interfaces gráficas contiene el formulario y varios controles que pueden ser adjuntados a este formulario. Ahora tenemos todo preparado para considerar la cuestión del modo de ventanas múltiples, pero nos ocuparemos de ello en el segundo capítulo de este artículo. Primero, vamos a escribir las clases que nos permitirán crear los elementos informativos de la interfaz, tales como: la “barra de estado” y la “descripción emergente”.
preview
Desarrollo de un EA comercial desde cero (Parte 31): Rumbo al futuro (IV)

Desarrollo de un EA comercial desde cero (Parte 31): Rumbo al futuro (IV)

Seguiremos eliminando cosas del interior del EA. Sin embargo, este será el último artículo de esta serie. Lo último que se removerá en esta serie de artículos es el sistema de sonido. Tal vez esto los confunda si no han seguido estos artículos.
Carry Trading Estadístico
Carry Trading Estadístico

Carry Trading Estadístico

Algoritmo de protección estadística de posiciones abiertas con swap (permutaciones) positivas contra movimientos no deseados de las cotizaciones. Para compensar el riesgo potencial que supone el movimiento de las cotizaciones en dirección opuesta a la posición abierta, en este artículo se presenta la variante Carry Trading de estrategia protegida.
Instrumental para el comercio manual rápido: Trabajando con órdenes abiertas y órdenes pendientes
Instrumental para el comercio manual rápido: Trabajando con órdenes abiertas y órdenes pendientes

Instrumental para el comercio manual rápido: Trabajando con órdenes abiertas y órdenes pendientes

En este artículo, ampliaremos las posibilidades del instrumental, añadiremos al mismo las capacidades de abrir posiciones comerciales, y también crearemos un recuadro para registrar las órdenes abiertas y las órdenes pendientes con la posibilidad de editar las mismas.
Las Tablas Electrónicas en MQL5
Las Tablas Electrónicas en MQL5

Las Tablas Electrónicas en MQL5

El artículo describe una clase de matrices dinámicas bidimensionales que contienen los diferentes tipos de datos en su primera dimensión. Es conveniente almacenar los datos en forma de tablas para poder resolver una gran variedad de problemas de disposición, almacenamiento y funcionamiento con información de diferentes clases. El código fuente de la clase que implementa la funcionalidad de trabajar con tablas está adjunto al artículo.
A la caza de la tendencia
A la caza de la tendencia

A la caza de la tendencia

El presente artículo describe un algoritmo para aumentar el volumen de una operación ganadora. Se adjunta la implementación correspondiente en el lenguaje MQL4.
Desarrollo del tester de estrategia limit para probar un AE hedge
Desarrollo del tester de estrategia limit para probar un AE hedge

Desarrollo del tester de estrategia limit para probar un AE hedge

Una idea para probar la Asesor experto hedge utilizando el tester de estrategia.
Patrones disponibles al comerciar con cestas de divisas. Parte III
Patrones disponibles al comerciar con cestas de divisas. Parte III

Patrones disponibles al comerciar con cestas de divisas. Parte III

Este es el artículo final dedicado a los patrones que aparecen al comerciar con cestas de parejas de divisas. Se han analizado varios indicadores combinados de tendencia, así como la aplicación de las construcciones gráficas habituales.
¿Quién es quién en MQL5.community?
¿Quién es quién en MQL5.community?

¿Quién es quién en MQL5.community?

¡La página MQL5.com recuerda perfectamente a cada uno de ustedes! Cuántas de sus operaciones han resultado épicas, cuán populares han resultado sus artículos y con cuánta frecuencia se han descargado sus programas del Code Base, es sólo una pequeña parte de lo que recuerda sobre usted MQL5.com. Los logros de cada uno de ustedes están disponibles en su perfil, pero ¿qué aspecto tiene la imagen en general? En este artículo construiremos una imagen general de los logros de todos los participantes de MQL5.community.
Control gráfico de los parámetros externos de los indicadores
Control gráfico de los parámetros externos de los indicadores

Control gráfico de los parámetros externos de los indicadores

Las variables externas de los indicadores se controlan utilizando una ventana especial en la que los parámetros se puede cambiar y el indicador tiene que iniciarse de nuevo. El inconveniente obvio de estas manipulaciones han aumentado la necesidad de mostrar los parámetros necesarios en la pantalla y controlar el indicador gráficamente.
Canales. Modelos avanzados. Ondas Wolfe
Canales. Modelos avanzados. Ondas Wolfe

Canales. Modelos avanzados. Ondas Wolfe

El artículo describe las reglas de fabricación de patrones de las Ondas Wolfe. Aquí encontrará los detalles de construcción y reglas para una fabricación precisa, lo que ayuda a encontrar las formaciones correctas de las ondas de forma rápida y correcta.