Simulaciones de Montecarlo I

En este artículo hablaremos de la utilidad de la simulación en general. El objetivo del artículo es que podamos comprender todos los conceptos, para poder desarrollar un modelo mental de cómo funcionan las simulaciones, que significado tienen los resultados que con ellos obtenemos y que utilidad podemos obtener de la interpretación de dichos resultados.

¿En que consiste la simulación de Montecarlo?
En anteriores artículos hemos comentado en más de una ocasión lo importantes que son las simulaciones de Montecarlo, pero, ¿en que consiste realmente este tipo de simulación?

Imaginemos que tenemos una secuencia de operaciones históricas y queremos saber si el método de trading utilizado producirá en el futuro resultados semejantes si las cosas funcionaran como hasta el momento. La secuencia de operaciones históricas contienen dos medidas importante del éxito o fracaso de nuestro método. Por una parte tenemos el resultado final y por otro el drawdown o riesgo máximo asumido.

La pregunta que siempre nos hacemos cuando nos encontramos ante un sistema de trading nuevo es la de si en el futuro conseguiremos los mismos resultados que nos muestra la estadística actualmente. Eso es realmente complicado, más aun si los resultados son fruto de una sobreoptimización de nuestro sistema. No obstante, si en el futuro nuestro sistema produjera exactamente las mismas operaciones en la misma secuencia de aparición que nuestros resultados históricos, los resultados finales y drawdown serían idénticos a los obtenidos en el pasado. Sin embargo, sabemos que esto es prácticamente imposible que ocurra. De hecho, si tuviéramos este grado de certeza respecto a la secuencia de operaciones, simplemente entraríamos con más carga en las operaciones positivas y no entraríamos en las operaciones negativas. Demasiado fácil, ¿verdad? Efectivamente, demasiado fácil para ser cierto. Cuando nosotros utilizamos un sistema o método de trading, seleccionándolo en función de las estadísticas del mismo, nuestra intención es que en el futuro el sistema se comporte de manera similar. Pero ello no quiere decir que lo esperamos es la misma secuencia de operaciones. Simplemente esperamos que, a largo plazo, los estadísticos más representativos del sistema (% acierto, ganancia media por operación, ratio ganadoras / perdedoras, etc…) sean lo más parecidos posibles a los datos históricos.

No obstante, e incluso aunque nuestro sistema produzca resultados que son estadísticamente similares a los históricos, los resultados futuros no serán exactamente iguales a los históricos, ni en magnitud ni en orden de ocurrencia de las ganancias y las pérdidas, y por lo tanto, nuestra secuencia de operaciones será otra bien distinta.

Una manera de conseguir resultados estadísticos de los datos históricos es el de generar secuencias de operaciones de manera aleatoria, cada cual con su respectivo resultado final y drawdown. Para entenderlo más fácilmente, supongamos un sistema que realiza 100 operaciones. Tomamos el resultado de la primera operación y lo anotamos en una bolita y lo introducimos en un saco. Hacemos lo mismo con las 99 operaciones restantes. Ahora tendremos 100 bolas, cada una con el resultado de cada una de las operaciones de nuestra secuencia histórica. A continuación tenemos que obtener secuencias aleatorias de esas 100 operaciones. Sacamos una bola, anotamos la ganancia o pérdida que muestra y la volvemos a meter en el saco. Repetimos la extracción 100 veces. De esta manera habremos conseguido una secuencia de 100 operaciones de manera aleatoria. Volvemos a repetir el proceso de extracción de las 100 bolas durante un número significativo de iteraciones. Normalmente se realizan unas 10.000 iteraciones, con lo que conseguimos 10000 secuencias aleatorias distintas de nuestras operaciones históricas. Con lo cual, tenemos 10000 resultados finales distintos y 10000 drawdown distintos. Ya podemos por lo tanto crear una distribución de probabilidad de nuestro resultado final y de nuestro drawdown. Ya hemos utilizado las simulaciones de Montecarlo aplicadas a nuestro método de trading.

Normalmente, tendremos mejores cosas que hacer que realizar 10000 extracciones aleatorias de 100 operaciones cada una, por lo que habitualmente las simulaciones de Montecarlo no se hacen manualmente, sino que se utilizan herramientas informáticas que facilitan mucho su cálculo.

¿Para qué podemos utilizar las simulaciones de Montecarlo?
Con el uso de las simulaciones de Montecarlo, podemos encontrar respuesta a muchas preguntas que hasta ahora ni siquiera nos realizábamos, como por ejemplo:

¿Cuál es el rango de resultados esperados por un sistema representado por una lista de operaciones históricas?
¿Qué drawdown podemos esperar que ocurra en el futuro en un sistema representado por una lista de operaciones históricas?
¿Cuánto capital se necesita para poder operar un determinado sistema?
¿Hasta donde puede caer nuestra inversión inicial sin que comencemos a ponernos nerviosos?
¿Cuál es la racha de operaciones positivas consecutivas que podemos esperar? ¿Y la de operaciones negativas?
¿Cuánto tiempo podemos estar en drawdown?
Etc…

Como verán, muchas de las respuestas a estas preguntas son vitales para poder encontrar el éxito en nuestros sistemas y habitualmente son preguntas a las que no le prestamos la debida atención.

Por ejemplo, habitualmente aplicamos un sistema a un gráfico, lo optimizamos, vemos los resultados que el sistema produce en el periodo optimizado y comenzamos a aplicarlo esperando ser ricos en cuestión de meses. Sin embargo, comienzan a llegar las rachas malas, comenzamos a perder dinero y terminamos por desconfiar del sistema, si es que antes no nos ha desplumado todo nuestro capital. ¿Qué es lo que ha fallado? Si en mi optimización decía que la racha de pérdidas máxima era de 3000 € ¿por qué me he encontrado de buenas a primeras con una racha de 7000 € en contra? Les suena todo esto. Probablemente si, aunque muy poca gente termine por reconocerlo. Si les sirve de algo, todos hemos pasado por estas etapas, ya que nadie tiene conocimientos innatos y hemos de ir aprendiendo con el tiempo, sobre todo de nuestros errores.

Como vemos, con la simulación de Montecarlo podemos tener una información algo más precisa de los riesgos que podemos encontrarnos, necesidades de capital para aplicar un determinado sistema o cartera de sistemas, etc… Pero no vayan a pensar ahora que las simulaciones de Montecarlo son la panacea. Este tipo de simulación no nos hace ganar dinero por sí sola y hemos de entenderla como una parte más de nuestro análisis de sistemas. Supone una parte importante, pero no la única. Una vez concluidos nuestros análisis de Montecarlo podremos tener una visión más real de lo que podemos esperar (tanto en lo positivo como en lo negativo) de nuestro sistema.

El próximo artículo lo dedicaremos exclusivamente a la aplicación de las simulaciones de Montecarlo a un sistema concreto, explicando detalladamente toda la información que dicho análisis nos proporciona. Así mismo, veremos los “defectos” que pudiera tener la simulación de Montecarlo y comentaremos una forma de evitarlos, para que la información que obtenemos sea lo más precisa posible y nuestras garantías de éxito se incrementen.

 
Saluditos,
Chap
[email protected]

COMPARTIR EN: