Sobreoptimización y ruptura de sistemas

El espacio de los traders quant: sistemas de trading, gestión monetaria, automatización de sistemas.
Rango Starr
Mensajes: 3842
Registrado: 22 Dic 2014 10:49

Re: Sobreoptimización y ruptura de sistemas

Mensaje por Rango Starr »

.
Última edición por Rango Starr el 19 May 2021 11:58, editado 1 vez en total.
un ciclo y otro ciclo, son un biciclo...
si añadimos otro ciclo, entonces tendremos "un triciclo"... famoso trio catalan de humor de los 90....

..y nada mas...
Rango Starr
Mensajes: 3842
Registrado: 22 Dic 2014 10:49

Re: Sobreoptimización y ruptura de sistemas

Mensaje por Rango Starr »

.
Última edición por Rango Starr el 19 May 2021 11:58, editado 1 vez en total.
un ciclo y otro ciclo, son un biciclo...
si añadimos otro ciclo, entonces tendremos "un triciclo"... famoso trio catalan de humor de los 90....

..y nada mas...
Rango Starr
Mensajes: 3842
Registrado: 22 Dic 2014 10:49

Re: Sobreoptimización y ruptura de sistemas

Mensaje por Rango Starr »

.
Última edición por Rango Starr el 19 May 2021 11:58, editado 1 vez en total.
un ciclo y otro ciclo, son un biciclo...
si añadimos otro ciclo, entonces tendremos "un triciclo"... famoso trio catalan de humor de los 90....

..y nada mas...
ROBOCO
Mensajes: 479
Registrado: 01 Nov 2007 17:09

Re: Sobreoptimización y ruptura de sistemas

Mensaje por ROBOCO »

Rango Starr escribió:
ROBOCO escribió:Rango,

2) no existe diferencia entre quant y data minning..... el quant es una progresión dentro del data minning. De hecho, tu creas tu hipótesis, y luego la contrastas con los datos del activo, como no puede ser de otra forma. Continua siendo una aberración conceptual anglosajona, de los cuales tragamos todo lo que nos viene...


A lo que iba, (y lo meto en otro post, que llevo ya 6 con este en el que actúan los duendes.....)
Rango, esto es importante..hay un diferencia esencial entre cómo diseña un "quant" una estrategia y cómo lo hace un trader particular con la plataforma de turno. Te lo puedo decir porque yo he elaborado estrategias de ambos tipos. Pondré un ejemplo porque será mucho más intuitivo:

Un particular para desarrollar una estrategia sacaría un gráfico, observaría algún tipo de patrón o comportamiento y se pondría a programar aquello que ha visto. A lo mejor necesitaría usar indicadores (que desarrollase él mismo o que viniesen por defecto en la plataforma). Digamos que que ha visto que si hace un spread entre el futuro del petroleo y Repsol, dicho spread presenta un comportamiento de reversión a la media y puede explotarlo. Lo que hará un trader particular es ponerse a programar una estrategia y aplicarla sobre el spread a ver qué sale.

Un quant, en cambio lo que hará si ha visto ese mismo spread es preguntarse si ese spread presenta realmente dicho comportamiento de reversión a la media, formulará una hipótesis nula y aplicará un test estadístico a la serie temporal del spread (sea un ADF, exponente de Hurst...o el que sea). El resultado de ese test le dice si efectivamente esa serie presenta esas características o no con un grado de confianza dado. En caso de que así sea programará una estrategia.

Puedes ver la diferencia, el quant no asume nada, comprueba la series de datos. Un trader particular ve una linea ascendente y dice "esto se mueve por tendencias", un quant no.

¿Qué es lo que ocurre?, que si tu observas un comportamiento en la serie temporal, sobre la que está programado el sistema, entonces te basta con monitorizar si la serie sigue presentado ese carácter para mantener activa la estrategia o no...un trader particular en cambio...se come el Drawdown.

Cosas a favor para el trader particular, pues la rapidez en crear prototipos y por tanto la cantidad de ideas que puede testear. Un trader que opera en su casa, ante todo debe ser práctico, no puede enfangarse 2 meses en determinar si una idea merece la pena o no.

