Hola,
a ver si algun compañero me puede echarme una mano con esto.
Partimos de la base de que todos antes de poner a trabajar un sistema o portfolio en real o demo tenemos un modelo en el que apoyarnos. Cada uno creara este modelo tirando de distintas herramientas (MSA, Excel, etc.). Partimos tambien que el sistema o sistemas que estemos evaluando son siempre con 1 contrato o lote (ningun algoritmo de MM).
¿Como obteneis entonces los rangos de rentabilidad probable (con un determinado nivel de confianza) entre los que se va a mover la serie analizada ?. Para el Drawdown lo tenemos muy facil con MSA, ¿pero y los retornos?, MSA realiza la Simulacion Montecarlo sin repeticion, asi que lo que gana la serie por mucha simulacion que apliquemos siempre va a ser lo mismo?, se que tenemos alguna que otra aplicacion como Equity Monaco en el que el Net Profit si varia, supongo que el metodo que utiliza es con repeticion.
¿Como obteneis esto? ¿Con que herramienta? ¿Cual es la forma correcta?.
Asumiendo que la distribucion es normal, el percentil 5% para el minimo y percentil 95% para el maximo, o lo que entiendo que seria lo mismo, la media aritmetica +/- (1,96 * desviacion estandar). Con MSA no se pueden obtener estos rangos del Net Profit.
Un saludo.
Mas dudas con la Simulacion Montecarlo
- andriuking
- Mensajes: 231
- Registrado: 06 Nov 2010 18:37
- Ubicación: Madrid
- Contactar:
Re: Mas dudas con la Simulacion Montecarlo
Hola.
Intento responderte de forma simple.
Montecarlo únicamente lo que hace es determinar escenarios futuros asignándoles nivel de probabilidad en base única y exclusivamente a los resultados pasados. Es un método no paramétrico, por lo tanto no hace ninguna asunción sobre la distribución de los registros, no supone que sigan una distribución normal, aunque es cierto que las rentabilidades de los trades realizados por un operador normalmente siguen esta distribución.
Para hacer Montecarlo, yo no uso ningún programa, lo puedes hacer directamente en excel. Necesitas mínimo 50 trades para tener una estimación medianamente aceptable, mejor contar de 100 oara arriba.
Lo único que tienes que hacer es ordenar aleatoriamente la muestra de registros n veces, para n suficientemente grande, por ejemplo n = 1000, tendras 1000 ordenamientos distintos y a partir de ahi una estimación de la probabilidad de cada escenario. Puedes medir el DD que te ha generado cada escenario en cada una de esas n = 1000 combinaciones.
A partir de aqui, si tomamos el percentil 99, por ejemplo, sería a partir de la combinación 990 ordenada por DD, tendríamos el DD que podemos incurrir para un nivel 1% de probabilidad (hemos cogido el percentil 99). La 950 nos daría el que se estima para un 5% de probabilidad... etc.
No sé si he resuelto tu duda.
Un saludo.
Intento responderte de forma simple.
Montecarlo únicamente lo que hace es determinar escenarios futuros asignándoles nivel de probabilidad en base única y exclusivamente a los resultados pasados. Es un método no paramétrico, por lo tanto no hace ninguna asunción sobre la distribución de los registros, no supone que sigan una distribución normal, aunque es cierto que las rentabilidades de los trades realizados por un operador normalmente siguen esta distribución.
Para hacer Montecarlo, yo no uso ningún programa, lo puedes hacer directamente en excel. Necesitas mínimo 50 trades para tener una estimación medianamente aceptable, mejor contar de 100 oara arriba.
Lo único que tienes que hacer es ordenar aleatoriamente la muestra de registros n veces, para n suficientemente grande, por ejemplo n = 1000, tendras 1000 ordenamientos distintos y a partir de ahi una estimación de la probabilidad de cada escenario. Puedes medir el DD que te ha generado cada escenario en cada una de esas n = 1000 combinaciones.
A partir de aqui, si tomamos el percentil 99, por ejemplo, sería a partir de la combinación 990 ordenada por DD, tendríamos el DD que podemos incurrir para un nivel 1% de probabilidad (hemos cogido el percentil 99). La 950 nos daría el que se estima para un 5% de probabilidad... etc.
No sé si he resuelto tu duda.
Un saludo.
http://www.sistemasdebolsa.com/" onclick="window.open(this.href);return false;
Re: Mas dudas con la Simulacion Montecarlo
Hola andriuking,
no me he explicado bien, lo planteo mas sencillo, ¿como determinais los rangos de retorno [min,max] con un nivel de confianza del 95%?, no el Drawdown, hablo del retorno. ¿Algun compañero me podria indicar que herramienta o que metodologia sigue para calcularlo?, con MSA no se puede.
Un saludo.
no me he explicado bien, lo planteo mas sencillo, ¿como determinais los rangos de retorno [min,max] con un nivel de confianza del 95%?, no el Drawdown, hablo del retorno. ¿Algun compañero me podria indicar que herramienta o que metodologia sigue para calcularlo?, con MSA no se puede.
Un saludo.
- andriuking
- Mensajes: 231
- Registrado: 06 Nov 2010 18:37
- Ubicación: Madrid
- Contactar:
Re: Mas dudas con la Simulacion Montecarlo
Hola de nuevo.
Ok, entiendo lo que planteas.
Estadísticamente creo que sería de la siguiente manera (algún otro forero puede corregirme si me equivoco):
Supongamos que tenemos n = 100 operaciones del sistema. Si tienes más mucho mejor, la estimación será más robusta.
Cada operación i genera un retorno, llamémosle ri, dónde i es el indicador de la operación.
ri se supone que sigue una distribución normal. Puedes graficarte los n = 100 ri retornos en un gráfico y debería tener una distribución normal centrada en un valor > 0 si la esperanza de la estrategia es positiva.
¿Cómo calculamos el retorno del sistema?
Cada ri es una normal N(media,desviación), donde:
media = media de los n retornos
desviación = desviación de los n retornos
¿Qué espero del sistema en un año?
Yo calcularia el número medio de trades que haces en un año, y la distribución sería:
Supongamos que en un hacemos 60 operaciones de media. Pues la distribución del retorno anual será:
N(60*media,raiz(60*desviación))
Observa que aunque la media se multiplica por 60, la desviación también aumenta considerablemente.
A partir de aqui, y con la fórmula de la normal, puedes construir un intervalo de confianza del 95% par tu retorno anual esperado:
IC 95% retorno anual = 60*media +- Z97.5*(raiz(60*desviacion))
donde Z97.5 es el valor que deja el 97.5% por debajo en la distribución N(0,1).
No sé si con esto te orientas mejor. Documéntate sobre el cálculo de la normal y hazlo sobre el papel, no es complicado si lo necesitas te ayudo. Yo puedo haberme equivocado en los cálculos porque los he hecho de cabeza.
Un saludo.
Ok, entiendo lo que planteas.
Estadísticamente creo que sería de la siguiente manera (algún otro forero puede corregirme si me equivoco):
Supongamos que tenemos n = 100 operaciones del sistema. Si tienes más mucho mejor, la estimación será más robusta.
Cada operación i genera un retorno, llamémosle ri, dónde i es el indicador de la operación.
ri se supone que sigue una distribución normal. Puedes graficarte los n = 100 ri retornos en un gráfico y debería tener una distribución normal centrada en un valor > 0 si la esperanza de la estrategia es positiva.
¿Cómo calculamos el retorno del sistema?
Cada ri es una normal N(media,desviación), donde:
media = media de los n retornos
desviación = desviación de los n retornos
¿Qué espero del sistema en un año?
Yo calcularia el número medio de trades que haces en un año, y la distribución sería:
Supongamos que en un hacemos 60 operaciones de media. Pues la distribución del retorno anual será:
N(60*media,raiz(60*desviación))
Observa que aunque la media se multiplica por 60, la desviación también aumenta considerablemente.
A partir de aqui, y con la fórmula de la normal, puedes construir un intervalo de confianza del 95% par tu retorno anual esperado:
IC 95% retorno anual = 60*media +- Z97.5*(raiz(60*desviacion))
donde Z97.5 es el valor que deja el 97.5% por debajo en la distribución N(0,1).
No sé si con esto te orientas mejor. Documéntate sobre el cálculo de la normal y hazlo sobre el papel, no es complicado si lo necesitas te ayudo. Yo puedo haberme equivocado en los cálculos porque los he hecho de cabeza.
Un saludo.
http://www.sistemasdebolsa.com/" onclick="window.open(this.href);return false;
Re: Mas dudas con la Simulacion Montecarlo
Hola andriuking,
gracias por la explicacion detallada, con esto realizamos una estimacion del retorno en funcion de la serie analizada, con la misma secuencia de operaciones sin alterar, es decir encontramos ese IC, pero si la secuencia de operaciones siempre se realizase de la misma forma. De lo que yo hablo es de realizar una simulacion montecarlo, cambiar el orden de esa serie n veces y calcular entonces ese rango [min,max] de retorno con un 95% de confianza. Con MSA, no se puede, ya que no utiliza repeticion en el metodo montecarlo, solo cambia la fecha en la que suceden los trades asi que el retorno siempre es el mismo.
Un saludo.
gracias por la explicacion detallada, con esto realizamos una estimacion del retorno en funcion de la serie analizada, con la misma secuencia de operaciones sin alterar, es decir encontramos ese IC, pero si la secuencia de operaciones siempre se realizase de la misma forma. De lo que yo hablo es de realizar una simulacion montecarlo, cambiar el orden de esa serie n veces y calcular entonces ese rango [min,max] de retorno con un 95% de confianza. Con MSA, no se puede, ya que no utiliza repeticion en el metodo montecarlo, solo cambia la fecha en la que suceden los trades asi que el retorno siempre es el mismo.
Un saludo.
- andriuking
- Mensajes: 231
- Registrado: 06 Nov 2010 18:37
- Ubicación: Madrid
- Contactar:
Re: Mas dudas con la Simulacion Montecarlo
Hola de nuevo .
No estoy del todo de acuerdo en lo que comentas, te digo cómo lo veo:
Lo que hacemos es calcular un IC del 95 % de probabilidad para la distribución de retorno. Este intervalo no tiene en cuenta el orden de las operaciones, que sólo emplea la media y la desviación, y ambas no dependen del orden de las operaciones.
Igualmente por montercarlo también puedes estimarlo. Sería hacerlo exactamente de la misma manera que para el DD, sólo que tendrías que emplear la cola positiva y también la negativa.
Aquí tienes el problema que es, entiendo, de donde viene la duda. Cuando se emplea Montecarlo para estimar un DD, se hace empleando todo el histórico para poder determinar cuál sería con un nivel de probabilidad el DD a alcanzar en el futuro. Es decir, no se acotan los tiempos, no se hace una estimación a un año, se emplea todo el histórico.
Entiendo que tú tienes que calcular el retorno anual, entonces tienes que introducir el factor del nº medio de trades que realizas en un año para hacer Montecarlo. Tomarías, si haces por ejemplo en un año 60 trades, pues por ejemplo m = 1000 muestras aleatorias de n = 60 trades cada una. A partir de aqui, si tomas los percentiles P2.5 y P97.5 tendrías los extremos del intervalo que recogen el 95% de probabilidad de retorno anual.
Ambos métodos son válidos, creo que el planteamiento es correcto.
Lo ves bien?
Un saludo.
No estoy del todo de acuerdo en lo que comentas, te digo cómo lo veo:
Lo que hacemos es calcular un IC del 95 % de probabilidad para la distribución de retorno. Este intervalo no tiene en cuenta el orden de las operaciones, que sólo emplea la media y la desviación, y ambas no dependen del orden de las operaciones.
Igualmente por montercarlo también puedes estimarlo. Sería hacerlo exactamente de la misma manera que para el DD, sólo que tendrías que emplear la cola positiva y también la negativa.
Aquí tienes el problema que es, entiendo, de donde viene la duda. Cuando se emplea Montecarlo para estimar un DD, se hace empleando todo el histórico para poder determinar cuál sería con un nivel de probabilidad el DD a alcanzar en el futuro. Es decir, no se acotan los tiempos, no se hace una estimación a un año, se emplea todo el histórico.
Entiendo que tú tienes que calcular el retorno anual, entonces tienes que introducir el factor del nº medio de trades que realizas en un año para hacer Montecarlo. Tomarías, si haces por ejemplo en un año 60 trades, pues por ejemplo m = 1000 muestras aleatorias de n = 60 trades cada una. A partir de aqui, si tomas los percentiles P2.5 y P97.5 tendrías los extremos del intervalo que recogen el 95% de probabilidad de retorno anual.
Ambos métodos son válidos, creo que el planteamiento es correcto.
Lo ves bien?
Un saludo.
http://www.sistemasdebolsa.com/" onclick="window.open(this.href);return false;
Re: Mas dudas con la Simulacion Montecarlo
Hola Clowner.
Lo que comentas no sería exactamente una prueba de Montecarlo. Si aceptas reintroducción de los trades, habría mucha mayor dispersión de resultados que si no repetimos los trades, en mi opinión.
Yo suelo hacer las pruebas de Montecarlo en Excel reordenando los trades sin repetición, y obteniendo multiples curvas equiprobables. Abri un hilo explicando mis métodos hace tiempo.
Obviamente, el resultado final de todos los MC es el mismo en todas si tomamos todos los trades del histórico. Pero las curvas son muy distintas, en concreto varían muchísimo los DD.
Lo que yo suelo hacer es tomar una población de trades, y obtener curvas de montecarlo pero de períodos más cortos que el total del histórico de compra ventas. De ese modo, los MC obtenido no se parecen en nada a la curva original.
salud!
Lo que comentas no sería exactamente una prueba de Montecarlo. Si aceptas reintroducción de los trades, habría mucha mayor dispersión de resultados que si no repetimos los trades, en mi opinión.
Yo suelo hacer las pruebas de Montecarlo en Excel reordenando los trades sin repetición, y obteniendo multiples curvas equiprobables. Abri un hilo explicando mis métodos hace tiempo.
Obviamente, el resultado final de todos los MC es el mismo en todas si tomamos todos los trades del histórico. Pero las curvas son muy distintas, en concreto varían muchísimo los DD.
Lo que yo suelo hacer es tomar una población de trades, y obtener curvas de montecarlo pero de períodos más cortos que el total del histórico de compra ventas. De ese modo, los MC obtenido no se parecen en nada a la curva original.
salud!
Si te ha gustado este hilo del Foro, ¡compártelo en redes!