Artículos con ejemplos de programación en el lenguaje MQL5

icon

Le espera una gran variedad de diferentes artículos sobre la creación de indicadores y robots comerciales para la plataforma MetaTrader usando el lenguaje MQL5. Cada artículo va acompañado con los códigos fuente, Usted puede abrir e iniciarlos en el editor MetaEditor de una manera independiente.

Estos artículos serán útiles tanto para los principiantes en el trading automático, como para los operadores experimentados en la programación y el trading. Aquí encontrará no sólo los ejemplos, sino también las nuevas ideas.

Nuevo artículo
últimas | mejores
Simulador de estrategias personalizado basado en cálculos matemáticos rápidos
Simulador de estrategias personalizado basado en cálculos matemáticos rápidos

Simulador de estrategias personalizado basado en cálculos matemáticos rápidos

El artículo describe el proceso de construcción de un simulador de estrategias personalizado y un analizador de pasadas de optimización de creación propia. Después de leerlo, usted entenderá cómo funciona el modo de cálculos matemáticos y el mecanismo de los llamados frames; también aprenderá a preparar y cargar sus propios datos para los cálculos y a utilizar algoritmos eficientes para la compresión de los mismos. Además, este artículo será de interés para cualquier persona interesada en las distintas formas de almacenamiento de la información del usuario en un experto.
preview
Redes neuronales: así de sencillo

Redes neuronales: así de sencillo

Cada vez que hablamos de inteligencia artificial, en nuestra cabeza surgen todo tipo de ideas fantásticas, y nos parece que se trata de algo complicado e inalcanzable. Sin embargo, cada día oímos hablar de la inteligencia artificial en nuestra vida diaria. En las noticias se escribe con cada vez mayor frecuencia sobre los logros en el uso de redes neuronales. En el presente artículo, queremos mostrar al lector lo sencillo que puede resultar para cualquiera crear una red neuronal y usar los logros de la inteligencia artificial en el trading.
Escribir un Expert Advisor mediante la programación orientada a objetos de MQL5
Escribir un Expert Advisor mediante la programación orientada a objetos de MQL5

Escribir un Expert Advisor mediante la programación orientada a objetos de MQL5

Este artículo se centra en enfoque orientado a objetos para hacer lo que hicimos en el artículo "Guía paso a paso para escribir un Expert Advisor en MQL5 para principiantes" -creando un sencillo Expert Advisor. La mayoría de la gente piensa que esto es muy difícil, pero le quiero garantizar que al finalizar la lectura de este artículo, será capaz de escribir su propio Expert Advisor basado en la orientación a objetos.
Guía práctica de MQL5: Notificaciones sonoras para los eventos de trading de MetaTrader 5
Guía práctica de MQL5: Notificaciones sonoras para los eventos de trading de MetaTrader 5

Guía práctica de MQL5: Notificaciones sonoras para los eventos de trading de MetaTrader 5

En este artículo vamos a tratar el tema de la inclusión de archivos de sonido en el archivo del Asesor Experto y con ello añadir notificaciones sonoras a los eventos de trading. El hecho de que se incluyan los archivos significa que los archivos de sonido van a estar ubicados dentro del Asesor Experto. De modo que al proporcionar una versión compilada del Asesor Experto (*.ex5) a otro usuario, no tendrá que proporcionarle los archivos de sonido y explicarle dónde hay que guardarlos.
Búsqueda automática de divergencia y convergencia
Búsqueda automática de divergencia y convergencia

Búsqueda automática de divergencia y convergencia

En este artículo, se analizan diferentes tipos de divergencia: regular, oculta, ampliada, triple, cuádruple, convergencia, divergencia de las clases A, B y C. Se crea un indicador universal para buscar y visualizarlas en el gráfico.
Distribuciones de Probabilidad Estadística en MQL5
Distribuciones de Probabilidad Estadística en MQL5

Distribuciones de Probabilidad Estadística en MQL5

