Artículos sobre programación y uso de robots comerciales en el lenguaje MQL5

icon

Los Asesores Expertos creados para la plataforma MetaTrader ejecutan una gran variedad de funciones ideadas por sus desarrolladores. Los robots comerciales son capaces de realizar el seguimiento de los instrumentos financieros 24 horas al día, copiar las operaciones, confeccionar y enviar los informes, analizar las noticias, e incluso facilitar al operador una interfaz gráfica personalizada desarrollada por encargo.

Los artículos contienen las técnicas de programación, ideas matemáticas para el procesamiento de datos, consejos para la creación y el encargo de robots comerciales.

Nuevo artículo
últimas | mejores
El poder del ZigZag (Parte I). Desarrollando la clase base del indicador
El poder del ZigZag (Parte I). Desarrollando la clase base del indicador

El poder del ZigZag (Parte I). Desarrollando la clase base del indicador

Muchos investigadores no prestan la atención suficiente a la definición del comportamiento de los precios. En este caso, además, se usan métodos complejos que con frecuencia son simplemente «cajas negras», tales como: aprendizaje de máquinas o redes neuronales. En estos casos, lo más importante es: «¿Qué datos suministrar a la entrada para el entrenamiento de este u otro modelo?»
Uso práctico de las redes neuronales de Kohonen en el trading algorítmico (Parte II) Optimización y previsión
Uso práctico de las redes neuronales de Kohonen en el trading algorítmico (Parte II) Optimización y previsión

Uso práctico de las redes neuronales de Kohonen en el trading algorítmico (Parte II) Optimización y previsión

A base de las herramientas universales para el trabajo con las redes de Kohonen, se construye un sistema del análisis y la selección de los parámetros óptimos del EA, así como se considera la previsión de las series temporales. En la primera parte, corregimos y mejoramos las clases de redes neuronales disponibles públicamente, completándolas con algoritmos necesarios. Ahora ha llegado el momento para aplicarlas en la práctica.
Martingale como base de una estrategia comercial a largo plazo
Martingale como base de una estrategia comercial a largo plazo

Martingale como base de una estrategia comercial a largo plazo

En este artículo, vamos a analizar con detalle el sistema martingale. Estudiaremos la posibilidad de aplicarlo, y cómo hacerlo de tal forma que reduzcamos los riesgos al mínimo. La principal desventaja de este sencillo sistema es la probabilidad de perder todo el depósito. Y usted debe tener este hecho en cuenta a la hora de comerciar, si es que finalmente decide usar dicho sistema de trading.
Uso práctico de las redes neuronales de Kohonen en el trading algorítmico (Parte I) Instrumental
Uso práctico de las redes neuronales de Kohonen en el trading algorítmico (Parte I) Instrumental

Uso práctico de las redes neuronales de Kohonen en el trading algorítmico (Parte I) Instrumental

El presente artículo desarrolla la idea del uso de redes de Kohonen en MetaTrader 5 que fue abordada en algunas publicaciones anteriores. Las clases corregidas y mejoradas proporcionan el instrumental para solucionar las tareas prácticas.
Aplicando el método de Montecarlo al aprendizaje por refuerzo
Aplicando el método de Montecarlo al aprendizaje por refuerzo

Aplicando el método de Montecarlo al aprendizaje por refuerzo

Aplicación de Reinforcement learning para el desarrollo de expertos autodidactas. En el artículo anterior ya nos familiarizamos con el algoritmo de Random Decision Forest y escribimos un sencillo experto autodidacta basado en Reinforcement learning (aprendizaje por refuerzo). Se destacaron las principales ventajas de este enfoque, tales como la sencillez de escritura del algoritmo comercial y la alta velocidad de entrenamiento. El aprendizaje por refuerzo (en lo sucesivo AR) se implementa fácilmente en cualquier experto comercial y aumenta su velocidad de optimización.
Optimización separada de una estrategia en condiciones de tendencia y flat
Optimización separada de una estrategia en condiciones de tendencia y flat

Optimización separada de una estrategia en condiciones de tendencia y flat

En el artículo se analizará el uso del método de optimización separada en diferentes estados del mercado. La optimización separada consiste en la definición de los parámetros ideales de un sistema comercial con la ayuda de la optimización de manera separada para la tendencia ascendente y descendente. Para reducir el efecto de las señales falsas y mejorar la rentabilidad, los sistemas se hacen flexibles, es decir, poseen un cierto conjunto de ajustes o datos de entrada, hecho que se ve totalmente justificado por el comportamiento de un mercado en cambio constante.
Cómo crear y testear personalmente los instrumentos de la Bolsa de Moscú en MetaTrader 5
Cómo crear y testear personalmente los instrumentos de la Bolsa de Moscú en MetaTrader 5

