Anterior: «
Siguiente: »

 

La simulación de Montecarlo y los sistemas automáticos de trading (II)

08 de Ene de 2011

En la primera parte del artículo,  publicada en la primera entrega del mismo, hablamos sobre las Simulaciones de Montecarlo, aplicadas al análisis de sistemas automáticos de trading de futuros, explicando resumidamente en que consisten, como se calculan y la utilidad de la interpretación de sus resultados. En esta segunda entrega, aplicamos estas simulaciones a un sistema real,  para poder comprender más fácilmente las ventajas e inconvenientes, de utilizar este tipo de Simulaciones de Montecarlo,  junto al resto de nuestras herramientas de análisis de sistemas automáticos de trading de futuros.

.

El sistema de trading

Para la mejor comprensión, vamos a trabajar sobre un simple sistema de trading,  para generar unos resultados historicos, a los que aplicar las Simulaciones de Montecarlo.  El sistema que vamos a utilizar es un simple sistema que utiliza el indicador MACD para las entradas, incorporándole un control para gestionar las salidas,  basada en la volatilidad.  Además, hemos obligado al sistema de trading intradiario, para que cierre sus posiciones antes del final de la sesión.

Una vez que tenemos nuestro sistema, lo que normalmente todo el mundo realiza es una optimización de los parámetros del sistema para ver el potencial de ganancias que el sistema ha producido en el periodo histórico en el que lo estamos analizando. Aunque en próximos artículos trataremos el tema de la optimización más a fondo, es conveniente que nuestro sistema no esté sobreoptimizado, es decir, demasiado acoplado a la curva de precios histórica. De lo contrario nos podemos encontrar con muchas sorpresas a priori inexplicables, del tipo: “¿Cómo es posible que en el histórico haya ganado 100.000 € con solo 3000 € de drawdown y en mercado real mi drawdown sea ya de 6000 €? ¿Estoy dejando algo de lado?”. Obviamente si.

Cuando optimizamos conseguimos que nuestra herramienta de optimización nos diga la combinación de parámetros que mejor se ha adaptado a la curva de precios histórica y que, por lo tanto, mejores resultados ha conseguido. Digamos que nuestra optimización nos dice que la combinación de parámetros “A” ha sido la mejor en el periodo analizado. ¿Pero eso nos garantiza que esa misma combinación de parámetros será la mejor también en el futuro? Sinceramente, no. Y es uno de los primeros errores en los que caemos: “sobreestimar el potencial de nuestro sistema y subestimar los riesgos”. Este es el primer paso hacia el fracaso total.

.

¿Cómo podemos solucionar este problema?

Uno de los análisis a disposición del trader son las simulaciones de Montecarlo. Con ellas podemos tener una idea más aproximada sobre que esperar de nuestro sistema de trading. No obstante, como veremos en futuros artículos, no es una solución definitiva. Al menos en el sentido en el que vamos a utilizarlas en el presente artículo.

.

El análisis de los resultados de nuestro sistema de trading

Análizamos los resultados de  nuestro sistema de trading. Para ello, vamos a aplicar el sistema comentado al periodo 1/1/2001 – 31/12/2002. Tras nuestra optimización durante el periodo global, obtenemos los siguientes resultados:

Concepto
Valor
Ganancia total
2.031,0
Nº de negocios
849
Nº de negocios de la mejor serie
8
Nº de negocios de la peor serie
11
Ganancia media positivos
26,3
Pérdida media negativos
-15,7
Peor serie de pérdidas
-403,0
Ratio
2,55
Fiabilidad
42,99 %

.

Como podrán observar, no hemos incorporado todos los estadísticos que nos da el Visual Chart porque no son necesario en estos momentos.

Sin entrar a valorar la bondad o no de este sistema, ya que no es el objetivo del presente estudio, observamos que obtenemos una ganancia en un periodo de 2 años de unos 20.000 € netos, con un drawdown máximo de unos 4.000 €.

Supongamos ahora que nos hemos decidido, así sin más, a aplicar esta estrategia en mercado porque nos parece que ofrece una correcta relación ganancia / riesgo (les repito que no estamos discutiendo si las estadísticas que da el sistema son buenas o no). Muchos de nosotros pensaremos que como es un sistema intradía y el riesgo máximo en el histórico ha sido de 4000 €, pues que solamente necesitaremos esos 4000 € para comenzar a operar con nuestro sistema….y que muy mala suerte hemos de tener para que nos venga la peor racha negativa de la historia justo cuando comencemos. Bueno, las simulaciones de Montecarlo nos van a dar una idea de lo equivocados o no que podemos estar en nuestras suposiciones.