Espero que quede más claro ahora
Rango Starr
Mensajes: 3842
Registrado: 22 Dic 2014 10:49

Re: Sobreoptimización y ruptura de sistemas

Mensaje por Rango Starr »

.
Última edición por Rango Starr el 19 May 2021 11:59, editado 1 vez en total.
un ciclo y otro ciclo, son un biciclo...
si añadimos otro ciclo, entonces tendremos "un triciclo"... famoso trio catalan de humor de los 90....

..y nada mas...

Gratphil
Mensajes: 473
Registrado: 08 Jun 2013 12:24

Re: Sobreoptimización y ruptura de sistemas

Mensaje por Gratphil »

Buenas tardes,

En relación al artículo de Andrés, quería comentar o aclarar algún punto con el que no estoy de acuerdo. No sin antes decir que lo considero como el principal divulgador de trading sistemático en España.

1) Existe sobreoptimización si los resultados OS son inferiores a la media o mediana OS obtenida con el conjunto de combinaciones paramétricas y no a la mediana IS que comenta en el artículo.

2) No entiendo que se pueda considerar sobreoptimizada o infraoptimizada aquellas curvas IS que se alejan varias desviaciones típicas de su media. La sobreoptimización solo podemos comprobar que efectivamente se produce a posteriori y se da fundamentalmente por utilizar un histórico insuficiente para el número posible de combinaciones paramétricas. Aquí parece que asume la utilización de históricos insuficientes al decir que en cada corte temporal será optima una combinación paramétrica distinta.

3) Que la sobreoptimización esté sobrevalorada. Por supuesto que lo importante es la lógica del sistema y que debería dar resultados en la mayor proporción posible de las combinaciones paraméticas. Al fin y al cabo lo que la lógica determina es la robustez del sistma pero la combinación que cogemos en el WF y operativa real es la mejor de acuerdo al ratio diana, por tanto la sobreoptimización, incluso con lógicas robustas es muy peligrosa.

Un tema impotante a vigilar es el número de combinaciones que el sistema puede elegir y este número hay que adecuarlo al histórico de qué disponemos. Por supuesto que en el ejemplo que puso 7 años de histórico y 2 millones posibles de combinaciones, seguro que entre esos 2 millones existe una combianción que se pega al histórico como un guante. Si el sistema es robusto para qué tantas combianaciones posibles.

Por último la sobreoptimización es algo en lo que caemos inconscientemente incluso cuando preparamos un sistema en el in sample. De alguna manera si nuestro grado de conocimiento del mercado es grande ya sabemos lo que va a funcionar o no fuera de muestra, incluso que lógicas.

Saludos
Gratphil
Mensajes: 473
Registrado: 08 Jun 2013 12:24

Re: Sobreoptimización y ruptura de sistemas

Mensaje por Gratphil »

Roboco,

En el ejemplo que pones de un quant trabajandose el spread de Repsol y el futuro del petroleo. Qué bases tiene para determinar que el sistema se ha roto que no sean las habituales DD´S, Chi cuadrado, rotura de bandas de Montecarlo?

Saludos
Rango Starr
Mensajes: 3842
Registrado: 22 Dic 2014 10:49

Re: Sobreoptimización y ruptura de sistemas

Mensaje por Rango Starr »

.
Saludos!
Última edición por Rango Starr el 19 May 2021 12:00, editado 1 vez en total.
un ciclo y otro ciclo, son un biciclo...
si añadimos otro ciclo, entonces tendremos "un triciclo"... famoso trio catalan de humor de los 90....

..y nada mas...
Royal
Mensajes: 55
Registrado: 15 Mar 2016 09:19

Re: Sobreoptimización y ruptura de sistemas

Mensaje por Royal »

hola,,deciros que no entiendo de programacion en profundidad y me he metido a aprender a programar,, me esta resultado muy dificil ya que aprender algo de mayor cuesta mas que de joven pero ahi estoy leyendo que hasta se me ha pasado el plazo de uso gratuito de programas jjejjeje pero bueno que se le va a hacer,, soy manual entonces tengo ideas de muchos años y quisiera probar en automatico algo que merezca la pena,, me esta mucho aclarando leer este y otros hilos,, estare pendiente a proximos articulos tambien, gracias a todos
Avatar de Usuario
cls
Mensajes: 1336
Registrado: 24 May 2007 18:46
Contactar:

