Optimización y pruebas fuera de la muestra.

 

Buenas tardes a todos.

Después de optimizar un EA, a menudo tenemos que nerd fuera de la muestra más de una docena de conjuntos de parámetros sugeridos por el optimizador.

Tengo una idea de optimizar los Asesores Expertos fuera de la muestra. Supongamos que "cargamos" al Asesor Experto con la optimización de una serie de parámetros. Por ejemplo, a partir del 1 de enero. 2006 hasta el 1 de enero de 2007.

Hemos recibido varios miles de Asesores Expertos. Después, guardamos la página con losRESULTADOS DE LA OPTIMIZACIÓN como un archivo separado. A continuación, fijamos el siguiente periodo histórico para la optimización, es decir, añadimos un mes o dos, o los que necesitemos.

En nuestro caso, fijamos por ejemplo a partir del 1 de enero. 2007 al 1 de junio de 2007. Y de nuevo habilitamos la optimización. El optimizador no debe tomar los parámetros en PROPIEDADES DE EXPERTOS, sino que debe volver a seleccionarlos uno a uno desde el archivo que hemos guardado después de la primera optimización. Después de esta segunda optimización, sólo nos quedan los vAriens que han dado beneficios fuera de la muestra.

El resultado, en el mejor de los casos, es que obtenemos los "parámetros ideales" para trabajar y probar en línea más adelante.

Creo que esto será una adición útil al probador de mt4. Probablemente, y lo más probable, es que ya esté implementado por alguien en algún lugar. Si alguien lo sabe, por favor, comparta el enlace.

Yo, debido a mis modestos conocimientos, no consigo averiguar cómo llevar la idea a la práctica.

 
leonid553, vas en la dirección correcta, ya que la "optimización" existente sin probar en datos fuera de muestra es puro ajuste de curvas. Pero el algoritmo básico debería ser más complejo, como en los programas de redes neuronales. Toda la "optimización" debería ejecutarse en todos los conjuntos de datos a la vez (este es el deseo de los desarrolladores). Por supuesto, se puede trabajar con sólo dos conjuntos de datos, pero es mejor prever tres: de entrenamiento (A), de validación (B) y de prueba (C). Bueno, en las condiciones existentes, tendrá que trabajar más o menos como usted sugiere.
 
El experto puede especificar un archivo con parámetros que se utilizarán en la optimización. O puede ser más sencillo, optimizar en un intervalo de tiempo, luego en otro, guardar todo en excel y comparar :-)
 
dimontus:
O podría ser más sencillo, optimizar en un intervalo de tiempo, luego en otro, guardar todo en excel y comparar :-)
No, Dimontus, no funciona así. Dos ajustes de curvas diferentes en datos diferentes no servirán de nada.
 
Entonces, si son iguales, es decir, los mismos parámetros en diferentes intervalos de tiempo dan resultados similares, ¿no es eso lo que quiere el autor del hilo?
 
¿De qué sirve hacer un ajuste de curvas en el segundo si se pueden tamizar los conjuntos de optimización prometedores en el primero a través del segundo?
 
¿Qué quieres decir?
 
He probado la siguiente variante:
Pruebo el Asesor Experto en todo el período disponible, selecciono el segmento con el peor resultado esperado (caída en el gráfico) y lo optimizo, este peor intervalo
Tamizo (en la medida de lo posible) los extremos locales a mano
Y luego el trabajo de rutina es insertar los datos de optimización del peor intervalo en el optimizador y ejecutar el Asesor Experto con estos datos en todo el intervalo disponible
de lo que me llega, selecciono la carne...:-)
 

A la luz de lo anterior, veo el siguiente camino :

Para construir un simple Asesor Experto adicional, - y cargar todos los conjuntos de parámetros obtenidos en él después de la primera optimización.

Cada conjunto tendrá su propio índice. Y entonces simplemente insertamos este EA adicional en el probador en lugar del primero y lo optimizamos más allá de la muestra, ¡y el parámetro de optimización será el NÚMERO LOCAL de conjuntos insertados!

Puede ser un poco complicado, pero es mucho mejor que hacerlo manualmente fuera de muestra...

Sólo hay que tener en cuenta la versatilidad de este complemento.

 
Tiene sentido, leonid553. Cuando lo hayas hecho, déjalo en Code Base o aquí, si no te importa. Estoy seguro de que mucha gente ya lo quiere... Llevo mucho tiempo pensando en ello, pero no consigo ponerle las manos encima. Sólo con los parámetros de optimización fuera de la muestra tengo que pensar en ello, porque tengo que tener en cuenta de alguna manera los resultados de las pruebas en el primer conjunto de datos.
 
leonid553:

A la luz de lo anterior, veo el siguiente camino :

Para construir un simple Asesor Experto adicional, - y cargar todos los conjuntos de parámetros obtenidos en él después de la primera optimización.

Cada conjunto tendrá su propio índice. Y entonces simplemente insertamos este EA adicional en el probador en lugar del primero y lo optimizamos más allá de la muestra, ¡y el parámetro de optimización será el NÚMERO LOCAL de conjuntos insertados!

Puede ser un poco complicado, pero es mucho mejor que la optimización manual fuera de la muestra...

Sólo hay que tener en cuenta la versatilidad de este complemento.

No creo que sea tan fácil, para cada parámetro optimizado en conexión con otros parámetros se identificarán varios extremos. Puede ser posible encontrar una solución, si estos extremos se alimentan a la entrada de la red neuronal.