Artículos sobre simulación de estrategias en el lenguaje MQL5

icon

¿Cómo podemos desarrollar, escribir y probar una estrategia comercial, cómo podemos encontrar los parámetros óptimos del sistema y cómo podemos analizar los resultados obtenidos? La plataforma MetaTrader ofrece a los desarrolladores de robots comerciales un abanico de posibilidades para una comprobación rápida y precisa de las ideas comerciales.  Lea estos artículos para llegar a saber cómo probar los robots multidivisas y usar las posibilidades de MQL5 Cloud Network para la optimización.

A los desarrolladores de los sistemas automáticos de trading les recomendamos empezar a estudiar a partir de los fundamentos de la simulación y los algoritmos de generación de ticks en el Probador de Estrategias.

Nuevo artículo
últimas | mejores
preview
Técnicas útiles y exóticas para el comercio automático

Técnicas útiles y exóticas para el comercio automático

En el presente artículo, mostraremos algunos trucos muy útiles e interesantes para comerciar de forma automatizada. Alguna de estas técnicas podría resultar familiar al lector, o quizá no, pero intentaremos exponer los métodos más interesantes y explicar por qué merece la pena utilizarlos. Y lo que es más importante: mostraremos lo que pueden hacer en la práctica. Vamos a escribir asesores expertos y comprobar todas las técnicas descritas en la historia de cotizaciones.
preview
Desarrollo de un sistema de repetición — Simulación de mercado (Parte 23): FOREX (IV)

Desarrollo de un sistema de repetición — Simulación de mercado (Parte 23): FOREX (IV)

La creación ahora se realiza en el mismo punto en el que convertimos los ticks en barras. Así, si algo va mal durante la conversión, nos daremos cuenta del error enseguida. Esto se debe a que el mismo código que coloca las barras de 1 minuto en el gráfico cuando avanzamos rápidamente también se utiliza para el sistema de posicionamiento y para colocar las barras durante el avance normal. En otras palabras, el código responsable de esta tarea ya no se duplica en ningún lugar. De esta manera, tenemos un sistema mucho más adecuado tanto para el mantenimiento como para las mejoras.
preview
¿Cómo elegir correctamente un asesor en el Mercado?

¿Cómo elegir correctamente un asesor en el Mercado?

En este artículo, analiceremos los puntos a los que debemos prestar atención en primer lugar a la hora de comprar un asesor. También buscaremos formas de aumentar los beneficios y, lo que es más importante, de gastar el dinero de forma inteligente y seguir ganando con ello. Además, tras finalizar la lectura, comprenderá que puede ganar dinero incluso con productos simples y gratuitos.
Calidad de modelado de datos de un minuto
Calidad de modelado de datos de un minuto

Calidad de modelado de datos de un minuto

Calidad de modelado de datos de un minuto
Libro de Recetas MQL5: El Historial de Transacciones y la Biblioteca de Funciones para Obtener Propiedades de Posición
Libro de Recetas MQL5: El Historial de Transacciones y la Biblioteca de Funciones para Obtener Propiedades de Posición

Libro de Recetas MQL5: El Historial de Transacciones y la Biblioteca de Funciones para Obtener Propiedades de Posición

Es momento de resumir brevemente la información facilitada los artículos anteriores sobre propiedades de posición. En este artículo crearemos unas cuantas funciones adicionales para obtener las propiedades que solo se pueden conseguir tras acceder al historial de transacciones. También nos familiarizaremos con estructuras de datos que nos permitirán acceder a propiedades de posición y del símbolo de una forma más conveniente.
Utilización de la función TesterWithdrawal() para modelizar las retiradas de beneficio
Utilización de la función TesterWithdrawal() para modelizar las retiradas de beneficio

Utilización de la función TesterWithdrawal() para modelizar las retiradas de beneficio

En este artículo se describe la utilización de la función TesterWithDrawal() para estimar los riesgos en un sistema de trading que implica la retirada de cierta parte de los activos durante su funcionamiento. Además, describe cómo afecta esta función al algoritmo de cálculo de la reducción del patrimonio en el probador de estrategias. Esta función es muy útil durante la optimización de los parámetros de sus Asesores Expertos.
preview
Optimización móvil continua (Parte 2): Mecanismo de creación de informes de optimización para cualquier robot

