Montecarlo Optimal-f

El espacio de los traders quant: sistemas de trading, gestión monetaria, automatización de sistemas.
Avatar de Usuario
Rafa7
Mensajes: 4923
Registrado: 17 Dic 2009 21:36
Contactar:

Montecarlo Optimal-f

Mensaje por Rafa7 »

Muchos conocemos el optimal-f del Ralph Vince.
De hecho abrí un hilo al respecto donde colgué un Excel de como calcularlo.

Me he inventado, en estos últimos días, el Montecarlo Optima-f.
Bueno, en realidad debe de existir, y alguien ya lo inventó. Lo seguro es que aún no he visto el Montecarlo Optimal-f.

Supongamos que los retornos históricos de un sistema de trading son W1, ..., Wn.
Supongamos que algún retorno es negativo.
Supongamos que W = - mín(W1, ..., Wn).

Sea f una fracción de nuestro capital (0 <= f <= 1).
Consideremos la siguiente función:
G(f) = (1 + f * W1 / W) * ... * (1 + f * Wn / W)

Como sabemos, la f que maximiza G(f) es la optimal-f de Ralph Vince.

Supongamos que generamos, 10000 series, donde una de las series es la histórica (O sea la W1, ..., Wn que hemos mencionado) y el resto son series compuestas por elección aleatorias de retornos (no necesariamente permutaciones).

Vamos a calcular para cada f, con precisión h, su rendimiento con un 95% de confianza, mediante el siguiente algoritmo sequencialmente:

Paso 1. f = 0
Paso 2. Calculamos G(f) para cada una de las 10000 series.
Paso 3. Ordenamos las 10000 series por G(f) ascendentemente.
Paso 4. Guardamos f y la G(f) de la serie 500-ésima, en una tabla.
Paso 5. f = f + h
Paso 6. Si f <= 1 ir a paso 2.
Paso 7. Buscamos en la tabla la f con el máximo G(f). Esa f es la Montecarlo Optimal-f.

Bueno, es interesante graficar la tabla.

De aqui me surgen varias preguntas que espero que los foristas me puedan ayudar.

1.- No estoy seguro de si haciendo esto, por narices, ¿la serie 500-ésima será siempre la misma?. Si es así, decidmelo porque entonces el agoritmo se puede simplificar.
2.- Por narices la f final será inferior o igual a la de Ralph Vince. ¿Cierto?
3.- ¿Que pasa si dos f's tienen exactamente la misma G(f)? ¿Tomamos la f mayor? ¿Tomamos la f menor? (Yo creo que es mejor tomar la f mayor siempre que sea inferior a optimal-f).
4.- ¿Esta Montecarlo Optimal-f la veis realmente útil en trading? ¿mas útil que la de Ralph Vince? (Bueno, puede ser que el propio Ralph Vince ya halla inventado la Montecarlo Optimal-f, en ese caso disculpen mi ignorancia, jejeje).

Esta Montecarlo Optimal-f sería mas pequeña que la Optimal-f, menos rentable teóricamente, pero mucho mas segura.
Esta Montecarlo Optimal-f, sería la fraccional que nos "garantiza" el "mejor" rendimiento "mínimo".

Por cierto, estoy un poco desanimado porque el interés sobre el Money Management está cayendo (o los palnteamientos que hago no hacen atrcativo el MM). Eso me hace preguntarme ¿para que abrir mas hilos sobre MM si me quedo solo posteando?
Tal vez lo que comparto sea poco útil para los demás.

Saludos.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
Fer137
Mensajes: 1371
Registrado: 12 Nov 2007 18:43

Re: Montecarlo Optimal-f

Mensaje por Fer137 »