Cómo crear y testear personalmente los instrumentos de la Bolsa de Moscú en MetaTrader 5

En este artículo, se describe cómo se puede crear su propio símbolo de un instrumento de la bolsa de valores usando el lenguaje MQL5. En particular, se puede utilizar las cotizaciones bursátiles del sitio web popular «Finam.ru». Otra opción considerada es la posibilidad de trabajar con un formato aleatorio de los archivos de texto usados para crear un símbolo personalizado. Por esa razón, podemos trabajar con cualquier instrumento financiero y fuente de datos. Después de crear un símbolo personalizado, podemos usar todas las posibilidades del Simulador de Estrategias de MetaTrader 5 para testear los algoritmos comerciales para los instrumentos bursátiles.
Patrones de reversión: Testeando el patrón "Cabeza-Hombros"
Patrones de reversión: Testeando el patrón "Cabeza-Hombros"

Patrones de reversión: Testeando el patrón "Cabeza-Hombros"

El presente artículo es una continuación lógica del artículo anterior «Patrones de viraje: poniendo a prueba el patrón Pico/Valle doble». Ahora vamos a considerar otro patrón de reversión bastante bien conocido, llamado «Cabeza- Hombros», compararemos la eficacia del trading de ambos patrones e intentaremos combinar el trading con estos dos patrones en un sistema comercial único.
Reversión: creando un punto de entrada y escribiendo un algoritmo de comercio manual
Reversión: creando un punto de entrada y escribiendo un algoritmo de comercio manual

Reversión: creando un punto de entrada y escribiendo un algoritmo de comercio manual

Este es el último artículo de la serie dedicada a la estrategia comercial de la reversión. En él intentaremos solucionar un problema que ha provocado inestabilidad en los resultados de la simulación en los anteriores artículos. Asimismo, escribiremos y simularemos nuestro propio algoritmo para el comercio manual en cualquier mercado con la ayuda de la reversión.
Aplicación de OpenCL para simular patrones de velas
Aplicación de OpenCL para simular patrones de velas

Aplicación de OpenCL para simular patrones de velas

En este artículo analizaremos el algoritmo de implementación de un simulador de patrones de velas en el lenguaje OpenCL en el modo "OHLC en M1". Asimismo, compararemos su rapidez con el simulador de estrategias incorporado en el modo de optimización rápida y lenta.
WebRequest multiflujo asincrónico en MQL5
WebRequest multiflujo asincrónico en MQL5

WebRequest multiflujo asincrónico en MQL5

En el artículo se analiza una biblioteca que permite aumentar la efectividad del trabajo con solicitudes HTTP en MQL5. La ejecución de WebRequest en el modo no bloqueante se ha implementado en flujos adicionales usando gráficos y expertos auxiliares, intercambio de eventos personalizados y lectura de recursos compartidos. Se adjuntan los códigos fuente.
Las 100 mejores pasadas de optimización (Parte 1). Creando un analizador de optimizaciones
Las 100 mejores pasadas de optimización (Parte 1). Creando un analizador de optimizaciones

Las 100 mejores pasadas de optimización (Parte 1). Creando un analizador de optimizaciones

En este artículo hablaremos sobre cómo crear una aplicación para seleccionar las mejores pasadas de optimización según varias opciones posibles. Esta aplicación sabe filtrar y clasificar los resultados de optimización según multitud de coeficientes. Las pasadas de optimización se registran en una base de datos, por eso usted siempre podrá seleccionar nuevos parámetros de trabajo sin tener que reoptimizar. Además, esto permite ver todas las pasadas de optimización en un único gráfico, calcular los coeficientes VaR paramétricos y construir el gráfico de distribución normal de las pasadas y resultados de comercio de la variante de combinación de coeficientes seleccionada. Asimismo, se construyen los gráficos de algunos de los coeficientes en una dinámica, comenzando desde el momento de inicio de la optimización (o desde una fecha seleccionada hasta otra fecha seleccionada).
Reversión: disminuyendo la reducción máxima y simulando otros mercados
Reversión: disminuyendo la reducción máxima y simulando otros mercados

Reversión: disminuyendo la reducción máxima y simulando otros mercados

En este artículo continuaremos analizando el tema de la reversión. Intentaremos disminuir la reducción máxima del balance hasta un nivel aceptable con los instrumentos analizados anteriormente. También vamos a comprobar si se reduce el beneficio obtenido. Asimismo, comprobaremos cómo funciona la reversión en otros mercados, tales como los mercados de valores, materias primas, índices y ETF, agrario. ¡Atención, el artículo contiene muchas imágenes!
Patrones de viraje: Poniendo a prueba el patrón "Pico/valle doble"
Patrones de viraje: Poniendo a prueba el patrón "Pico/valle doble"