Re: Sobreoptimización y ruptura de sistemas

Mensaje por cls »

ROBOCO escribió:Os pongo un ejemplo. Imaginad que observando las series temporales un tipo detecta una ineficiencia que se produce a una determinada hora, de forma recurrente durante años (puede ser debida a que una mano fuerte tenga un algoritmo que la provoque siempre a esa hora), pongamos para simplificar que a las 21:00 en el CL hay un pico de volumen bestial durante unos segundos. Si construyes un modelo que se basa en que a esa hora se produce la ineficiencia... no necesitas comerte un Drawdown en caso de que la ineficiencia desaparezca....simplemente monitorizas si la ineficiencia permanece o no. Si deja de existir, el modelo no tiene fundamento para seguir utilizándose.
Gracias por el post ROBOCO. Ojalá que llegue lejos.

No te he entendido el comentario que he citado arriba sobre que un quant no sufre el draw-down.
Si está operando lo sufrirá igual. La manera de evitarlo será que sólo observe.
No sé, algo no te he entendido. A fin de cuentas un sistema si está bien diseñado y programado tendrá que estar monitorizando continuamente la serie de precios (o de lo que sea que trate su fuente de datos, como picos de volumen), pero si está operativo o bien estará en profit aprovechando la señal o sufriendo drawdown si la señal no fue buena. Independientemente de que seas quant o no quant.

Saludos
Avatar de Usuario
agmageton
Mensajes: 3578
Registrado: 30 Ene 2008 11:32

Re: Sobreoptimización y ruptura de sistemas

Mensaje por agmageton »

Este hilo es muy importante, creo que es de los mejores que ha tenido el foro, en resumidas cuentas lo que se trata es de una evolución, sobre si el edge que estamos explotando esta más expuesto a la optimización de las observaciones o la fortaleza de la lógica. Yo personalmente he experimentado este hecho, como no tengo la base quant, pero entendí hace tiempo que esto era así, mi forma de enfocar mayor número de observaciones, es mediante mayor número de activos, claro que son formas diferentes de trabajar, pero en este caso se busca aumentar el número de observaciones sobre una lógica, en mi caso puede haber anomalías presentes en un tipo de activo pero en otro no, esto a mi, por mi forma de trabajar se me escapa, yo lo que busco es que la lógica pueda ser explotada desde diferentes activos, esto limita mucho el tipo de anomalía a explotar, pero por contra evitas temas de optimización, y como no, el número de sistemas a explotar es muy reducido, porque el 99% de cosas que pruebo van a la papelera. Pero por ahí te das cuenta si una lógica es fuerte y florece por encima de la optimización, o nuestro edge esta más a expensas de un número limitado de observaciones que pueden llevar a recrear más una optimización que una lógica fuerte que es lo que produce el edge, y en consecuencia no saber cuando esa lógica puede desaparecer de una forma más medible.
La entrada te da la probabilidad y la salida la rentabilidad...
Avatar de Usuario
agmageton
Mensajes: 3578
Registrado: 30 Ene 2008 11:32

Re: Sobreoptimización y ruptura de sistemas

Mensaje por agmageton »

agmageton escribió:Este hilo es muy importante, creo que es de los mejores que ha tenido el foro
Rango Starr escribió:Pero tanto como decir que es el mejor hilo del foro...
:-D tampoco vamos a entrar a debate sobre eso, pero he dicho de los mejores no el mejor, pero es importante que se entienda, que el 99% de los sistemas que creamos normalmente esta en el alambre de la sobre optimización, por nuestra forma de trabajar retail o data timing, y eso si se quiere entender se entiende, aunque cueste aceptarlo. Y creo que es importante que la gente lo piense, y a partir de ahí puede haber una evolución.

saludos.
La entrada te da la probabilidad y la salida la rentabilidad...
Avatar de Usuario
Tiotino
Mensajes: 990
Registrado: 20 Sep 2004 18:22

