Optimización en el Probador de Estrategias - página 18

 
Renat:

Sólo tiene sentido utilizar la genética si el número de pases es muy superior a 10000. En su caso, sólo hay 817 pases y hay que ejecutarlos en modo de búsqueda completa.

La genética opera modelando las secuencias de genes para producir individuos eficientes. Para ello es necesario un cierto número de poblaciones, normalmente al menos 10.000 pases.

Las pruebas no han terminado. Está en curso. Sin embargo, en las tres imágenes sigue habiendo un desequilibrio en el número de pases. Este desequilibrio no se formó inmediatamente, pero desde cuándo (número de pases) no puedo decirlo con exactitud.
 
ForexMoneyMaker:
Las pruebas no han terminado. Está en curso. Sin embargo, en las tres imágenes sigue habiendo un desequilibrio en el número de pases. Este desequilibrio no se formó de inmediato, sino que a partir de cuándo exactamente (número de pases) no puedo decirlo.

Sí, entendí mal la pregunta.

Estamos trabajando en ello. Tal vez esté relacionado con la omisión de resultados "inútiles".

 
Renat:

Sí, entendí mal la pregunta.

Ahora lo estamos resolviendo. Tal vez tenga que ver con la omisión de resultados "inútiles".

Aquí, por cierto, también me trae otra pregunta a la mente:

Si el optimizador, como en mi caso, tiene dificultades para encontrar una solución (ver que el resultado es mayoritariamente cero y la optimización es muy lenta a pesar de los 4 núcleos y los 20 agentes externos), ¿debo pasar a la optimización de fuerza bruta completa en lugar del algoritmo genético?

Генетические алгоритмы - это просто!
Генетические алгоритмы - это просто!
  • 2010.05.25
  • Andrey Dik
  • www.mql5.com
В статье автор расскажет об эволюционных вычислениях с использованием генетического алгоритма собственной реализации. Будет показано на примерах функционирование алгоритма, даны практические рекомендации по его использованию.
 
ForexMoneyMaker:

Pero si el optimizador, tal vez como en mi caso, tiene dificultades para encontrar una solución (se puede ver que el resultado es básicamente cero y la optimización es muy lenta a pesar de 4 núcleos y 20 agentes externos), ¿debemos pasar la optimización a la fuerza bruta total en lugar de un algoritmo genético?

A grandes rasgos, la genética permite salir de casi cualquier pozo local empaquetando aleatoriamente los parámetros en los genes.

En general, si la genética (puede ejecutar 2-3 retests) no encontró nada, entonces tampoco hay nada que hacer allí por fuerza bruta.

 
ForexMoneyMaker:

¡Hola moderador!

Tengo una pregunta: ¿por qué las tres imágenes adjuntas muestran un número diferente de pases del optimizador? ¿Cuál es la razón?

Según la primera imagen, el número de pases debería ser 817. Sin embargo, en la segunda y tercera foto su número es mucho menor.

Estás haciendo preguntas que se han discutido muchas veces. Y las respuestas están en la ayuda. No soy moderador, pero voy a responder.

El gráfico muestra todos los resultados excepto los marcados en rojo. Las ejecuciones con un error crítico están marcadas en rojo.

En la pestaña de resultados sólo se colocan los resultados únicos. Para las ejecuciones consecutivas, todos los resultados son únicos. Con la genética, un gran número de conjuntos de parámetros se repiten, es decir, no son únicos. El resultado ya está en la caché de resultados - este conjunto de parámetros no se envía para su comprobación, el resultado se traza, pero no en la lista de resultados.

 
stringo:

No soy moderador, pero responderé.

 
Renat:
estringo:

Estás haciendo preguntas que se han discutido muchas veces. Y las respuestas están en la ayuda. No soy moderador, pero responderé.

El gráfico muestra todos los resultados excepto los marcados en rojo. Las ejecuciones con un error crítico están marcadas en rojo.

