Algoritmos genéticos o como se llame.

El espacio de los traders quant: sistemas de trading, gestión monetaria, automatización de sistemas.
Responder
Avatar de Usuario
Tom
Mensajes: 2421
Registrado: 12 Feb 2005 10:23
Ubicación: Madrid

Algoritmos genéticos o como se llame.

Mensaje por Tom »

Tengo desde esta mañana optimizando un sistema que según dice tardará 6000 horas en terminar.
Llleva casi 17000 pasos y el mejor es:
%Anual +268,9
%Max serie pérdidas -0,66
Ratio 434,08
NNegocios 673
Fiabilidad 0,79
Y todavía marca 0% realizado y le quedan miles de horas para terminar.

Viendo que ese número de horas sería inalcanzable, busqué otro ordenador más rápido y le puse el mismo sistema, el mismo número de días y todo igual.
Aquí ya la cosa se queda en 900 horas que siguen siendo demasiadas, pero son muchas menos.
El problema es que este lleva más de 40.000 pasos (muchos más que el otro) y su mejor combinación arroja el siguiente resultado:
%Anual +133,99
%Max Serie pérdidas -1,44
Ratio 93,20
Número de negocios 227
Fiabilidad 0,70
Por supuesto también marca 0% y le quedan muchos cientos de horas para completar.

La duda que me surge ahora es si los genéticos esos pudieran ir por diversos caminos y el segundo llegará a alcanzar los resultados del primero más adelante.
Otra duda: Si hay forma de llegar a la conclusión de que la genetica ha hecho bien su trabajo y ha alcanzado ya el mejor resultado de toda la serie aunque todavía no la haya completado y le falten muchas para terminar.

Y para colmo: Me hace dudar de que le haya metido bien los mismos límites de parametros y ajustes.
Especialmente los últimos que pueden hacer variar el balance negativos/positivos y puede ser la causa de que el número de operaciones sea menor e incluso que los parámetros sean muy distintos.

Si a eso le añadimos los comentarios que he leído por otros mensajes de la versión actual de Visual hace de su capa un sayo con los sistemas pues ya .....
Pa que te cuento. :D

Un saludo
Tom
----- Para que tu y yo ganemos dinero no habrían creado un mercado. ------
Avatar de Usuario
Homer
Mensajes: 69
Registrado: 27 Sep 2007 11:20
Ubicación: Springfield

Mensaje por Homer »

Hola Tom,

Para poder considerar que la búsqueda que hace el Visual denominada de algoritmos genéticos ha encontrado una combinación óptima, hay que dejar que haga al menos el 5% del proceso. A partir de ese porcentaje es difícil que encuentre cosas nuevas interesantes.

Así que lo normal es que cuando ambos ordenadores hayan alcanzado el 5% den resultados similares (si no te has equivocado con los parámetros, claro :-)).

Para evitar semejante cantidad de iteracciones, el ideal es descomponer la búsqueda en sub-búsquedas parciales, como sabrás de sobra.

El resultado final es el mismo, aunque requiera algo más de trabajo por parte del usuario. Pero el ahorro de horas de computación es exponencial.

Un saludo.
Avatar de Usuario
Tom
Mensajes: 2421
Registrado: 12 Feb 2005 10:23
Ubicación: Madrid

Mensaje por Tom »

Homer escribió:.......
Para evitar semejante cantidad de iteracciones, el ideal es descomponer la búsqueda en sub-búsquedas parciales, como sabrás de sobra.
......
Muchas gracias Homer.
Es un lujo encontrar a alguien que piensa que el otro también piensa :D
Pues si, tienes razón.
Da bastante trabajo eso de ahorrarse tiempo y siempre me queda la duda de si me lo habré trabajado bien :-D

Como ya llevan unas cuantas horas más, y muchas más iteraciones, sin mejorar el mejor resultado, creo que puede ser una buena idea pensar que ese es el mejor y también que la diferencia está en algún error en los ajustes.

Cosa que no se puede comprobar hasta que los pare, como sabrás de sobra. :D
Fue una buena idea escribirlo aquí, aunque lo podría haber escrito en cualquier otro sitio, la cuestión es que siempre hay que trabajar algo, como sabrás de sobra :D

El más lento sigue con cero por ciento y el más rápido ha llegado a marcar uno.
Por si alguien tiene las mismas dudas :-D

Un saludo
Tom
----- Para que tu y yo ganemos dinero no habrían creado un mercado. ------
Avatar de Usuario
Javi
Mensajes: 179
Registrado: 17 Sep 2004 20:30

Mensaje por Javi »

Primero habria que saber como funcionan los algoritmos geneticos de visual , porque la configuracion de los parametros de los algoritmos ,puede dar lugar a mucho juego, A mi me habian comentado que un 12% era suficiente ( en mi opinion algo excesivo , pero no conzco como estan configurados) .Pero el verdadero problema no es este , porque aunque los algoritmos geneticos ademas de velocidad , lo que van hacer ,es darte resultados mas robustos , porque tienen muy pocas probabilidades de darte picos de resultados , seguramente te den resultados que estan situados cerca de otros que tambien lo son ( una meseta de resultados ) , y voy al problema que me lio , esos resultados en principio no valen mucho , puesto que sin una buena prueba de out of sample , una prueba de tensionamiento , y un analisis de montecarlo , yo no me fiaria , habria que saber tambien que tipo de sistema es , tendencial , intradiario con stops fijos,..... esto elimina muchos sistemas y te frustra bastante , pero yo creo que es mucho peor comprobarlo con numeros rojos en nuestra cuenta . Viendo los numeros de tu sistema lo que me dirian en un primer vistazo , es que esta sobroptimizado o tiene pocos datos en el backtesting , casi con total seguridad. Un abrazo.
Avatar de Usuario
Tom
Mensajes: 2421
Registrado: 12 Feb 2005 10:23
Ubicación: Madrid