Optimización móvil continua (Parte 2): Mecanismo de creación de informes de optimización para cualquier robot

Si el primer artículo de la serie estaba dedicado a la creación de la biblioteca DLL que utilizaremos en nuestro optimizador automático y en el robot, este estará completamente dedicado al lenguaje MQL5.
preview
Símbolo personalizados: fundamentos de uso en la práctica

Símbolo personalizados: fundamentos de uso en la práctica

El presente artículo está dedicado a la generación programática de los símbolos personalizados que sirven para mostrar varios métodos populares de representación de cotizaciones. Asimismo, ofrecemos una adaptación poco invasiva de asesores para comerciar con un símbolo real desde el gráfico del símbolo personalizado derivado. Los códigos fuente se adjuntan al artículo.
Libro de Recetas MQL5: Analizar Propiedades de Posición en el Probador de Estrategias de MetaTrader 5
Libro de Recetas MQL5: Analizar Propiedades de Posición en el Probador de Estrategias de MetaTrader 5

Libro de Recetas MQL5: Analizar Propiedades de Posición en el Probador de Estrategias de MetaTrader 5

En esta ocasión presentaremos una versión modificada del Asesor Experto del artículo anterior "MQL5 Cookbook: Position Properties on the Custom Info Panel" (“Propiedades de Posición en el Panel de Información Personalizada”). Algunos de los aspectos a los que nos referiremos incluyen la obtención de datos de barras, la comprobación de eventos de barra nueva en el símbolo actual, la inclusión de una clase de trading de la Biblioteca Estándar a un archivo, la creación de una función para buscar señales de trading, y una función para ejecutar operaciones de trading, así como para terminar eventos de trading en la función OnTrade().
LifeHack para tráders: indicadores de balance, reducción, carga y ticks durante la simulación
LifeHack para tráders: indicadores de balance, reducción, carga y ticks durante la simulación

LifeHack para tráders: indicadores de balance, reducción, carga y ticks durante la simulación

¿Cómo convertir la simulación en algo más visual? La respuesta es sencilla: hay que usar en el simulador uno o varios indicadores, un indicador de ticks, un indicador de balance y equidad, un indicador de reducción y carga del depósito. Esto permitirá realizar un seguimiento visual de la naturaleza de los ticks, o de los cambios de balance y equidad, o de la reducción y la carga del depósito.
Libro de Recetas MQL5: Desarrollo de un Marco de Trabajo para un Sistema de Trading Basado en la Estrategia de Triple Pantalla
Libro de Recetas MQL5: Desarrollo de un Marco de Trabajo para un Sistema de Trading Basado en la Estrategia de Triple Pantalla

Libro de Recetas MQL5: Desarrollo de un Marco de Trabajo para un Sistema de Trading Basado en la Estrategia de Triple Pantalla

En este artículo desarrollaremos un marco de trabajo para un sistema de trading basado en la estrategia de Triple Pantalla en MQL5. El Asesor Experto no se desarrollará de cero. En lugar de ello, simplemente modificaremos el programa del artículo anterior "MQL5 Cookbook: Using Indicators to Set Trading Conditions in Expert Advisors" (“Libro de Recetas MQL5: Usar Indicadores Para Configurar Condiciones de Trading en Asesores Expertos”), que sustancialmente ya vale para nuestros propósitos. El artículo también demostrará cómo se pueden modificar fácilmente los patrones de programas ya hechos.
preview
Aproximación por fuerza bruta a la búsqueda de patrones

Aproximación por fuerza bruta a la búsqueda de patrones

En este artículo buscaremos patrones en el mercado, crearemos asesores expertos usando estos como base y verificaremos cuánto tiempo dichos patrones siguen funcionando y, en general, si se mantienen.
preview
Gestionando el Horario (Parte 2): Funciones

Gestionando el Horario (Parte 2): Funciones

