Discusión sobre el artículo "Optimización móvil continua (Parte 1): Mecanismo de trabajo con los informes de optimización"

 

Artículo publicado Optimización móvil continua (Parte 1): Mecanismo de trabajo con los informes de optimización:

La primera parte del artículo está dedicada a la creación de una herramienta para trabajar con los informes de optimización y su importación desde el terminal, así como a los procesos de filtrado y clasificación de los datos obtenidos. MetaTrader 5 permite descargar informes sobre las pasadas de optimización, pero querríamos tener la posibilidad de añadir al informe nuestros propios datos.

En concreto, esta parte del artículo está dedicada a la creación de una herramienta para trabajar con los informes de optimización y su importación desde el terminal, así como a los procesos de filtrado y clasificación de los datos obtenidos. Para dotar de una estructura más definida al archivo, hemos elegido el formato (*xml), que cumple con todos los requisitos. Los datos han sido estructurados de tal forma que sean legibles tanto para una persona, como para un programa. Además, podemos agrupar los datos según los bloques establecidos dentro del propio archivo, y obtener más rápidamente acceso a la información que nos interese.

Dado que, para que nuestro programa funcione (se trata de un proceso ajeno y está implementado en C#), vamos a necesitar crear y leer los documentos (*xml) creados al mismo nivel que los programas escritos en MQL5, hemos decidido sacar directamente el bloque de creación de informes a una biblioteca DLL, que se usará de forma conjunta, tanto en MQL5, como en código C#. Teniendo en cuenta que, para escribir código MQL5 vamos a necesitar esta biblioteca, primero vamos a describir su proceso de creación en el presente artículo, y ya en el siguiente, se describirá el código MQL5 que trabaja con la biblioteca creada y forma los parámetros de optimización, sobre los que se hablarán en este artículo.

Estructura del informe y coeficientes requeridos

Como ya hemos mostrado en artículos anteriores, MetaTrader 5 sabe descargar automáticamente el informe de pasadas de optimización, sin embargo, este no es tan informativo como el informe generado en la pestaña Backtest al finalizar la simulación para un conjunto concreto de parámetros. Para disponer de mayor libertad al trabajar con los datos optimizados, querríamos combinar en el informe muchos de los datos representados en esta pestaña, además de tener la posibilidad de añadir datos propios al informe. Para este cometido, hemos decidido descargar un informe generado independientemente, y no el ofrecido por la solución estándar. Para comenzar, debemos determinar los tres tipos de datos necesarios para el funcionamiento de nuestro programa:

  • Ajustes del simulador (únicos para todo el informe)
  • Ajustes del robot (únicos para cada pasada de optimización)
  • Coeficientes que describen la eficiencia de las transacciones (únicos para cada pasada de optimización)

Autor: Andrey Azatskiy

 

En algún lugar, en la descripción de Metatrader-4, vi una frase, cuyo significado era que MQL4 fue creado específicamente para que cualquier ama de casa pudiera describir su estrategia y ejecutarla en el terminal. No todo el mundo aquí es ingeniero de software.

Tal vez MQ algún día llegará a automatizar el proceso de optimización directamente en el probador, pero por ahora los entusiastas tienen que construir métodos con la ayuda de herramientas de terceros de MQL. Gracias, Andrey Azatskiy, por tus esfuerzos. Espero que al final de la serie de artículos habrá una breve instrucción sobre el uso de su software para aquellos que no pueden entender rápidamente lo que estaba escrito en el artículo.

 
Good Beer:

En algún lugar, en la descripción de Metatrader-4, vi una frase, cuyo significado era que MQL4 fue creado específicamente para que cualquier ama de casa pudiera describir su estrategia y ejecutarla en el terminal. No todo el mundo aquí es ingeniero de software.

Tal vez MQ algún día llegará a automatizar el proceso de optimización directamente en el probador, pero por ahora los entusiastas tienen que construir métodos con la ayuda de herramientas de terceros de MQL. Gracias, Andrey Azatskiy, por tus esfuerzos. Espero que al final de la serie de artículos habrá una breve instrucción sobre el uso de su software para aquellos que no pueden entender rápidamente lo que estaba escrito en el artículo.

Había un artículo sobre la optimización hacia adelante paso a paso utilizando MQL, sin herramientas de terceros, en una sola instancia de la terminal:

Artículos

Optimización hacia adelante paso a paso en MetaTrader 5 - con sus propias manos

Stanislav Korotky, 2017.06.08 15:03

El artículo discute los enfoques que permiten emular la optimización walk-forward con bastante precisión utilizando el probador incorporado y las bibliotecas auxiliares implementadas en MQL.

 
Good Beer:

En algún lugar, en la descripción de Metatrader-4, vi una frase, cuyo significado era que MQL4 fue creado específicamente para que cualquier ama de casa pudiera describir su estrategia y ejecutarla en el terminal. No todo el mundo aquí es ingeniero de software.

Tal vez MQ algún día llegará a automatizar el proceso de optimización directamente en el probador, pero por ahora los entusiastas tienen que construir métodos utilizando herramientas de terceros de MQL. Gracias, Andrey Azatskiy, por tus esfuerzos. Espero que al final de la serie de artículos habrá una breve instrucción sobre el uso de su software para aquellos que no pueden entender rápidamente lo que estaba escrito en el artículo.

Tengo previsto escribir dos artículos más. El segundo artículo explicará en detalle cómo conectar este optimizador de avance a cualquier robot para el que tenga el código fuente, y el último artículo explicará el propio optimizador de avance y un ejemplo en vídeo de cómo ejecutarlo.

 
Stanislav Korotky:

Había un artículo sobre la optimización hacia adelante paso a paso utilizando MQL, sin herramientas de terceros, en una sola instancia de terminal:


Es posible, pero las herramientas de terceros también tienen sus ventajas. Se hablará de ellas más adelante.

 
Stanislav Korotky:

Había un artículo sobre la optimización hacia adelante paso a paso utilizando MQL, sin herramientas de terceros, en una sola instancia de terminal:


.....c conectando una librería de pago. Creo que funciona en SQLite?
 
Good Beer:
.....c conectando una biblioteca de pago. ¿Creo que funciona con SQLite?

No hay dependencias, sólo MQL.

Ese artículo describe en detalle 2 maneras de realizar Walk-Forward análisis con el probador estándar, que puede ser implementado en una forma simplificada de forma gratuita. La biblioteca sólo contiene alguna utilidad en forma lista, como el cálculo de todos los principales indicadores de comercio y la construcción de "cosido" informes html.

 
Stanislav Korotky:

No hay dependencias, sólo MQL.

Ese artículo describe en detalle 2 maneras de realizar Walk-Forward análisis con un probador estándar, que se puede implementar en una forma simplificada por sí mismo de forma gratuita. La biblioteca sólo contiene algunas utilidades en forma lista, como el cálculo de todos los principales indicadores comerciales y la construcción de informes html "cosidos".

Y realmente. Se dan un par de consejos. Lo siento, no se dio cuenta en la masa de texto. Es suficiente para la comprensión.
 
En el futuro, si discutes el artículo de Stanislav, escribe en el hilo de sus artículos, gracias.
 

Con respecto a la optimización, recuerdo una frase de Ostap Bender - cuando le preguntaron "¿Por qué se introdujo el pago al recorrer el "Fracaso"?", respondió: "Para no fracasar demasiado".

Lo mismo ocurre con la optimización, si la CT se crea sobre la base de enfoques tradicionales.

El modelo (algoritmo) del robot debe basarse en la estructura elemental (y en la dinámica de los cambios de sus parámetros) y no en las lecturas de los indicadores tradicionales.

Entonces la optimización no se convierte en una selección interminable e incomprensible de la dinámica del mercado (y de los datos históricos), sino en un proceso más consciente, en el que el número de parámetros a optimizar se reduce en un orden de magnitud.

de parámetros optimizados se reduce en un orden de magnitud.

Así es como se resuelve esta cuestión en la teoría del equilibrio impulsivo.

 
Aleksandr Masterskikh:

En cuanto a la optimización, recuerdo una frase de Ostap Bender: cuando le preguntaron "¿Y por qué se introdujo el pago al recorrer el "Fracaso", respondió: "Para no fracasar demasiado".

Lo mismo ocurre con la optimización, si la CT se crea sobre la base de enfoques tradicionales.

El modelo (algoritmo) del robot debe basarse en la estructura elemental (y en la dinámica de los cambios de sus parámetros), no en las lecturas de los indicadores tradicionales.

Entonces la optimización no se convierte en una selección interminable e incomprensible a la dinámica del mercado (y a los datos históricos), sino en un proceso más consciente, donde la cantidad de

de parámetros optimizados se reduce en un orden de magnitud.

Así es como se resuelve esta cuestión en la teoría del equilibrio impulsivo.

Una publicidad tan descarada, sobre todo en varios temas seguidos, no es bienvenida en el foro, pero es cosa tuya.