En la pestaña de resultados sólo se colocan los resultados únicos. Para las ejecuciones consecutivas, todos los resultados son únicos. Con la genética, un gran número de conjuntos de parámetros se repiten, es decir, no son únicos. El resultado ya está en la caché de resultados - este conjunto de parámetros no se envía para su comprobación, el resultado se traza pero no aparece en la lista de resultados.

De acuerdo. Gracias. Todo está claro.
 
ForexMoneyMaker:
(De acuerdo. Gracias. Todo está claro.
En el registro del probador, en el menú contextual, marque "Registros de optimización completos". Luego lea el registro - muestra qué agente dio qué trabajo, qué agente obtuvo qué resultado, qué resultado se encontró en la caché resultante, qué resultado se encontró en la caché de archivos. Qué carreras terminaron con un error crítico (y qué error). Puede ser una lectura fascinante
Документация по MQL5: Программы MQL5 / Ошибки выполнения
Документация по MQL5: Программы MQL5 / Ошибки выполнения
  • www.mql5.com
Программы MQL5 / Ошибки выполнения - Документация по MQL5
 

¡Hola, moderador!

Tengo una nueva pregunta relacionada con la optimización de un EA utilizando la función OnTester() en la que se ha escrito la condición adecuada. La optimización se realizó mediante el algoritmo genético en la compilación 496.

Los resultados del trabajo del optimizador se muestran en las siguientes imágenes:

Para asegurarnos de que los parámetros obtenidos durante la optimización dan resultados adecuados, hemos probado el Asesor Experto con los parámetros correspondientes obtenidos para la última fila de cada tabla, pero en la versión actualizada de la compilación 519 (lamentablemente, esto no se hizo en la 496).

Hay tres preguntas:

1. ¿Por qué el gráfico de optimización muestra un valor negativo, si por OnTester(), el resultado es igual a cero o mayor que cero?

2. ¿Por qué vemos dos puntos por encima de cero en el gráfico de optimización (valor igual a 0,51), mientras que sólo hay uno en la tabla?

3. ¿Cuál puede ser la razón de que los resultados de dos pruebas no coincidan con los de la optimización después de la prueba en la compilación 519? (en el primer caso, el Asesor Experto se detuvo en lugar del beneficio 745 como resultado del drenaje del depósito al nivel de fondos insuficientes para abrir posiciones, y en el segundo caso, el resultado recibido 7903030 en lugar del beneficio 83064)

 
ForexMoneyMaker:

Hay tres preguntas:

1. ¿Por qué hay un valor negativo en el gráfico de optimización, si por OnTester(), el resultado es igual a cero o mayor que cero?

2. ¿Por qué vemos dos puntos por encima de cero en el gráfico de optimización (valor igual a 0,51), mientras que sólo hay uno en la tabla?

3. ¿Cuál puede ser la razón de que los resultados de dos pruebas no coincidan con los de la optimización después de la prueba en la compilación 519? (en el primer caso, en lugar de un beneficio de 745, el Asesor Experto se detuvo como resultado del drenaje del depósito al nivel de fondos insuficientes para abrir posiciones, y en el segundo caso, en lugar de un beneficio de 83064, el resultado fue de 79030)


No soy moderador, pero intentaré responder.

1. Tienes exactamente 0 resultado en tu gráfico, es sólo que el 0 no se muestra en la escala.

2. El algoritmo genético genera individuos con el mismo conjunto de parámetros, para ellos los resultados se toman de la caché, sin una ejecución real. Así, el gráfico muestra los resultados de todas las ejecuciones, incluidos los duplicados, mientras que las ejecuciones duplicadas no se introducen en la tabla de resultados (pero el registro muestra un mensaje de que el resultado se ha tomado de la caché).

3. En una sola ejecución, el comprobador completa la prueba si se alcanza un nivel de parada, y el optimizador se salta estas situaciones sin analizarlas. Probablemente, los probadores no pueden determinar el hecho de la parada por sí mismos, y el probador lo hace. Y el balance puede volver a la zona positiva. Yo también he observado estos casos.

4. El último caso, creo que se debe a la actualización del terminal o de la historia.