Rafa7 escribió: Como sabemos, la f que maximiza G(f) es la optimal-f de Ralph Vince.
Supongamos que generamos, 10000 series, donde una de las series es la histórica (O sea la W1, ..., Wn que hemos mencionado) y el resto son series compuestas por elección aleatorias de retornos (no necesariamente permutaciones).
-Permutar la serie no cambia el resultado. La f-optima no depende del orden de las operaciones.
-Y si generas los retornos aleatoriamente te saldrá cualquier cosa sin relacion con la f de serie original, no se a que te refieres en este caso.
Avatar de Usuario
Rafa7
Mensajes: 4923
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Montecarlo Optimal-f

Mensaje por Rafa7 »

Fer137 escribió: -Permutar la serie no cambia el resultado. La f-optima no depende del orden de las operaciones.
-Y si generas los retornos aleatoriamente te saldrá cualquier cosa sin relacion con la f de serie original, no se a que te refieres en este caso.
Muchas gracias por tu crítica. Si tienes razón aprenderé algo nuevo.

En la Optimal-f se presupone que las próximas n operaciones serán las mismas del histórico pero permutadas.
Pero en la Montecarlo Optimal-f no presuponemos tal cosa (que sean permutaciones).
La idea, Fer137, que hay detrás de la Montecarlo Optimal f es que la Optimal-f de las n operaciones del histórico no tiene porque ser la Optimal-f de las próxima n operaciones del futuro.
Acepto, parcialmente, tu objección de que lo que saldrá pueda tener poca relación con la f de serie original.
Pero, me parece exagerado (y tal vez no lo sea) esperar que saldrá cualquier cosa. (Por eso he dicho "Acepto, parcialmente").
Pero te pregunto, ¿en la práctica no nos quejamos de que sale cualquier cosa menos lo que esperábamos? ¿Por que no preveer que saldrá cualquier cosa pero que tenga que ver con el histórico?

Entiendo que tenemos que hacer algo suficientemente parecido al histórico como para obtener una f-óptima factible, pero lo suficientemente diferente para que esta f-óptima no sobrepase a la f-óptima del futuro.

Lo que pretendo es muy difícil.

Y si tu crítica es acertada (no lo sé), no he logrado lo que quería.

Lo que me gustaría saber Fer, es si estas seguro de que lo que saldría sería tan poco relacionado con la f original que no tiene apenas utilidad práctica en el trading.

Si algo me he explicado mal, dímelo, por favor.

Gracias.
Última edición por Rafa7 el 19 Feb 2011 14:34, editado 1 vez en total.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
Rafa7
Mensajes: 4923
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Montecarlo Optimal-f

Mensaje por Rafa7 »

Yo presupongo que la f resultante del algoritmo del primer post será seguro inferior a la f-optima.
Pero, por si acaso, podemos modificar el algoritmo para asegurarlo, y también para asegurarnos de que la f resultante cumpla G(f) >= 0:

Paso 1. Hacemos f = Optimal-f (De Ralph Vince).
Paso 2. Calculamos G(f) para cada una de las 10000 series.
Paso 3. Ordenamos las 10000 series por G(f) ascendentemente.
Paso 4. Guardamos f y la G(f) de la serie 500-ésima, en una tabla.
Paso 5. f = f - h
Paso 6. Si f > 0, ir a paso 2.
Paso 7. Buscamos en la tabla (mencionada en el paso 4) la f con el máximo G(f).
Paso 8. Si G(f) < 0, siendo f la obtenida en el Paso 7, hacemos f = 0.
Paso 9. La f resultante es la Montecarlo Optimal-f.

El algoritmo del primer post entiendo que es correcto. Este otro es para asegurarnos no sobrepasar la f-optima. Pero creo que es innecesario.

Saludos.
Última edición por Rafa7 el 18 Feb 2011 21:55, editado 5 veces en total.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
Rafa7
Mensajes: 4923
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Montecarlo Optimal-f

Mensaje por Rafa7 »