Determinando la compensación del bróker y la hora GMT de forma automática. En lugar de pedir ayuda a su bróker, de quien probablemente recibirá una respuesta insuficiente (quién estaría dispuesto a explicar dónde se ha metido la hora faltante), simplemente nos fijaremos en cómo estos calculan sus precios en las semanas de cambio horario, pero evitando engorrosos cálculos manuales: un programa se encargará de ello, después de todo, ¿para qué tenemos un PC?
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).
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.
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.
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.
Representación gráfica de las pruebas: El trading manual
Representación gráfica de las pruebas: El trading manual

Representación gráfica de las pruebas: El trading manual

Pruebas de estrategias manuales con el historial ¡Pruebe su algoritmo de trading sin ahondar en las complejidades de la programación!
preview
Optimización móvil continua (Parte 6): La lógica del optimizador automático y su estructura

Optimización móvil continua (Parte 6): La lógica del optimizador automático y su estructura

Describiendo la creación de la optimización móvil automática, al fin hemos llegado a la estructura interna del propio optimizador automático. Este artículo puede resultar útil a aquellos que deseen mejorar el proyecto creado, o bien quieran simplemente analizar la lógica de funcionamiento del programa. En el presente artículo, mostraremos con la ayuda de diagramas UML la estructura interna del proyecto y la interacción de los objetos. Asimismo, analizaremos el proceso de iniciación de las optimizaciones, aunque, por el momento, sin describir el proceso de implementación del optimizador.
Evaluando la efectividad de los sistemas comerciales mediante el análisis de sus componentes
Evaluando la efectividad de los sistemas comerciales mediante el análisis de sus componentes

Evaluando la efectividad de los sistemas comerciales mediante el análisis de sus componentes

En este artículo vamos a investigar la efectividad de los sistemas comerciales complejos mediante el análisis de la efectividad de sus componentes por separado. Cualquier análisis, sea de tipo gráfico, basado en indicadores o de cualquier otro tipo, es uno de los componentes clave para comerciar con éxito en los mercados financieros. Este artículo es una investigación sui generis de varios sistemas comerciales sencillos independientes, en la que se analiza su efectividad y la utilidad de su aplicación conjunta.
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.
Representación gráfica de las pruebas: Historial de las operaciones.
Representación gráfica de las pruebas: Historial de las operaciones.

Representación gráfica de las pruebas: Historial de las operaciones.

Este artículo describe la posibilidad de ver correctamente el historial de las operaciones durante la visualización de las pruebas.
Optimización de color de estrategias comerciales
Optimización de color de estrategias comerciales

Optimización de color de estrategias comerciales

En este artículo, vamos a realizar un experimento del coloreo de los resultados de la optimización. Como se sabe, el color se determina por tres parámetros: los niveles del color rojo, verde y azul (RGB en inglés, Red — rojo, Green — verde, Blue — azul). Hay otros métodos de codificar el color, pero igualmente se usan tres parámetros. Así, tres parámetros de la simulación pueden ser convertidos en un color que el trader percibe visualmente. Lea este artículo para averiguar si esta representación va a ser útil.
Gestión de la optimización (Parte 2): Creando los objetos clave y la lógica de la aplicación
Gestión de la optimización (Parte 2): Creando los objetos clave y la lógica de la aplicación

Gestión de la optimización (Parte 2): Creando los objetos clave y la lógica de la aplicación

Es la continuación del artículo anterior que describe la creación de la interfaz gráfica para gestionar la optimización. Aquí, vamos a considerar la lógica del funcionamiento de la extensión creada. Vamos a crear un envoltorio para el terminal MetaTrader 5 con el fin de iniciarlo como un proceso controlado usando C#. Además, vamos a analizar el trabajo con los archivos de configuración y archivos de los ajustes. La lógica del programa será dividida en dos partes: en la primera estarán descritos los métodos que se invocan después de pulsar algún botón, la segunda parte se encargará del inicio y de la gestión de la optimización.
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.
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.
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.
preview
Algoritmos de optimización de la población: Colonia de abejas artificiales (Artificial Bee Colony - ABC)

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