Re: Sobreoptimización y ruptura de sistemas

Mensaje por Tiotino »

hola a t@s !!

Aquí hay unos que miran al pasado y otros menos al futuro. Si tu entras en un sistema, te pueden suceder tres cosas, que gane, que pierda o que empate, y ya le has podido hacer todos los test del mundo.

De que depende ?

De como se comporte el subyacente sobre el que se aplica el sistema, hacia futuro.

si todo el mundo ha hecho un walkforward vera que a veces con el setup bueno tambien se pierde, pero en la media de los test se intenta ganar, pero incluso por debajo del mejor setup testado.

Para intentar ser mas consistente se inventó la cartera de sistemas descorrelacionados, los vamos modificando en función de su equity y a volar

:idea:
Un abrazo

Tiotino

https://tradingpython.blogspot.com.es

@tiotino
ROBOCO
Mensajes: 479
Registrado: 01 Nov 2007 17:09

Re: Sobreoptimización y ruptura de sistemas

Mensaje por ROBOCO »

Nada, me ha pasado como a Rango, después de escribir un post largo contestando a Gratphil y a cls, no sale. Sintetizo sin muchas explicaciones:

1)Graphil: Se ha corregido en el artículo la definción de sobreoptimización porque efectivament estaba mal redactada.
2)Gratphil y cls: La diferencia está entre analizar la serie de P&L (trader particular) o analizar la serie de P&L+serie de datos(Quants)

En el ejemplo del CL un quant detectaría muchísimo antes que un particular que la ineficiencia ha desaparecido. El trader particular tndría que esperar a que el sistema (que se habría convertido en un random walk) evidenciara que la población de P&Ls es distinta de la del OS.

No quiero que se malinterprete lo que digo, los sistemas quants no son mejores en una gran mayoría de los casos que los que pueda hacer uno en su casa con su plataforma, simplemente ellos saben por qué funcionan y cuando dejan de hacerlo. Para el trader particular es mucho mejor buscar causas fundamentales y desde ahí crear estrategias convencionales, más que analizar las series temporales que les va a llevar un cerro de tiempo.
Royal
Mensajes: 55
Registrado: 15 Mar 2016 09:19

Re: Sobreoptimización y ruptura de sistemas

Mensaje por Royal »

cls escribió:
ROBOCO escribió:Os pongo un ejemplo. Imaginad que observando las series temporales un tipo detecta una ineficiencia que se produce a una determinada hora, de forma recurrente durante años (puede ser debida a que una mano fuerte tenga un algoritmo que la provoque siempre a esa hora), pongamos para simplificar que a las 21:00 en el CL hay un pico de volumen bestial durante unos segundos. Si construyes un modelo que se basa en que a esa hora se produce la ineficiencia... no necesitas comerte un Drawdown en caso de que la ineficiencia desaparezca....simplemente monitorizas si la ineficiencia permanece o no. Si deja de existir, el modelo no tiene fundamento para seguir utilizándose.
Gracias por el post ROBOCO. Ojalá que llegue lejos.

No te he entendido el comentario que he citado arriba sobre que un quant no sufre el draw-down.
Si está operando lo sufrirá igual. La manera de evitarlo será que sólo observe.
No sé, algo no te he entendido. A fin de cuentas un sistema si está bien diseñado y programado tendrá que estar monitorizando continuamente la serie de precios (o de lo que sea que trate su fuente de datos, como picos de volumen), pero si está operativo o bien estará en profit aprovechando la señal o sufriendo drawdown si la señal no fue buena. Independientemente de que seas quant o no quant.

Saludos

perdonad que me meta pero es que veo que uno se explica bien y el otro entiende bien pero no os llegais a entender,,, a ver cls te lo digo con mis palabras: radica en que el detonante-señal-llamemosle como queramos desaparece en su natural forma de aparecer (sea loq ue sea)

ahora si entendi mal que venga y me lo diga roboco y si lo pille bien que tambien me lo diga jjejje
Si te ha gustado este hilo del Foro, ¡compártelo en redes!


Responder

Volver a “Sistemas de Trading”