La gran pega, es que, en la practica, la f resultante, su G(f) de la serie 500-ésima sea siempre negativa porque la serie 500-ésima sea negativa incluso operando con un solo contrato.
Eso querría decir que que no existe f que nos "garantize" que hay un 95% de probabilidad de que el sistema sea ganador. Uffff.
Claro que si hasta con un contrato la serie 500-ésima fuese de rendimiento negativo, la Montecarlo f-optima sería 0. Jajaja.
Como nunca he probado este algoritmo, voy un poco a ciegas.
En el caso de que el experimento no funcione, tendría que relajar la exigencia del 95% a un porcentaje menor. Lo mínimo que exigiría es que la probabilidad sea del 50%. Jajaja. Espero no tener que llegar a la pírrica exigencia de 5% jejeje. Pero aunque así sea (como no he probado no se que encontraré), al menos consigo una f con una cierta probabilidad de quedar a la izquierda de la Optimal-f, que es lo que pretendo.

Bueno, cuando haga pruebas lo veré.
Y si alguien ya lo probó, por favor, que comparta sus conclusiones.

Saludos.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com

Avatar de Usuario
Rafa7
Mensajes: 4923
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Montecarlo Optimal-f

Mensaje por Rafa7 »

Fer137 escribió: -Y si generas los retornos aleatoriamente te saldrá cualquier cosa sin relacion con la f de serie original, no se a que te refieres en este caso.
Fer137,

las clásicas simulaciones de Montecarlo consisten en simulaciones sobre series aleatorias basadas en resultados y sin exigir que sean permutaciones. Si se hacen así debe haber algún motivo fundamentado (tal vez algún forista nos lo pueda explicar).
Por ejemplo, para calcular el máximo DD operando con un contrato, mediante simulaciones de Montecarlo, normalmente no se exige que las series sean permutaciones del histórico. (Corríjeme, por favor, si me equivoco).
Personalmente, para calcular máximo DD, prefiero exigir que las series sean permutaciones del histórico.
Ahora la idea no es mirar máximo DD, sino rendimientos. Y, en este caso, no tiene sentido exigir que las series sean permutaciones del histórico porque entonces ya se de antemano el resultado: la Optimal-f del histórico (de Ralph Vince). Cuando lo que pretendo es situarme a la izquierda del Optimal-f del futuro.

Saludos.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
agmageton
Mensajes: 3580
Registrado: 30 Ene 2008 11:32

Re: Montecarlo Optimal-f

Mensaje por agmageton »

Rafa, además de la formulación, porque no realizas gráficos con las simulaciones de montecarlo, en el analisis hay una vertiente máxima que es entender el porque de las cosas y muchas veces hemos de realizar ese entendimiento por visualización grafica que reafirme nuestros pasos, es sin duda una de los atajos más rápidos.

Se puede hacer con simulaciones aleatorias y posteriormente dentro de simulaciones con historicos, para ver si que tan alejada de lo aleatorio estamos o de la realidad, te digo esto, porque si nos enrocamos con formulación únicamente sin ver (ya que supongo que es un estudio abierto) se hace bastante difícil seguir el hilo...y podemos actúar más teniendo un estudio con unas simulaciones donde podamos trabajar.

saludos.
La entrada te da la probabilidad y la salida la rentabilidad...
Avatar de Usuario
Rafa7
Mensajes: 4923
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Montecarlo Optimal-f

Mensaje por Rafa7 »

agmageton escribió:Rafa, además de la formulación, porque no realizas gráficos con las simulaciones de montecarlo, en el analisis hay una vertiente máxima que es entender el porque de las cosas y muchas veces hemos de realizar ese entendimiento por visualización grafica que reafirme nuestros pasos, es sin duda una de los atajos más rápidos.
Muchas gracias agmageton.

El problema que tengo es de tiempo.
Tal vez tendré que esperar al próximo fin de semana.
Me falta hacer en Java un programita que haga simulaciones de Montecarlo. El programa no es difícil y una vez lo tenga será coser y cantar hacer las simulaciones.

Y una cosa que quiero probar es dividir el periodo histórico en dos subperíodos. Y calcular la Optimal-f y la Montecarlo-Optimal-f tanto en los dos subperiodos como en el período histórico.