Este artículo trata las distribuciones de probabilidad (normal, log-normal, binomial, logística, exponencial, distribución Cauchy, distribución Student's t, distribución Laplace, distribución Poisson, distribución de Secante Hiperbólico, distribución Beta y Gamma) de variables aleatorias usadas en Estadísticas Aplicadas. También trata las clases para gestionar estas distribuciones.
Cómo crear una Tarea Técnica al encargar un indicador
Cómo crear una Tarea Técnica al encargar un indicador

Cómo crear una Tarea Técnica al encargar un indicador

Los tráders buscan leyes en el comportamiento del mercado que indiquen los momentos adecuados para realizar transacciones comerciales. Muy a menudo, el primer paso en el desarrollo de un sistema comercial es la creación de un indicador técnico que le ayude a ver en el gráfico de precios la información que necesita. Este artículo le ayudará a componer la Tarea Técnica para encargar un indicador.
Patrón de ruptura del canal
Patrón de ruptura del canal

Patrón de ruptura del canal

Como se sabe, los canales de precios se forman por las tendencias de precios. Una de las señales más fuertes del cambio de la tendencia es la ruptura del canal actual. En este artículo, yo propongo intentar automatizar el proceso de la búsqueda de las señales de este tipo, y ver si es posible formar su propia estrategia a base de eso.
Asesor Experto Multiplataforma: Stops Personalizados, Ausencia de Pérdidas y Trailing
Asesor Experto Multiplataforma: Stops Personalizados, Ausencia de Pérdidas y Trailing

Asesor Experto Multiplataforma: Stops Personalizados, Ausencia de Pérdidas y Trailing

En el artículo se discute la colocación de niveles stop personalizados en el asesor multiplataforma. Asimiso, se describe un método estrechamente relacionado con ellos, que ayuda a definir los cambios de los niveles stop a lo largo del tiempo.
Indicador universal RSI para operar simultáneamente en dos direcciones
Indicador universal RSI para operar simultáneamente en dos direcciones

Indicador universal RSI para operar simultáneamente en dos direcciones

Al desarrollar algoritmos comerciales topamos con frecuencia con un problema: ¿cómo determinar dónde comienza y dónde termina la tendencia/flat? En este artículo, vamos a intentar crear un indicador universal en el que conjugaremos señales para distintos tipos de estrategia. También intentaremos simplificar la obtención de señales para las transacciones comerciales en el experto. Asimismo, mostraremos un ejemplo de combinación de varios indicadores diferentes en uno.
Construimos el indicador Zigzag usando osciladores. Ejemplo de ejecución de la tarea técnica
Construimos el indicador Zigzag usando osciladores. Ejemplo de ejecución de la tarea técnica

Construimos el indicador Zigzag usando osciladores. Ejemplo de ejecución de la tarea técnica

En este artículo, se demuestra el desarrollo del indicador ZigZag de acuerdo con uno de los ejemplos de la tareas descrito en el artículo «Cómo crear una Tarea Técnica al encargar un indicador». El indicador se construye por los extremos que se definen a través del oscilador. En el indicador está prevista la posibilidad de usar uno de cinco osciladores a elegir: WPR, CCI, Chaikin, RSI, Stochastic Oscillator.
preview
OpenCL: De una programación simple a una más intuitiva

OpenCL: De una programación simple a una más intuitiva

Este artículo se centra en algunas capacidades de optimización que surgen cuando se tiene en cuenta el hardware subyacente en el que se ejecuta el kernel de OpenCL. Las cifras obtenidas están lejos de ser un límite pero aún así sugieren que al tener disponibles los recursos existentes aquí y ahora (la API de OpenCL como se implementó por los desarrolladores del terminal no permite el control de algunos parámetros importantes para la optimización, particularmente el tamaño del grupo) la ganancia de rendimiento sobre la ejecución del programa anfitrión es muy sustancial.
Cómo escribir un indicador basado en otro indicador
Cómo escribir un indicador basado en otro indicador

Cómo escribir un indicador basado en otro indicador

En MQL5 puedes escribir un indicador desde cero o a partir de otro indicador que ya existe, integrado en el terminal o personalizado. Aquí también hay dos maneras -para mejorar el indicador añadiéndole cálculos y estilos gráficos, o utilizar un indicador integrado en el terminal de cliente o uno personalizado mediante las funciones iCustom() o IndicatorCreate()
Qué comprobaciones debe superar un robot comercial antes de ser publicado en el Mercado
Qué comprobaciones debe superar un robot comercial antes de ser publicado en el Mercado

Qué comprobaciones debe superar un robot comercial antes de ser publicado en el Mercado

Antes de su publicación, todos los productos del Mercado pasan por una comprobación preliminar de carácter obligatorio, con objeto de proporcionar un estándar único de calidad. En este artículo hablaremos de los errores más frecuentes que cometen los desarrolladores en sus indicadores técnicos y robots comerciales. Asimismo, mostraremos cómo puede usted comprobar por sí mismo su producto antes de enviarlo al Mercado.
Cómo analizar las transacciones de la Señal elegida en el gráfico
Cómo analizar las transacciones de la Señal elegida en el gráfico

Cómo analizar las transacciones de la Señal elegida en el gráfico

El servicio de señales comerciales se desarrolla a pasos agigantados. A la hora de confiar nuestro dinero a un proveedor de señales, querríamos minimizar el riesgo de pérdida del depósito. Pero, ¿cómo aclararse entre semejante cantidad de señales? ¿Cómo encontrar precisamente aquella que nos reportará beneficios? En este artículo vamos a crear un método para analizar visualmente la historia de transacciones de las señales comrciales en el gráfico del instrumento.
Indicador para la representación del gráfico "ruptura en tres líneas"
Indicador para la representación del gráfico "ruptura en tres líneas"

Indicador para la representación del gráfico "ruptura en tres líneas"

El artículo está dedicado al gráfico "ruptura en tres líneas" (Three Line Break), propuesto por Steve Nison en «Más allá de las velas japonesas». La ventaja de este gráfico consiste en que con su ayuda se pueden filtrar oscilaciones de precios con respecto al movimiento anterior poco significativas. Vamos a echar un vistazo al principio de construción del gráfico, al código del indicador, así como a ejemplos de estrategias basadas en él.
Gestor de evento "Nueva barra"
Gestor de evento "Nueva barra"

Gestor de evento "Nueva barra"

El lenguaje de programación MQL5 es capaz de resolver problemas a un nuevo nivel. Incluso aquellas tareas que ya tienen soluciones, gracias a la programación orientada a objetos pueden subir a un nivel superior. En este artículo veremos un sencillo ejemplo sobre la comprobación de una nueva barra en un gráfico, transformada en una herramienta más potente y versátil. ¿Qué herramienta? Lo veremos en este artículo.
La implementación del análisis automático de las Ondas de Elliott en MQL5
La implementación del análisis automático de las Ondas de Elliott en MQL5

La implementación del análisis automático de las Ondas de Elliott en MQL5

Uno de los métodos más populares del análisis del mercado es el análisis de las ondas. Sin embargo, este proceso es bastante complejo lo que comporta el uso de herramientas adicionales. Una de estas herramientas es el marcador automático. En este artículo se describe el proceso de creación del analizador automático de las Ondas de Elliott en el lenguaje MQL5.
Gráfico del balance de multisímbolos en MetaTrader 5
Gráfico del balance de multisímbolos en MetaTrader 5

Gráfico del balance de multisímbolos en MetaTrader 5

En este artículo, se muestra el ejemplo de la aplicación MQL con la interfaz gráfica en la que se muestran los gráficos del balance de multisímbolos y reducción del depósito según los resultados de la última prueba.
Fundamentos de programación en MQL5 - Cadenas de caracteres
Fundamentos de programación en MQL5 - Cadenas de caracteres

Fundamentos de programación en MQL5 - Cadenas de caracteres

Este artículo se ocupa de todo lo que se puede hacer con las cadenas de caracteres en el lenguaje MQL5. El artículo puede ser interesante en primer lugar para los principiantes que se han puesto a estudiar la programación en MQL5. Mientras que los programadores experimentados tienen una buena oportunidad de generalizar y sistematizar sus conocimientos.
Introducción a la teoría de la Lógica difusa
Introducción a la teoría de la Lógica difusa

Introducción a la teoría de la Lógica difusa

La lógica difusa extiende los límites habituales de la lógica matemática y teoría de conjuntos. En este artículo se muestran principales principios de esta teoría, así como se describen dos sistemas de inferencia lógica difusa tipo Mamdani y Sugeno. Se dan los ejemplos de implementación de los modelos difusos a base de estos dos sistemas usando los medios de la biblioteca FuzzyNet para MQL5.
Métodos para medir la velocidad del movimiento del precio
Métodos para medir la velocidad del movimiento del precio

Métodos para medir la velocidad del movimiento del precio

Existen diferentes enfoques para estudiar y analizar los mercados, pero los principales son dos: técnico y fundamental. En el primer caso, se realiza la recopilación, el procesamiento y el estudio de algunos datos numéricos y de las características relacionadas con el mercado: precio, volúmenes, etc. En el segundo, se realiza el análisis de los eventos y noticias, que, a su vez, influyen directa o indirectamente en los mercados. En el presente artículo, se consideran los métodos para medir la velocidad del movimiento del precio y el estudio de estrategias comerciales basadas en ellos.
Sistema secuencial de Tom DeMark (TD SEQUENTIAL) con uso de inteligencia artificial
Sistema secuencial de Tom DeMark (TD SEQUENTIAL) con uso de inteligencia artificial

Sistema secuencial de Tom DeMark (TD SEQUENTIAL) con uso de inteligencia artificial

En este artículo voy a contar sobre cómo se puede tradear con éxito aplicando la «hibridación» de una estrategia muy famosa y una red neuronal. Se trata de la estrategia de Tom DeMark «Sistema secuencial» (TD Sequential), con aplicación de la inteligencia artificial. Nosotros vamos a trabajar SÓLO con la primera parte de la estrategia, usando las señales «Disposición» y «Intersección».
Cambiar los Parámetros del Asesor Experto desde el Panel de Usuario "Sobre la Marcha"
Cambiar los Parámetros del Asesor Experto desde el Panel de Usuario "Sobre la Marcha"

Cambiar los Parámetros del Asesor Experto desde el Panel de Usuario "Sobre la Marcha"

Este artículo facilita un pequeño ejemplo que demuestra la implementación de un Asesor Experto cuyos parámetros se pueden controlar desde el panel de usuario. Al cambiar los parámetros "sobre la marcha", el Asesor Experto escribe los valores obtenidos del panel de información a un archivo para seguir leyéndolos desde el archivo y mostrarlos de la forma correspondiente en el panel. Este artículo podría ser relevante para aquellos que realizan operaciones de trading manualmente o en modo semi-automático.
Interfaces gráficas V: Barra de desplazamiento vertical y horizontal (Capítulo 1)
Interfaces gráficas V: Barra de desplazamiento vertical y horizontal (Capítulo 1)

Interfaces gráficas V: Barra de desplazamiento vertical y horizontal (Capítulo 1)

Seguimos analizando el proceso de desarrollo de la librería para la creación de las interfaces gráficas en el entorno de los terminales de trading MetaTrader. En el primer capítulo de la quinta parte de la serie vamos a desarrollar las clases para la creación de los controles como las barras de desplazamiento verticales y horizontales.
Principios de programación en MQL5: Archivos
Principios de programación en MQL5: Archivos

Principios de programación en MQL5: Archivos

Artículo y estudio práctico sobre el trabajo con archivos en MQL5. Lea el artículo, ejecute las sencillas tareas, y al final usted conseguirá no solo conocimientos teóricos, sino también habilidades prácticas para trabajar con archivos en MQL5.
El patrón Bandera
El patrón Bandera

El patrón Bandera

En el artículo se estudiarán los patrones de Bandera, Banderín, Cuña, Formación en Rectángulo, Triángulo decreciente, Triángulo creciente. Se analizarán sus semejanzas y diferencias, se crearán indicadores para su búsqueda en el gráfico y un indicador-probador para evaluar rápidamente su efectividad.
Cómo desarrollar y depurar rápidamente cualquier estrategia de scalping en MetaTrader 5
Cómo desarrollar y depurar rápidamente cualquier estrategia de scalping en MetaTrader 5

Cómo desarrollar y depurar rápidamente cualquier estrategia de scalping en MetaTrader 5

Los sistemas automáticos de scalping se consideran por derecho propio la cima del trading automático, y precisamente por ello, son a la vez los más complejos a la hora de escribir el código. En este artículo vamos a mostrar cómo se pueden construir estrategias basadas en el análisis de ticks entrantes con la ayuda de los recursos de depuración incorporados y de la simulación visual. Para desarrollar las reglas de entrada y salida con frecuencia se necesitan años de comercio manual. Pero con la ayuda de MetaTrader 5 usted podrá comprobar cualquier estrategia similar en la historia real.
Cómo llamar a los indicadores en MQL5
Cómo llamar a los indicadores en MQL5

Cómo llamar a los indicadores en MQL5

Con la nueva versión del lenguaje de programación MQL no solo ha cambiado la forma de trabajar con los indicadores, sino que también hay nuevas formas de crearlos. Además, dispone de mayor flexibilidad al trabajar con buffers de indicadores, ya que ahora es posible indicar la dirección de indexado y obtener exactamente el número de indicadores que desee. Este artículo explica los métodos básicos para llamar a los indicadores y obtener los datos a partir del buffer de cada indicador.
Crear un Indicador con Buffers de Indicador Múltiples para Principiantes
Crear un Indicador con Buffers de Indicador Múltiples para Principiantes

Crear un Indicador con Buffers de Indicador Múltiples para Principiantes

Los códigos complejos consisten en un conjunto de códigos sencillos. Si está familiarizado con ellos, no resulta tan complicado. En este artículo, consideraremos cómo crear un indicador con buffers de indicador múltiples. Como ejemplo se analizará en detalle el indicador Aroon y se presentarán dos versiones diferentes del código.
Ondas de Wolfe
Ondas de Wolfe

Ondas de Wolfe

El método gráfico propuesto por Bill Wolfe permite no solo mostrar una figura y definir al mismo tiempo el momento y la dirección de la entrada, sino también sincronizar el objetivo que deberá alcanzar el precio y el tiempo de dicho alcance. En el artículo se describe cómo sobre la base del indicador Zigzag se puede crear un indicador para la búsqueda de las ondas de Wolfe y un sencillo asesor que comercie según sus señales.
Guía para escribir un DLL para MQL en Delphi
Guía para escribir un DLL para MQL en Delphi

Guía para escribir un DLL para MQL en Delphi

En este artículo examinaremos el mecanismo para crear un módulo DLL usando el popular lenguaje de programación de ObjectPascal dentr del entorno de programación de Delphi. Los materiales que se facilitan en este artículo están diseñados para dirigirse a programadores principiantes que trabajan con problemas que superan las barreras del lenguaje de programación incrustado de MQL5 conectando los módulos DLL externos.
Visualizar una estrategia en el simulador de Meta Trader 5
Visualizar una estrategia en el simulador de Meta Trader 5

Visualizar una estrategia en el simulador de Meta Trader 5

Todos conocemos el refrán "mejor verlo una vez que oírlo cien veces". Podemos leer varios libros sobre París o Venecia, pero basándonos solo en nuestra imaginación no podemos vivir la misma experiencia que si diésemos un paseo al atardecer por estas magníficas ciudades. La ventaja de la visualización puede aplicarse fácilmente a cualquier otro aspecto de nuestras vidas, incluso el trabajo en el mercado de valores, por ejemplo, cuando analizamos los gráficos de precios usando indicadores y, por supuesto, visualizando el probador de estrategia. Este artículo describe las características de visualización del simulador de Meta Trader 5.
Zigzag universal
Zigzag universal

Zigzag universal

El Zigzag es uno de los indicadores más populares entre los usuario de MetaTrader 5. En este artículo se han analizado las posibilidades de creación de diferentes versiones del Zigzag. Como resultado, obtenemos un indicador universal con amplias posibilidades para la ampliación de la funcionalidad, el cual es muy cómodo utilizar en el desarrollo de los Asesores Expertos y otros indicadores.
El histograma del precio (perfil del mercado) y su implementación en MQL5
El histograma del precio (perfil del mercado) y su implementación en MQL5

El histograma del precio (perfil del mercado) y su implementación en MQL5

El perfil del mercado fue desarrollado por un autor realmente brillante, Peter Steidlmayer. Este autor sugirió el uso de la representación alternativa de la información sobre los movimientos "horizontales" y "verticales" del mercado que llevan a un conjunto completamente diferente de modelos. Este autor asumió que hay un pulso subyacente o patrón fundamental en el mercado llamado el ciclo de equilibrio y desequilibrio. En este artículo veremos el histograma del precio, un modelo simplificado del perfil del mercado, y describiré su implementación en MQL5.
Indicadores personalizados para principiantes en MQL5
Indicadores personalizados para principiantes en MQL5

Indicadores personalizados para principiantes en MQL5

Cualquier materia parece complicada y difícil de aprender para un principiante. Materias que ahora nos parecen muy simples y claras. Pero no olvidemos que todos tenemos que aprender desde cero, incluso nuestro propio idioma. Lo mismo ocurre con el lenguaje de programación MQL5 que ofrece grandes posibilidades para desarrollar nuestras propias estrategias de trading. Podemos empezar a aprenderlo comenzando con nociones más básicas y los ejemplos más sencillos. En este artículo vamos a considerar la interacción de un indicador técnico con el terminal de cliente con un ejemplo de indicador personalizado SMA.
Algoritmos Genéticos: ¡Es fácil!
Algoritmos Genéticos: ¡Es fácil!

Algoritmos Genéticos: ¡Es fácil!

En este artículo, el autor habla sobre cálculos evolucionarios con el uso de un algoritmo genético personalmente desarrollado. Demuestra el funcionamiento de un algoritmo, usando ejemplos, y facilita recomendaciones prácticas para su uso.
MQL5: análisis y procesado de informes de la Comisión de Operaciones del Mercado de Futuros (CFTC) en MetaTrader 5
MQL5: análisis y procesado de informes de la Comisión de Operaciones del Mercado de Futuros (CFTC) en MetaTrader 5

MQL5: análisis y procesado de informes de la Comisión de Operaciones del Mercado de Futuros (CFTC) en MetaTrader 5

En este artículo vamos a desarrollar una herramienta para el análisis de informes de la CFTC (Commodity Futures Trading Commission). Vamos a resolver los siguientes problemas: desarrollar un indicador que permita el uso de los datos de los informes de la CFTC directamente de los archivos de datos suministrados por la Comisión sin necesidad de un procesado o conversión intermedia. Además puede usarse para diferentes finalidades: para trazar los datos como un indicador, para proceder con los datos en los demás indicadores, en los scripts para el análisis automatizado y en los Expert Advisors para su uso en las estrategias de trading.
OpenCL: El puente hacia mundos paralelos
OpenCL: El puente hacia mundos paralelos

OpenCL: El puente hacia mundos paralelos

A finales de enero de 2012 la empresa de desarrollo de software que está detrás de Meta Trader 5 anunció el soporte nativo de OpenCL en MQL5. Utilizando un ejemplo ilustrativo, el artículo plantea los fundamentos de programación en OpenCL en el entorno MQL5 y proporciona algunos ejemplos de la optimización simple del programa para incrementar la velocidad de operación.
Interfaces gráficas III: Botones simples y multifuncionales (Capítulo 1)
Interfaces gráficas III: Botones simples y multifuncionales (Capítulo 1)

Interfaces gráficas III: Botones simples y multifuncionales (Capítulo 1)

Vamos a comenzar el análisis del control como el botón. Vamos a mostrar los ejemplos de varias clases para la creación de un botón simple, un botón con funcionalidad ampliada (“botón con imagen” y “botón de división”), así como los botones interconectados (grupos de botones y “botones de opción”). Aparte de eso, vamos a introducir algunas adiciones en las clases ya existentes de los controles con el fin de ampliar sus posibilidades.