Patrones de viraje: Poniendo a prueba el patrón "Pico/valle doble"

En la práctica del comercio, los tráders buscan con frecuencia los puntos de viraje de tendencia, puesto que precisamente en el momento en el que surge una tendencia, el precio tiene el mayor potencial de movimiento. Precisamente por ello, en la práctica del análisis técnico se analizan diferentes patrones de viraje. Uno de los más famosos y más utilizados en el patrón del pico/valle doble. En este artículo ofrecemos una variante de detección automática del patrón, y también ponemos a prueba su rentabilidad con datos históricos.
Gap - ¿una estrategia rentable o 50/50?
Gap - ¿una estrategia rentable o 50/50?

Gap - ¿una estrategia rentable o 50/50?

La investigación de la aparición de gaps se relaciona con la situación en la que se da una diferencia sustancial entre el precio de cierre del marco temporal anterior y el precio de apertura del siguiente, así como en la dirección en la que irá la barra diaria. Uso de la función DLL GetOpenFileName de sistema.
Optimización automática de EAs en MetaTrader 5
Optimización automática de EAs en MetaTrader 5

Optimización automática de EAs en MetaTrader 5

En este artículo se describe el mecanismo de auto-optimización de un experto que funcione en MetaTrader 5.
Métodos de control remoto de EAs
Métodos de control remoto de EAs

Métodos de control remoto de EAs

La principal ventaja de los robots comerciales es su funcionamiento ininterrumpido las 24 horas del día en un servidor VPS remoto. Pero a veces es necesario intervenir en su funcionamiento manualmente, y ahora no disponemos de acceso directo al servidor. ¿Podemos gestionar de forma remota el funcionamiento del asesor? En este artículo se presenta una de las variantes de control de robots a través de comandos externos.
Reversión: ¿es el Santo Grial o una peligrosa equivocación?
Reversión: ¿es el Santo Grial o una peligrosa equivocación?

Reversión: ¿es el Santo Grial o una peligrosa equivocación?

En el presente artículo intentaremos aclarar lo siguiente: ¿qué es una reversión, si merece la pena usarla y si podemos mejorar nuestra estrategia comercial a través de ella? Vamos a crear un Asesor Experto, y veremos en los datos históricos qué indicadores convienen mejor para la reversión, además, si podemos usarla sin indicadores como un sistema comercial independiente. Veremos si es posible convertir un sistema comercial no rentable en un sistema rentable a través de la reversión.
Modelo de continuación de movimiento - búsqueda en el gráfico y estadísticas de ejecución
Modelo de continuación de movimiento - búsqueda en el gráfico y estadísticas de ejecución

Modelo de continuación de movimiento - búsqueda en el gráfico y estadísticas de ejecución

En este artículo vamos a describir la definición programática de uno de los modelos de continuación del movimiento. La base del trabajo viene constituida por dos ondas: la principal y la de corrección. Como extremos se usarán fractales, además de los llamados fractales potenciales, los extremos que no se han formado aún como fractales.
Usando indicadores para la optimización RealTime de EAs
Usando indicadores para la optimización RealTime de EAs

Usando indicadores para la optimización RealTime de EAs

No es ningún secreto que el éxito del funcionamiento de cualquier robot comercial depende de la correcta elección de sus parámetros (su optimización). Pero los parámetros óptimos para un intervalo temporal no siempre resultan los mejores en otro intervalo de la historia. Con frecuencia, asesores que son rentables en la simulación, dan pérdidas en tiempo real. Aquí nos surje la pregunta concerniente a la necesidad de optimizar continuamente. Allá donde aparece mucho trabajo rutinario, el hombre busca la forma de automatizarlo. En este artículo proponemos nuestro enfoque particular para solucionar esta tarea.
Combinando una estrategia de tendencia y una de flat
Combinando una estrategia de tendencia y una de flat

Combinando una estrategia de tendencia y una de flat

