Página 1 de 1

Pregunta optimizaciones

Publicado: 05 Mar 2006 17:14
por elrichal
Al optimizar un sistema, lo sensato seria seguirlo sobre el papel sin operar en el realmente, ¿no?

Cuanto tiempo seria necesario para saber si funciona o no? He leido en algunos post, que lo suyo seria seguirlo de 3 a 6 meses para verificar su funcionamiento real, es correcto?

Alguno de vosotros hace o ha hecho esto?(me imagino que si)

S2

Saludos elrichal

Publicado: 05 Mar 2006 17:49
por mafune
Personalmente pienso que un sistema habría que probarlo una vez optimizado,con todas las posibles combinaciones de mercado, es decir alcista, bajista, lateral, con volatilidad alta baja etc. De esa manera podriamos ver como se comporta ante determinadas situaciones y corregir la optimización o no.
Dependiendo de la compresión en la que apliquemos el sistema nos va a llevar más o menos tiempo, lo que sí veo muy recomendable es optimizar mirando hacia adelante en vez de atrás.

Saludos

Publicado: 05 Mar 2006 19:36
por hammer
A las buenas,

Desde mi humilde opinión , y si hablamos de sistemas automáticos: el proceso de optimización es la parte final del desarrollo de un sistema. Por lo tanto, que el sistema sea capaz de funcionar con mercados alcistas, bajistas o lo que sea, es algo de lo que nos tenemos que preocupar desde el momento del diseño inicial y durante todo el proceso de desarrollo.

Por otro lado, para saber si un sistema tiene posibilidades de funcionar en el mercado real, lo que se hace es probarlo sobre los históricos disponibles. Estas pruebas sirven para saber qué hubiera pasado si lo hubiésemos aplicado en el pasado. No nos garantizan en absoluto que vayan a seguir produciéndose resultados parecidos en el futuro.

De la forma en que realicemos estas pruebas dependerá que los resultados sean más o menos fiables de cara al futuro.

Al tiempo que se comprueba el comportamiento sobre los históricos, se ajustan ciertos parámetros que se hayan definido durante la programación para conseguir que el sistema se adapte lo mejor posible a esos datos históricos. Esta es la optimización, que encierra el peligro de ajustarlo demasiado a unas condiciones de mercado que no tienen porqué volver a producirse. Es decir, podemos llegar a optimizar el sistema para que funcione de maravilla sobre los datos del año 2004 y que resulte que al aplicarlo sobre el año 2005 los resultados sean desastrosos. Eso sería una sobreoptimización.

El asunto de la optimización es algo que debe hacerse tratando de no engañarse a uno mismo. Yo en particular creo que un sistema no puede funcionar eternamente y que debe irse adaptando a las condiciones cambiantes de los mercados. Por ello, probarlo en históricos antiguos puede no reflejar la realidad actual y no servir de gran cosa.

Yo creo que si somos capaces de optimizar un sistema sobre el histórico del 2004 y el sistema se comporta -usando esos parámetros- de forma parecida sobre el histórico del 2005 hasta ahora, estamos hablando de un sistema potencialmente ganador.

Otra cosa distinta es que, dependiendo de la plataforma sobre la que se desarrolle, los resultados sobre los históricos se parezcan en mayor o menor medida a lo que hubiera pasado en la realidad. Por tanto no sirve de nada seguirlo en papel durante un tiempo porque el problema de la diferencia entre pruebas y real seguirá existiendo.

Cuanto más se conozca el sistema sobre el que se programa y el funcionamiento del servidor de pruebas, más posibilidades tendremos de desarrollar un sistema que funcione en real como se espera que lo haga. Pero hasta que no lo pongamos a currar no vamos a poder estar 100% seguros de que hace exactamente lo que se espera de él.

Un saludo (y perdón por el ladrillo) ;-)

Publicado: 06 Mar 2006 13:38
por hammer
Hola de nuevo,

Quería resumir el tocho de ayer, que me quedó un poco largo :(

Si conoces muy bien el sistema de pruebas sobre históricos, puedes programar un sistema para que su comportamiento sea prácticamente idéntico en pruebas y en real, con lo que da igual seguirlo en pruebas o en real porque los resultados van a ser iguales.

Si el sistema de pruebas no ofrece resultados demasiado parecidos a la realidad, tampoco sirve seguirlo en pruebas, porque la diferencia entre pruebas y real seguirá existiendo.

Eso sí, siempre hay que comprobar si el sistema funciona -una vez optimizado- sobre una serie de datos sobre la que no se haya efectuado ninguna optimización, claro.

Saludos ;-)