Hoy estudiaremos el algoritmo de colonia de abejas artificiales. 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.
Representación gráfica de las pruebas: Gráficos de estados de las cuentas
Representación gráfica de las pruebas: Gráficos de estados de las cuentas

Representación gráfica de las pruebas: Gráficos de estados de las cuentas

Disfrute del proceso de prueba con gráficos que muestran el balance: ¡ahora toda la información necesaria está siempre a la vista!
preview
Algoritmos de optimización de la población: Optimización del Lobo Gris (Grey Wolf Optimizer - GWO)

Algoritmos de optimización de la población: Optimización del Lobo Gris (Grey Wolf Optimizer - GWO)

Hoy analizaremos uno de los algoritmos de optimización más modernos: la Optimización del Lobo Gris. El original comportamiento de las funciones de prueba hace que este sea uno de los algoritmos más interesantes entre los analizados anteriormente. Uno de los líderes para la aplicación en el entrenamiento de redes neuronales y funciones suaves con muchas variables.
Probando las características y los límites de MetaTrader 4
Probando las características y los límites de MetaTrader 4

Probando las características y los límites de MetaTrader 4

Este artículo expone algunos detalles sobre las características y los límites del Probador de Estrategias de MetaTrader 4.
preview
Gradient boosting (CatBoost) en las tareas de construcción de sistemas comerciales. Un enfoque ingenuo

Gradient boosting (CatBoost) en las tareas de construcción de sistemas comerciales. Un enfoque ingenuo

Entrenamiento del clasificador CatBoost en el lenguaje Python, exportación al formato mql5; análisis de los parámetros del modelo y simulador de estrategias personalizado. Para preparar los datos y entrenar el modelo, se usan el lenguaje de programación Python y la biblioteca MetaTrader5.
preview
Valoración visual de los resultados de optimización

Valoración visual de los resultados de optimización

La conversación en este artículo se centrará en cómo crear gráficos para todas las pasadas de optimización y elegir el criterio personalizado óptimo. Y también sobre cómo, teniendo un conocimiento mínimo de MQL5 y un gran ánimo de trabajar, usando los artículos del sitio y los comentarios en el foro, podremos escribir lo que queramos.
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
Algoritmos de optimización de la población: Evolución diferencial (Differential Evolution, DE)

Algoritmos de optimización de la población: Evolución diferencial (Differential Evolution, DE)

En este artículo, hablaremos del algoritmo que muestra los resultados más controvertidos entre todos los anteriormente analizados, el algoritmo de Evolución Diferencial (DE).
preview
Algoritmos de optimización de la población: Algoritmo de optimización de cuco (Cuckoo Optimization Algorithm — COA)

Algoritmos de optimización de la población: Algoritmo de optimización de cuco (Cuckoo Optimization Algorithm — COA)

El siguiente algoritmo que analizaremos será la optimización de la búsqueda de cuco usando los vuelos de Levy. Este es uno de los últimos algoritmos de optimización, así como el nuevo líder en la clasificación.
preview
Probando y optimizando estrategias de opciones binarias en MetaTrader 5

Probando y optimizando estrategias de opciones binarias en MetaTrader 5

Probando y optimizando estrategias de opciones binarias en MetaTrader 5
Matemáticas del mercado: beneficios, pérdidas, costes
Matemáticas del mercado: beneficios, pérdidas, costes

Matemáticas del mercado: beneficios, pérdidas, costes

En este artículo, le mostraremos cómo calcular el beneficio o las pérdidas totales de cualquier operación, incluyendo la comisión y el swap. Hoy crearemos un modelo matemático más preciso, escribiremos el código basado en él y lo compararemos con un referente. También intentaremos meternos analizar los entresijos de la función principal de MQL5 para calcular el beneficio y llegaremos al fondo de todos los valores necesarios de la especificación.
preview
Desarrollo de un sistema de repetición — Simulación de mercado (Parte 06): Primeras mejoras (I)

Desarrollo de un sistema de repetición — Simulación de mercado (Parte 06): Primeras mejoras (I)

En este artículo empezaremos a estabilizar todo el sistema, porque sin eso corremos el riesgo de no poder cumplir los siguientes pasos.