Mensaje por Tom »

Javi escribió:..........
( una meseta de resultados ) , y voy al problema que me lio , esos resultados en principio no valen mucho , puesto que sin una buena prueba de out of sample , una prueba de tensionamiento , y un analisis de montecarlo , yo no me fiaria , habria que saber tambien que tipo de sistema es , tendencial , intradiario con stops fijos,..... esto elimina muchos sistemas y te frustra bastante , pero yo creo que es mucho peor comprobarlo con numeros rojos en nuestra cuenta . Viendo los numeros de tu sistema lo que me dirian en un primer vistazo , es que esta sobroptimizado o tiene pocos datos en el backtesting , casi con total seguridad. Un abrazo.
Pues no te falta razón. :D
Si estamos optimizando en busca de los valores optimos, no entiendo bien que quiere decir eso de sobre optimizar. :-D
Si tenemos una meseta de las buenas, algo es algo, puede haber otras mesetas mejores, pero sería sobre rebuscar.
Si hace varias horas teníamos casi 75.000 pasos comprobados, y el mejor era el 2368, y de 100 estaba en la posición casi noventa el un paso 60.000, el más alto y el siguiente mas alto andaba por el número del orden de 60 y era un 30.000.
Si ahora va por el paso 215.000 sin encontrar ninguno mejor.
Si de esos 100 mejores el peor tiene 0,58 de fiabilidad y 0,83 el mejor.
Pues no cabe duda de que hemos encontrado una meseta de las buenas. :D
Si además la moda (el más frecuente) de la serie de fiabilidades es de 0,67 y la mediana de 0,71 (por lo menos 50 son igual o mayor de 0,71) y el promedio de 0,7201, que corrobora lo antedicho.

Disculpa que aclare y describa de que hablo. Ya me ha parecido entender que tu no lo necesitas y estoy seguro de que la mayoría de los que lean esto tampoco. :D
Lo necesito para mi mismo, para estar seguro de que cualquiera que sepa más que yo (que suele ser casi todo el mundo) me pueda corregir y ayudar. :D
También dejo en el tintero cosas importantes que chocarán, y servirán de interpelación, a los entendidos. :D

Ahora lo que pienso hacer es la estadística del sistema con los parámetros de Moda para comprobar que la mayoría de los negocios de ayer (o de la semana pasada) son con beneficios.
Si fuese así, le adjudicaré (a dedo) las máximas probabilidades de que produzcan beneficios mañana (o la semana que viene) :-D
Y elijo creer que no hay mejor manera de saber lo que sucederá mañana, aunque me reservo la posibilidad de cambiar de opinión y creencias mañana :D
En cualquier caso sigue en vigor aquello de que "lo optimo es enemigo de lo bueno"

Un saludo
Tom

P.D. La serie completa serían más de 4 millones de pasos.
Adjuntos
tiempoComparaX.JPG
----- Para que tu y yo ganemos dinero no habrían creado un mercado. ------

Avatar de Usuario
Tom
Mensajes: 2421
Registrado: 12 Feb 2005 10:23
Ubicación: Madrid

Mensaje por Tom »

De momento estoy llegando a la conclusión de que veinte generaciones es una familia demasiado larga :D
----- Para que tu y yo ganemos dinero no habrían creado un mercado. ------
Avatar de Usuario
Javi
Mensajes: 179
Registrado: 17 Sep 2004 20:30

Mensaje por Javi »

Su lo que estas haciendo es optimizar un sistema que usabas en discrecional , y ahora lo has automatizado , podria valer esa optimizacion , pero si es un sistema nuevo , aunque tengas una meseta de resultados , podrias haber puesto un grado de libertad para los parametros demasido bajos , o demasiados parametros ,el testteo de sistemas requiere de bastante trabajo ,para saber si tiene poisbilidades de seguir siendo predictivo en el futuro , sin un out sample bien hecho , o una modulacion del precio , siempre tendras grandes riesgos de haber sobreoptimizado , si tu sistema pasa una de estas pruebas , luego habria que hacerle una pasada con un software que te permita hacer montecarlo , con esto ultimo sabras hasta donde puede llegar tu sistema , sobre todo en el drawdown , que es el que te puede sacar del mercado , si despues de todo esto en real ,se desvia de los resultados obtenidos en las pruebas , puede que el mercado sobre el que operamos ,haya perdido o cambiado tanto esa pauta subyacente que el sistema ya no de dinero , por eso es importante tener un historico largo , que contenga todas los tipos de tendencias .
Avatar de Usuario
Tom
Mensajes: 2421
Registrado: 12 Feb 2005 10:23
Ubicación: Madrid

Mensaje por Tom »

Javi escribió:.........
sin un out sample bien hecho , o una modulacion del precio , siempre tendras grandes riesgos de haber sobreoptimizado.......
Gracias.
Ya decía yo :D
Un saludo
Tom
----- Para que tu y yo ganemos dinero no habrían creado un mercado. ------
Avatar de Usuario
Javi
Mensajes: 179
Registrado: 17 Sep 2004 20:30

Mensaje por Javi »

Es muy posible que no vaya a la kedada ,esta me viene bastante mal, si voy ya hablaremos tranquilamente sobre el tema , y que software puedes usar para hacer un buen test al sistema .
Si te ha gustado este hilo del Foro, ¡compártelo en redes!


Responder

Volver a “Sistemas de Trading”