Existen diferenets estrategias comerciales. Unas buscan la dirección del movimiento y comercian según la tendencia. Otras definen los intervalos de las oscilaciones de precio y comercian dentro de estos corredores. Así que nos surge la pregunta, ¿podemos combinar los dos enfoques para aumentar la rentabilidad de nuestro comercio?
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.
Integración de un experto en MQL y bases de datos (SQL Server, .NET y C#)
Integración de un experto en MQL y bases de datos (SQL Server, .NET y C#)

Integración de un experto en MQL y bases de datos (SQL Server, .NET y C#)

El artículo describe cómo añadir a los expertos en MQL5 la posibilidad de trabajar con el servidor de bases de datos Microsoft SQL Server. Usaremos la importación de funciones de DLL. Para crear la DLL, se utilizará la plataforma Microsoft .NET y el lenguaje C#. Los métodos utilizados en el artículo, aunque con algunos cambios poco significativos, funcionan también para los expertos escritos en MQL4.
Neuroredes profundas (Parte VIII). Aumentando la calidad de la clasificación de los conjuntos bagging
Neuroredes profundas (Parte VIII). Aumentando la calidad de la clasificación de los conjuntos bagging

Neuroredes profundas (Parte VIII). Aumentando la calidad de la clasificación de los conjuntos bagging

En el artículo se analizan tres métodos con cuya ayuda podemos aumentar la calidad de clasificación de los conjuntos bagging y valorar su efectividad. Se ha evaluado cómo influye la optimización de los hiperparámetros de las redes neuronales ELM y los parámetros de post-procesado en la calidad de clasificación del conjunto.
50 000 trabajos ejecutados en la bolsa Freelance de MQL5.com
50 000 trabajos ejecutados en la bolsa Freelance de MQL5.com

50 000 trabajos ejecutados en la bolsa Freelance de MQL5.com

Hasta el mes de octubre de 2018, los participantes del servicio Freelance oficial para las plataformas MetaTrader han ejecutado más de 50 000 encargos. Se trata de la bolsa más grande del mundo de trabajo a distancia para programadores de MQL: más de mil desarrolladores, decenas de nuevos encargos diarios por parte de tráders y localización en 7 idiomas.
Análisis comparativo de 10 estrategias de flat
Análisis comparativo de 10 estrategias de flat

Análisis comparativo de 10 estrategias de flat

En el artículo se analizan las ventajas y desventajas del comercio con flat (mercado plano). Asimismo, se han creado y probado 10 estrategias basadas en el monitoreo del movimiento del precio dentro del canal. Cada estrategia está provista de un mecanismo de filtrado, para descartar las señales falsas de entrada en el mercado.
Experto comercial con interfaz gráfica: Llenando la funcionalidad (Parte II)
Experto comercial con interfaz gráfica: Llenando la funcionalidad (Parte II)

Experto comercial con interfaz gráfica: Llenando la funcionalidad (Parte II)

Tiene ante usted la segunda parte del artículo sobre la creación de un experto de señal multisímbolo para el comercio manual. Ya hemos creado la interfaz gráfica. En esta parte del artículo hablaremos sobre cómo conectar dicha interfaz con la funcionalidad del programa necesario.
14 000 robots comerciales en MetaTrader Market
14 000 robots comerciales en MetaTrader Market

14 000 robots comerciales en MetaTrader Market

En la mayor tienda de aplicaciones comerciales ya tiene a su disposición 13 970 productos. Entre ellos, encontrará 4 800 robots, 6 500 indicadores, 2 400 utilidades y otras soluciones. En este caso, además, la mitad de las aplicaciones (6 000) se pueden alquilar. Una cuarta parte del total de los productos (3 800) es de acceso gratuito.
Experto comercial con interfaz gráfica: Creación del panel (Parte I)
Experto comercial con interfaz gráfica: Creación del panel (Parte I)

Experto comercial con interfaz gráfica: Creación del panel (Parte I)

A pesar de que muchos tráders hasta ahora prefieren el comercio manual, resultará difícil evitar la automatización de operaciones rutinarias en nuestro caso. En el artículo se muestra la creación de un experto de señal multisímbolo para el comercio manual.
Neuroredes profundas (Parte VII). Conjunto de neuroredes: stacking
Neuroredes profundas (Parte VII). Conjunto de neuroredes: stacking

Neuroredes profundas (Parte VII). Conjunto de neuroredes: stacking

Continuamos construyendo conjuntos. Ahora vamos a añadir al conjunto bagging creado anteriormente un combinador entrenable: una red neuronal profunda. Una red neuronal combina las mejores 7 salidas del conjunto después de la poda. La segunda recibe en la entrada las 500 salidas del conjunto, las poda y las combina. Construiremos las redes neuronales con la ayuda del paquete keras/TensorFlow de Python. Veremos brevemente las posibilidades del paquete. Y finalmente, realizaremos la simulación y compararemos la calidad de la clasificación de los conjuntos bagging y stacking.
Constructor gráfico de estrategias. Creando robots comerciales sin programación
Constructor gráfico de estrategias. Creando robots comerciales sin programación

Constructor gráfico de estrategias. Creando robots comerciales sin programación

En este artículo se describe el constructor gráfico de estrategias. Se muestra como cualquier usuario puede crear los robots comerciales y las utilidades sin aplicar las técnicas de programación. Se puede simular los Asesores Expertos creados en el Probador de Estrategias, optimizarlos en la nube e iniciarlos en el gráfico en tiempo real.
Cómo transferir los cálculos de cualquier indicador al código de un asesor experto
Cómo transferir los cálculos de cualquier indicador al código de un asesor experto

Cómo transferir los cálculos de cualquier indicador al código de un asesor experto

Las razones para transferir el código de un indicador a un asesor pueden ser muchas. ¿Cómo valorar las ventajas y desventajas de este enfoque? En este artículo ofrecemos una tecnología para transferir el código del indicador a un asesor. Asimismo, se han realizado varios experimentos para evaluar la velocidad de funcionamiento del asesor.
Neuroredes profundas (Parte VI). Conjunto de clasificadores de redes neuronales: bagging
Neuroredes profundas (Parte VI). Conjunto de clasificadores de redes neuronales: bagging

Neuroredes profundas (Parte VI). Conjunto de clasificadores de redes neuronales: bagging

Vamos a ver los métodos de construcción y entrenamiento de conjuntos de redes neuronales con la estructura bagging. También vamos a definir las peculiaridades de la optimización de los hiperparámetros de los clasificadores de redes neuronales individuales que componen el conjunto. Asimismo, compararemos la calidad de la red neuronal optimizada obtenida en el artículo anterior de la serie, y el conjunto creado de redes neuronales. Para finalizar, analizaremos las diferentes opciones para mejorar aún más la calidad de clasificación del conjunto.
Random Decision Forest en el aprendizaje reforzado
Random Decision Forest en el aprendizaje reforzado

Random Decision Forest en el aprendizaje reforzado

Random Forest (RF) (en castellano, Bosques Aleatorios) con aplicación del bagging es uno de los métodos del aprendizaje automático más fuerte, que cede un poco ante el boosting del gradiente (Potenciación del gradiente). En este artículo, se realiza el intento de desarrollar un sistema comercial autoenseñable, que toma decisiones a base de la experiencia adquirida de la interacción con el mercado.
Trabajando con los resultados de la optimización mediante la interfaz gráfica
Trabajando con los resultados de la optimización mediante la interfaz gráfica

Trabajando con los resultados de la optimización mediante la interfaz gráfica

Continuamos desarrollar el tema del procesamiento y el análisis de los resultados de la optimización. Ahora nuestra tarea consiste en seleccionar 100 mejores resultados de la optimización y mostrarlos en la tabla de la interfaz gráfica. Hagamos que el usuario obtenga el gráfico del balance de multisímbolos y de la reducción (drawdown) en gráficos separados seleccionando una fila de la tabla de los resultados de la optimización.
Creando un feed de noticias personalizado en MetaTrader 5
Creando un feed de noticias personalizado en MetaTrader 5

Creando un feed de noticias personalizado en MetaTrader 5

En el artículo se analiza la posibilidad de crear un feed de noticias flexible, que ofrecezca multitud de opciones para elegir el tipo de noticias y su fuente. El artículo muestra cómo se pueden integrar web API con el terminal MetaTrader 5.
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.
Optimización controlable: el método del recocido
Optimización controlable: el método del recocido

Optimización controlable: el método del recocido

En el simulador de estrategias de la plataforma comercial MetaTrader 5 solo existen dos variantes de optimización: la iteración completa de parámetros y el algoritmo genético. En este artículo se propone una nueva variante de optimización de estrategias comerciales: el método del recocido. Se muestra el algoritmo del método, su implementación y su método de inclusión en cualquier asesor. El algoritmo desarrollado se ha puesto a prueba con el asesor Moving Average.
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.
Neuroredes profundas (Parte V). Optimización bayesiana de los hiperparámetros de las DNN
Neuroredes profundas (Parte V). Optimización bayesiana de los hiperparámetros de las DNN

Neuroredes profundas (Parte V). Optimización bayesiana de los hiperparámetros de las DNN

En el artículo se analizan las posibilidades de la optimización bayesiana de los hiperparámetros de las neuroredes profundas obtenidas con diferentes formas de entrenamiento. Se compara la calidad de la clasificación de las DNN con los hiperparámetros óptimos en diferentes variedades de entrenamiento. Se ha comprobado mediante forward tests la profundidad de la efectividad de los hiperparámetros óptimos de la DNN. Se han definido los posibles campos de mejora de la calidad de la clasificación.