Lo que quiero verificar es que con el Montecarlo Optimal-f del primer subperíodo obtengamos una f que sea muy rentable en el segundo subperíodo pero a la izquierda del Optimal-f del segundo período.

También es interesante comparar los correspondientes DD.

Pero tendré que esperar al fin de semana. Si puedo antes, lo haré antes.

La objeción de Fer es interesante, pero creo que voy por buen camino. Bueno, cuando pruebe veremos.

Saludos.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
agmageton
Mensajes: 3580
Registrado: 30 Ene 2008 11:32

Re: Montecarlo Optimal-f

Mensaje por agmageton »

Rafa, con el tiempo y las simulaciones te darás cuenta, que lo que importa no será tanto la f más óptima del periodo o de los subperiodos, sino las bases de una F segura que se comporte óptimamente en cualquier periodo, y eso pasa por en periodos rentables no ser tan óptima como una F y en periodos no rentables no ser tan mala con una F, estatamos hablando de una F SEGURA, que indudablemente nos dará una seguridad media de todos los periodos. Dejando de ganar más en unos y dejando de perder más en otros...pero al fin y al cabo la más optima entre todos los periodos( y marque una certeza matemática de amplio ambito). Donde las restricciones vendrán por la propia distribución de las operaciones y sus desviaciones. Que en definitiva será la constante de saber que MM aplicar a tu sistema y esto es lo verdaderamente importante, por eso muchos creadores de buenos MM dicen que eso es la parte menos complica, sino la parte complicada es dotar a tu sistema de una aplicación óptima de MM, no se si me explico...

1º MM F SEGURA más agresiva, cuanto menor desviación, cuanto menor desviación menor tiempo de operación, cuanto menor tiempo de operación menor riesgo implicito, cuanto menor riesgo implicito, más aplanamiento de equity.

2º MM F SEGURA menos agresiva, cuanto mayor desviación, cuanto mayor desviación mayor tiempo de operación, cuanto mayor tiempo de operación mayor riesgo implicito, cuanto mayor riesgo implicito, menor aplanamiento de la equity.

3º etc etc etc....esto es lo verdaderamente importante para decidir un MM óptimo

saludos.
La entrada te da la probabilidad y la salida la rentabilidad...
Avatar de Usuario
Rafa7
Mensajes: 4923
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Montecarlo Optimal-f

Mensaje por Rafa7 »

Hola a todos.

Durante la ausencia mía en este hilo he estado programando la Montecarlo Optimal F.

He realizado dos algoritmos.

El primero, MOF1: es el que he compartido con vosotros en este hilo, pero con un 90% de nivel de confianza, en lugar de un 95%.
El segundo, MOF2, ha sido calcular la Optimal F de Ralph Vince para cada una de las series, y ordenar las series por su Optimal F, tomando como válido la 1100ª mejor serie (o sea, también un 90% de nivel de confianza).
OF, será el optimal Fractions de Ralph Vince.

He tomado 90% de nivel de confianza en lugar de 95% porque lo he hecho sobre un sistema con muy pocas operaciones: 26.

Sobre los 26 trades los resultados han sido OF = 47%, MOF1 = 20%, MOF2 = 20%.
Sobre los 13 primeros trades los resultados han sido OF = 46%, MOF1 = 7%, MOF2 = 6%
Y Sobre los 13 últimos trades los resultados han sido OF = 43%, MOF1 = 10%, MOF2 = 9%

¿A qué conclusiones, intuitivas, podemos llegar con estos resultados?
1.- Los algoritmos MOF1 y MOF2 dan resultados muy parecidos.
2.- En los dos períodos los 3 estadísticos analizados son muy parecidos.
3.- Los MOF1 y MOF2 de cada subperíodo están muy debajo de OF del otro subperíodo.

Y la conclusión mas importante es que tanto el algoritmo MOF1, como el MOF2, nos proporcionan una fracción con alta probabilidad de estar a la izquierda de la optimal fraction del futuro.

