El terminal MT5 se ha actualizado hoy y la ventana de "Optimización" no aparece durante la prueba - página 4

 
Renat Fatkhullin:

¿Por qué no dijo desde el principio que iba a llevar la genética?

Elpropio principio de la búsqueda genética se basa en la aleatoriedad, por lo que no tiene sentido "continuar lo que se empezó". Su trabajo es correr al azar.

E incluso entonces se utiliza el caché. Lo que ocurre es que su probabilidad de acertar los resultados calculados previamente es muy baja (tiene un área de búsqueda de 50 millones de variantes). Así que parece que se empieza desde el principio, ya que el punto de partida es aleatorio.

Si lees la ayuda, dice exactamente lo contrario. ¿Quizá esté mal escrito? Me gustaría entenderlo.

https://www.metatrader5.com/ru/terminal/help/algotrading/optimization_types

  • Si el número total de pasos de optimización supera 1 000 000 en un sistema de 32 bits o 100 000 000 en un sistema de 64 bits, se aplicará automáticamente el modo de optimización rápida.
  • En la optimización genética, los resultados intermedios se guardan en la caché después del cálculo de cada generación (file_data_platform/tester/cache/*.gen). Así, el proceso de optimización genética puede interrumpirse en cualquier momento. Incluso si el proceso de optimización genética se interrumpe por causas externas (por ejemplo, un corte de energía), la optimización continuará automáticamente desde la última generación calculada en el siguiente inicio. La caché de optimización genética se almacena hasta que se modifican los ajustes de optimización o se completa el proceso de optimización.
  • Si la optimización se detiene normalmente (con el botón "Stop"), se guardarán todas las pasadas calculadas anteriormente. Si se reanuda la optimización, el proceso continuará desde donde se detuvo.
Типы оптимизации - Алгоритмический трейдинг, торговые роботы - MetaTrader 5
Типы оптимизации - Алгоритмический трейдинг, торговые роботы - MetaTrader 5
  • www.metatrader5.com
В данном режиме происходит полный перебор всех возможных комбинаций значений входных переменных, выбранных для оптимизации на соответствующей вкладке. Быстрая (генетический алгоритм) В основу данного типа оптимизации заложен генетический алгоритм подбора наилучших значений входных параметров. Данный тип оптимизации значительно быстрее полного...
 
Por lo tanto, está escrito que hemos cambiado completamente el funcionamiento de la caché. La documentación cambiará con el tiempo.

Además, he mostrado cómo en la genética las visitas a la caché mejoran drásticamente los resultados de la repetición. Desde el 50%.

El punto de un probador genético es que tiene que ser ejecutado varias veces para que el aleatorizador pueda salir de los extremos locales. Esto se acaba de mostrar en la captura de pantalla de arriba, donde la cuarta ejecución encontró una nueva diapositiva.

Siempre hay que entender la mecánica del proceso. Si el espacio de búsqueda de la solución está en los trillones, entonces la genética tiene que recibir muchos intentos.
 
Renat Fatkhullin:
En la parte superior se ha escrito que hemos cambiado por completo el funcionamiento de la caché. Cambiaremos la documentación con el tiempo.

Además, he mostrado cómo en la genética las visitas a la caché mejoran drásticamente los resultados de la repetición. Desde el 50%.

El punto de un probador genético es que tiene que ser ejecutado varias veces para que el aleatorizador pueda salir de los extremos locales. Esto se acaba de mostrar en la captura de pantalla de arriba, donde la cuarta ejecución encontró una nueva diapositiva.

Siempre hay que entender la mecánica del proceso. Si el espacio de búsqueda de la solución está en los trillones, entonces la genética tiene que recibir muchos intentos.

¡Gracias por el duro trabajo!

Me gustaría ver las estadísticas normales para cada símbolo en las pruebas multidivisa, al menos como mínimo.

 
Renat Fatkhullin:

¿Por qué no adjunta una descripción para su reproducción?

¿No entiendes que una imagen no es una prueba en ausencia total de una descripción? Estás en un foro técnico en el que se discuten cuestiones técnicas.

Traté de construir de acuerdo a sus condiciones:

  • su media móvil estándar.set
  • su conjunto de ajustes para 50 millones de pases
  • Servidor MetaQuotes-Demo, EURUSD H1, último año, modo de precios abiertos con genética
  • genética de los ran

Aquí está el resultado: todo es normal y razonable, el probador funciona, la genética encuentra los resultados correctos


Se puede ver cómo la genética ha llegado a las zonas verdes de mejores resultados y se ha consolidado allí.

El Asesor Experto es una Media Móvil estándar.

He realizado 4 optimizaciones. Los archivos de registro están en el apéndice. Todo esto es con la genética.

Hice 2 en la nueva construcción. 2 en la construcción antigua.

1er recorrido - tardó 3,56 min. en la nueva sin parar de principio a fin.

3ª carrera - con el viejo sin parar de principio a fin tomó 2,15 min.

2º recorrido - el nuevo con una parada desde el principio hasta el final, ha durado 2,25+7,57= 9,82 min.

La 4ª carrera - en el antiguo con una parada desde el inicio hasta el final tomó 1,55+1,17= 2,72 min.

Dime por qué la nueva construcción funciona tan mal.

Archivos adjuntos:
29_04_2018.zip  43 kb
 
Renat Fatkhullin:
Por lo tanto, está escrito arriba que hemos cambiado completamente el funcionamiento de la caché. Modificaremos la documentación a su debido tiempo.

Además, he mostrado cómo en la genética las visitas a la caché mejoran drásticamente los resultados de la repetición. Desde el 50%.

El punto de un probador genético es que tiene que ser ejecutado varias veces para que el aleatorizador pueda salir de los extremos locales. Esto se acaba de mostrar en la captura de pantalla de arriba, donde la cuarta ejecución encontró una nueva diapositiva.

Siempre hay que entender la mecánica del proceso. Si el espacio de búsqueda de la solución está en los trillones, entonces la genética tiene que recibir muchos intentos.

Si hay que ejecutarlo varias veces, ¿por qué no implementar todo esto en el algoritmo? Y se puede entender la mecánica del proceso cuando se tiene suficiente información sobre el objeto. Pero aquí se le da al usuario una caja negra de la que sólo tiene una idea general sin conocer los detalles (tamaño de la población, criterios de parada, etc.) Y, por tanto, no puede controlar estos parámetros. Así que si el optimizador se aferra a los extremos locales, probablemente los parámetros del algoritmo no están bien ajustados.

 
Texnolog:

El asesor es una media móvil estándar.


Dime por qué la nueva construcción funciona tan mal.

Por favor, exponga su pregunta con precisión.

 
Alexey Navoykov:

Si hay que ejecutarlo varias veces, ¿por qué no implementarlo todo en el algoritmo? Y la mecánica del proceso se puede entender cuando tenemos suficiente información sobre el objeto. Aquí el usuario dispone de una caja negra de la que sólo tiene una idea general, sin conocer los detalles (tamaño de la población, criterios de parada, etc.) y, por lo tanto, no puede controlar estos parámetros. Por lo tanto, si el optimizador se aferra a los extremos locales, probablemente los parámetros del algoritmo no están bien ajustados.

Porque esta es la esencia del método genético: en un espacio de búsqueda infinito dar salida a una solución rápida en N generaciones cuando el incremento de la función objetivo cae por debajo de un determinado nivel.

Palabra clave: rápido.

El algoritmo genético no garantiza un resultado absolutamente exacto. Es para una estimación rápida y sucia para obtener las primeras analíticas.

Cómo debe utilizarse la genética:

  1. Establecer límites de búsqueda amplios en miles de millones/trillones de variantes
  2. Haz la primera carrera.
  3. Utilizando la visualización en diferentes planos, incluido el 3D, averiguar qué áreas tienen resultados decentes
  4. Acotar la búsqueda, desactivando algunos parámetros (bloqueando o reduciendo a un número razonable)
  5. Realice una nueva ejecución
  6. A continuación, obtuvimos algunos resultados más en comparación con la primera ejecución
  7. Reestimación con visualización
  8. Continúe con el paso 4 hasta que esté satisfecho con los resultados

No hay que perder la cabeza cuando se ven 10.000 ejecuciones en el espacio de búsqueda de trillones de variantes. Los milagros no ocurren.

La genética debe utilizarse de forma reflexiva y manual.


En general, recomiendo profundizar en la teoría. Sin ella, veo la genética como una actitud de "aprieta el botón y ya está":

Оптимизация стратегий - Алгоритмический трейдинг, торговые роботы - MetaTrader 5
Оптимизация стратегий - Алгоритмический трейдинг, торговые роботы - MetaTrader 5
  • www.metatrader5.com
Тестер стратегий позволяет тестировать и оптимизировать торговые стратегии (советники) перед началом использования их в реальной торговле. При тестировании советника происходит его однократная прогонка с начальными параметрами на исторических данных. При оптимизации торговая стратегия прогоняется несколько раз с различным набором параметров...
 
Vitaly Muzichenko:

Gracias por su duro trabajo.

Me gustaría ver estadísticas normales para cada símbolo en la prueba multidivisa, al menos como mínimo

Hemos iniciado una gran actualización del probador, reescribiéndolo por partes. Ahora nos ocupamos de cambiar el esquema de trabajo con los datos.

Vamos a cambiar muchas cosas, incluida la información.

 
Renat Fatkhullin:

Estamos ocupados con una gran actualización del rendimiento del probador y estamos rediseñando los modos de carga pesada. Se han realizado importantes mejoras y pronto se aplicarán nuevos métodos de aceleración.

Decidimos mostrar la ventana de la lista de pases al final de la carrera, para no desperdiciar recursos reales en el mantenimiento, la reordenación y la visualización de la lista de pases, siempre cambiante.

Realmente hubo un gran desperdicio de recursos y ralentizaciones. Sobre todo cuando hablamos de cientos de miles de filas, millones y decenas de millones de pases. No tiene sentido mirar un montón de datos preliminares con los ojos.


Estamos realizando pruebas de optimización y ejecución con 100 millones de pases completos.

Está claro que con semejantes números está fuera de lugar reordenar y mostrar una tabla de 2-5-10-50 millones de valores en tiempo real. La única opción es reunir todo de forma rápida y económica, clasificarlo finalmente y ofrecer una navegación a cualquier profundidad.

¡Todo esto es genial!

Sin embargo, vuelva a la pestaña "Optimización": ¡es imposible trabajar sin la analítica operativa! Las tablas grandes son lentas - hagamos un filtro - mostrar los 20 primeros para cada criterio - no es tan intensivo en recursos(?), pero ayudará a ver la imagen mucho. Y, esos miles de millones de pases, ¿quién los hace? Son unidades con enormes capacidades -tú mismo hablas de lo razonable de aplicar la genética, y ahí no hay tales portentos. Es decir, más de 10 mil pases es una rareza.

No entiendo acerca de la detención de la optimización, si tengo marcos escritos en el archivo, a continuación, después de la reanudación de un nuevo archivo se escribirá, porque no puedo decirle al Asesor de Expertos que continuaron desde donde se detuvo y no es necesario crear un nuevo archivo para registrar los resultados. Y si es así, ¡no podemos prescindir de controlar los resultados actuales!

Si no estoy tan seguro, puede crear un gráfico con los resultados de la optimización actual para diferentes indicadores que me ayudarán a cambiar el gráfico a la necesaria y controlar la situación de esta manera.

Les pediré que cambien el parámetro "optimización" por la prueba de una sola pasada después de la optimización. A menudo perdí mis datos por este motivo y hubo muchas quejas sobre este punto.

Con respecto a los agentes en la red local - por favor, enséñeles a no frotar la caché y todo el entorno por un tiempo más largo - entre las optimizaciones pasa el tiempo para analizar los datos, y no ejecutar inmediatamente durante 5 minutos. Ahora resulta que en cuanto empiezo a optimizar y a distribuir lo que sea, los agentes empiezan a trabajar en 10 minutos. Sí, tengo un internet lento para subir, pero ¿es posible dar tanto? ¡¿Por qué no puedo dar a cada equipo local (un agente en este PC) y dejar que se divida todo entre los agentes!

 
Renat Fatkhullin:

Plantee la pregunta con precisión, por favor.

¿Por qué romper un buen algoritmo antiguo y sustituirlo por uno nuevo que es 3 veces más lento?

Si necesita introducir un nuevo enfoque en el método genético, añada un nuevo elemento a la pestaña "optimización",

Crear una descripción y técnicas para trabajar con ella.