.

La simulación

Como comentamos en el artículo anterior, para realizar las simulaciones de Montecarlo hemos de realizar extracciones aleatorias de nuestra secuencia de operaciones. Una vez realizada la simulación de Montecarlo sobre nuestro sistema, los resultados de la misma son los siguientes (los mostramos agrupados para facilitar la comprensión del estudio realizado):

Drawdown €
Probabilidad de ocurrencia
2175
99%
3675
66%
4200
50%
4875
33%
5300
25%
6675
10%
7575
5%
10250
1%

.

Como vemos, las simulaciones de Montecarlo nos genera una distribución de probabilidad de cualquiera de los estadísticos de nuestros sistema. En este caso, hemos querido generar la distribución de probabilidad del drawdown de nuestro sistema y con la tabla de resultados podemos tomar decisiones mucho más acertadas.

Por ejemplo, observamos que existe un 50% de probabilidad de que el drawdown supere los 4200 €. Por lo que comenzar esta estrategia solamente con 4000 € se antoja algo arriesgado, ya que estamos dejando casi todo en manos de la suerte.

El secreto para triunfar en el mundo del trading estriba en dimensionar correctamente el capital necesario de nuestra cuenta en función de los riesgos que vamos a asumir. El principal error que solemos cometer es comenzar a operar con una cuenta excesivamente pequeña para los riesgos que hemos de asumir. Y eso se debe fundamentalmente a la falta de información, o si lo prefieren, a una mala interpretación de la información con la que contamos.

Con la aplicación de las simulaciones de Montecarlo sobre nuestro sistema, tenemos un mayor nivel de información.

De esta manera podremos definir las necesidades de capital reales que hemos de disponer para poder aplicar este sistema con mayores garantías de éxito y menos expuestos a la simple suerte. Si, por ejemplo, definimos nuestro capital necesario como el riesgo del sistema en el percentil 99 (es decir, aquel riesgo que puede ser superado un 1% de las veces), concluiremos que se necesitan unos 10.000 € para operar con este sistema de tal manera que una eventual racha negativa no nos deje fuera de mercado. Como vemos, es bastante distinto a los 4000 € que inicialmente pensábamos que eran necesarios.

.

Aplicaciones posibles de la simulación de Montecarlo

Como hemos comentado, las simulaciones de Montecarlo no son útiles exclusivamente para el análisis del drawdown. También podremos obtener distribuciones de probabilidad del beneficio esperado, de la racha máxima de operaciones consecutivas negativas, del drawdown temporal (periodo de tiempo que transcurre entre nuevos máximos de la curva de ganancias), etc… Es una herramienta bastante útil que nos ofrece un espectro de análisis mucho más amplio que el simple análisis de resultados del sistema que nos genera el Visual Chart o el Metastock o el Tradestation.

No obstante, la simulación de Montecarlo es simplemente una parte del conjunto de análisis a los que hemos de someter a nuestros sistemas. Como comentábamos al comienzo del artículo, la simulación presentada en este artículo tiene una serie de limitaciones y problemas que hemos de saber como resolver.

El principal problema estriba en que hemos realizado una simulación de Montecarlo monovariable, es decir, de una única variable (en nuestro caso, un único conjunto de parámetros de la optimización). Para que la información que la simulación de Montecarlo nos genere sea mucho más precisa y ajustada a la realidad futura, es necesario realizar una simulación multivariante, es decir, aplicar las simulaciones a distintos conjuntos de parámetros, para con posterioridad analizar la simulación resultante de la suma de cada una de las simulaciones.

Así mismo, sería recomendable aplicar las simulaciones de Montecarlo sobre una secuencia de operaciones que no estuviera totalmente optimizada, o en su defecto, que hubiera sido optimizada en prueba externa. En el próximo artículo trataremos precisamente este tema, realizando una optimización en prueba externa sobre nuestro sistema original y aplicando con posterioridad la simulación de Montecarlo a la secuencia de operaciones generada en la prueba externa y analizaremos las diferencias existentes entre los resultados presentados en el presente artículo y en el próximo.



Tags: ,