Espero que me digais que os parece.

Saludos.
Última edición por Rafa7 el 07 Abr 2011 21:56, editado 1 vez en total.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
Rafa7
Mensajes: 4923
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Montecarlo Optimal-f

Mensaje por Rafa7 »

La idea es que es peligroso suponer que la Optimal-F del pasado será la del futuro, porque podría quedar a la derecha. Pero con la Montecarlo Optimal-F, podemos pretender posicionarnos a la izquierda de la Optimal-F del futuro.

Saludos.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
Kosparuk
Mensajes: 860
Registrado: 31 Ago 2010 16:31
Ubicación: Asturias
Contactar:

Re: Montecarlo Optimal-f

Mensaje por Kosparuk »

A ver que me aclare. ¿Propones hacer el montecarlo de todas las f-óptimas que salen al aplicar montecarlo al sistema dado?
Avatar de Usuario
Rafa7
Mensajes: 4923
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Montecarlo Optimal-f

Mensaje por Rafa7 »

Kosparuk escribió:A ver que me aclare. ¿Propones hacer el montecarlo de todas las f-óptimas que salen al aplicar montecarlo al sistema dado?
Hola Kosparuk.

Si, es lo que propongo en el segundo algoritmo.
El primer algoritmo (MOF1) está en mi tercer post de este hilo.
El segundo algoritmo (MOF2) sería este:

Supongamos que el histórico se compone de n trades y queremos preveer una fracción tal que se aproxime a la Optimal-F de los próximos n trades, pero por la izquierda.
Entonces podemos hacer lo siguiente:

1.- Generamos 10000 series de n trades, a partir los n trades del histórico, al azar (mediante una función random y sin exigir que sean permutaciones).
2.- Calculamos para cada serie su Optimal-F (de Ralph Vince).
3.- Ordenamos, ascendentemente, las series por su Optimal-F.
4.- Elegimos como montecarlo fracción óptima la de la serie 500 (para un 95% de nivel de confianza).

Lo que no sé es como llamar las F-optimas de ambos algoritmos, ya que, en teoría no tienen porque coincidir (aunque a mí, en el experimento me ha dado valores muy parecidos).

Saludos,
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
Rafa7
Mensajes: 4923
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Montecarlo Optimal-f

Mensaje por Rafa7 »

He mejorado la precisión, y he vuelto ha hacer los cálculos sobre los mismos trades, pero con el 95% de nivel de confianza.

Los resultados son:

Sobre los 26 trades los resultados han sido OF = 40%, MOF1 = 5%, MOF2 = 4%.
Sobre los 13 primeros trades los resultados han sido OF = 38%, MOF1 = 12%, MOF2 = 12%
Y Sobre los 13 últimos trades los resultados han sido OF = 40%, MOF1 = 27%, MOF2 = 26%

Donde OF es el Optimal-f del Ralph Vince, MOF1 es el primer algoritmo de la Montecarlo Optimal-f y MOF2 es el segundo algoritmo de la Montecarlo Optimal-f.

Por cierto, ambos algoritmos (de la Montecarlo Optimal-f), teóricamente no tienen porque dar el mismo resultado. Lo que no sé es como llamar ambos resultados. A uno de ellos hay que llamarle Montecarlo Optimal-f, pero no sé a cual de los dos. Y por otro lado, no sé como llamar al otro resultado. Se admiten sugerencias.

Saludos.
Última edición por Rafa7 el 19 Abr 2011 10:50, editado 1 vez en total.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
Kosparuk
Mensajes: 860
Registrado: 31 Ago 2010 16:31
Ubicación: Asturias
Contactar:

Re: Montecarlo Optimal-f

Mensaje por Kosparuk »

Para mi la mof1 sería la buena, la mof2 es una optimización de resultados.
Si te ha gustado este hilo del Foro, ¡compártelo en redes!


Responder

Volver a “Sistemas de Trading”