Estimación del DD por Montecarlo de un sistema multiactivo

El espacio de los traders quant: sistemas de trading, gestión monetaria, automatización de sistemas.
Avatar de Usuario
andriuking
Mensajes: 231
Registrado: 06 Nov 2010 18:37
Ubicación: Madrid
Contactar:

Estimación del DD por Montecarlo de un sistema multiactivo

Mensaje por andriuking »

Hola compañeros.

Abro este hilo con la idea de crear discusión sobre las estimación del DD de un sistema que opera sobre varios activos. En alguna página web he visto que toman el doble del histórico y demás, métodos que me siguen pareciendo algo groseros.

Cuando tenemos un sistema que opera sobre un único activo, estimar el DD por Montercarlo es más o menos sencillo a partir de la simulación de un tamaño suficientemente grande de muestras (n = 1000, por ejemplo) reordenando de manera aleatoria el resultado de la operación.

Sin embargo cuando tenemos varios activos, tenemos varias series de rentabilidades. Evidentemente unir las series de rentabilidades no sirve, pues sería como estimar el DD del sistema basándose en el activo que más DD tenga en la operativa.

Una idea que leí en este foro, creo que de Rafa, es construir la serie linkando las observaciones de los activos que coinciden en el tiempo. Hasta ahora es la idea que más me ha gustado, no obstante creo que habría que ver exactamente cómo hacerlo, ya que la duración y momento de incio y fin de cada trade en cada activo no van a coincidir, por lo que habría que tratar los datos para intentar aproximarlo de alguna manera.

Otra duda que tengo es, si quisiera estimar el capital inicial necesario basándome en la simulación del DD por Montecarlo, ¿debería emplear en esa simulación los resultados netos (en moneda) de pérdidas y ganancias en lugar de los % de rentabilidad de cada operación?

Gracias.
http://www.sistemasdebolsa.com/" onclick="window.open(this.href);return false;
Avatar de Usuario
Kosparuk
Mensajes: 860
Registrado: 31 Ago 2010 16:31
Ubicación: Asturias
Contactar:

Re: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por Kosparuk »

Market System Analyzer (MSA). Le metes los datos de fechas de entradas, salidas y ganancia de cada sistema, y te crea el portfolio. A partir de ahí te hace el Montecarlo.
Avatar de Usuario
andriuking
Mensajes: 231
Registrado: 06 Nov 2010 18:37
Ubicación: Madrid
Contactar:

Re: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por andriuking »

Muchas gracias. Pues mira, que bueno!

Le he estado echando un vistazo. Tiene buena pinta, hace cosas complejas como estimar el tamaño de la posición óptima. Lo malo que en el manual no te pone cómo hace los cálculos (-:.

La verdad es que también me gustaría saber cómo se calculan estas cosas, o cuál es el método más aproximado, como para el caso del DD conjunto.
http://www.sistemasdebolsa.com/" onclick="window.open(this.href);return false;
Avatar de Usuario
andriuking
Mensajes: 231
Registrado: 06 Nov 2010 18:37
Ubicación: Madrid
Contactar:

Re: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por andriuking »

Encontré una tesis interesante que habla del tema:

http://www.mie.utoronto.ca/undergrad/th ... es/351.pdf
http://www.sistemasdebolsa.com/" onclick="window.open(this.href);return false;
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por Rafa7 »

Hola andriuking,


He leído la tesis por encima (de inglés estoy fatal) y por lo que veo se tienen en cuenta las correlaciones.
Yo creo que es un planteamiento demasiado complicado. Y ¿para que hacer cálculos tan complicados basados en las correlaciones que no sabemos si serán las mismas en el futuro?
Yo prefiero planteamientos basados en las betas (que son mas sencillos de aplicar) de los valores respecto al índice del mercado.

Supongo que hablas de acciones y no de futuros sobre acciones. ¿Verdad?
Si es así lo que te sugiero es que diseñes lo lotes de la siguiente manera:
un lote de un valor se compondrá de un número de acciones cuyo riesgo (basado en la distancia al stop loss inicial, o basado en múltiplo de ATR) sea una cantidad fija (100 €, 200 €). La cantidad debe de ser lo mas pequeña posible, pero lo suficientemente grande como para que las comisiones no se coman los beneficios.
Entonces la simulación de Montecarlo la haría simulando operaciones sobre un lote, tal como lo hemos definido, para calcular DrawDown en euros (ya que ya hemos normalizado el lote por riesgo fijo en euros).

Yo soy partidario de suponer que las operaciones consecutivas tengan correlación cero, y suponer que las operaciones simultáneas tengan correlación 1. Si supones que la correlación es 1, no te pillarás los dedos por basarte en supuestas correlaciones. Esto quiere decir que si operas con 3 posiciones simultáneas, por ejemplo, el riesgo por operación lo debes dividir por 3, suponiendo que la correlación es 1. Es mejor suponer que la correlación es 1 y luego el riesgo real sea inferior que suponer que la correlación es inferior a 1 y luego suceda un Cisne negro que hace que el riesgo real sea superior al calculado.

Si tu sistema de MM preferido te dice que puedes operar con 3 lotes, por ejemplo, si puedes hacer 3 operaciones de un lote simultáneos, mejor que hacer una sola operación de 3 lotes. Intentar inflar el número de lotes basándote en correlaciones es peligroso.

Si tu sistema de MM no opera por lotes sino por fracciones de Kelly (o de f óptima de Ralph Vince), entonces las operaciones simultáneas se deben repartir el riesgo para que entre todas no sobrepase la fracción de Kelly propuesta.

Otro planteamiento mas fino que este, pero no tan complicado como considerar todas las correlaciones entre todos los valores (solo pensarlo me da mareos matemáticos) sería intentar crear un modelo basado en las betas de los valores con respecto al índice del mercado. De esta manera podríamos inflar un poco los lotes para buscar un mayor crecimiento geométrico.


Saludos.
Última edición por Rafa7 el 13 Nov 2012 23:38, editado 1 vez en total.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com

ranunculo
Mensajes: 782
Registrado: 03 Abr 2006 22:52
Ubicación: Bilbao
Contactar:

Re: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por ranunculo »

Yo no me liaría demasiado Andriu.

Una manera sencilla de hacer la simulacion de Montecarlo para el caso de inversion en multiples activos, es coger los resultados de la equity line, pasarlos a Excel o cualquier programa y coger los resultados diarios.

Asi da igual que el resultado del día sea de 1 activo o de 100.

A esos resultados les aplicas un montecarlo como si fuera un solo activo.
Es bastante realista, porque en la práctica tendrás días de pocos activos y por tanto poca oscilación de la equity, y días de muchos activos y más oscilación.

Si no usas acciones o activos sobre barras diarias sino intradiarias, pues puedes hacer lo mismo a partir de una equity con un nivel de detalle mas alto.

Asumo que tu sistema invierte simultáneamente en varios activos, dividiendo el capital total entre cada activo. Sino es asi, pues depende de lo que hagas..

salud!
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por Rafa7 »

Rafa7 escribió:He leído la tesis por encima (de inglés estoy fatal) y por lo que veo se tienen en cuenta las correlaciones.
Yo creo que es un planteamiento demasiado complicado. Y ¿para que hacer cálculos tan complicados basados en las correlaciones que no sabemos si serán las mismas en el futuro?
Yo prefiero planteamientos basados en las betas (que son mas sencillos de aplicar) de los valores respecto al índice del mercado.
Hola aundriuking,


Quiero dar una justificación más a esto que afirmé.

Si operas con 2 ó 3 operaciones simultáneas le podrás sacar provecho al cálculo de las correlaciones entre los 2 ó 3 valores en los que has abres la posición. Pero si abres muchas operaciones simultáneas, es inútil que calculando las correlaciones de los valores en los que abres posición, puedas sacar partido, ya que al eliminarse el riesgo diversificable, el riesgo será el sistemático. Entonces ¿para que complicar los cálculos con matrices de correlaciones?
Por otro lado si abres una operación, tu no sabes que comprarás después hasta que otro valor te dé señal de compra. ¿Vas a ajustar la posición del segundo valor en función de cómo esté correlacionado con el anterior valor? si lo haces tu no sabes como estará correlacionado el siguiente valor porque no sabes cuál será el próximo valor que te dará señal de compra.

Es mucho más fácil, y práctico, elegir el tamaño de la posición simplemente por su ATR o por su Beta que intentar armonizar correlaciones.

Por eso, yo no creo en el camino de las correlaciones. Sólo lo encuentro interesante si las señales de compra son las del índice del mercado y cuando te de señal de compra, abras simultáneamente varias posiciones teniendo en cuenta sus correlaciones, y eso solo si se concentras las operaciones en pocos valores (si no, no vale la pena). Pero aún en este caso, la Beta te ofrece un cálculo sencillo y de efectividad similar a la de tener en cuenta las correlaciones.


Saludos.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
andriuking
Mensajes: 231
Registrado: 06 Nov 2010 18:37
Ubicación: Madrid
Contactar:

Re: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por andriuking »

ranunculo escribió:Yo no me liaría demasiado Andriu.

Una manera sencilla de hacer la simulacion de Montecarlo para el caso de inversion en multiples activos, es coger los resultados de la equity line, pasarlos a Excel o cualquier programa y coger los resultados diarios.
Muchas gracias!.Sí, es lo que me gustaría. Pero no dispongo sobre resultados en los activos sobre los que le quiero operar. Debo usar los del backtest, y por ello el tema de unirles en lotes de alguna manera en el tiempo. Me parece la mejor solución.
Rafa7 escribió: Es mucho más fácil, y práctico, elegir el tamaño de la posición simplemente por su ATR o por su Beta que intentar armonizar correlaciones.
Muchas gracias por el razonamiento Rafa, lo comparto 100%.

La verdad es que de momento solo quiero operarlo con un único contrato por activo, no necesito calcular el tamaño de la posición. Lo que me gustaría es calcular el capital mínimo a partir de un DD de Montecarlo. Los activos tienen algo de correlación entre ellos, pero sin embargo no tanta en las operaciones, puedo obviarla perfecamente.

Me tragué entero vuestro hilo de cálculo del capital mínimo, muy interesante por cierto, y me impresionó cómo diseñásteis el método. Sin embargo me parece demasiado complejo para un sistema que opera sólo con un contrato.
http://www.sistemasdebolsa.com/" onclick="window.open(this.href);return false;
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por Rafa7 »

andriuking escribió:La verdad es que de momento solo quiero operarlo con un único contrato por activo, no necesito calcular el tamaño de la posición. Lo que me gustaría es calcular el capital mínimo a partir de un DD de Montecarlo.
Hola andriuking,


Hablas de "contrato". Parece que te refieres a futuros.

Si hablas de acciones, ya he comentado en este hilo como haría la simulación de Montecarlo: por euros de ganancia/pérdida de cada operación y donde un lote es el número de acciones cuyo riesgo es una cantidad fija (por ejemplo 200€) para todas las operaciones y valores.

Si hablas de futuros, entonces la simulación la haría, no por euros sino por % de ganancia/pérdida de cada operación, ya que un lote, en este caso, será un contrato.


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: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por Kosparuk »

Fórmula clásica: peor DDx2 ó x3, o si haces las pruebas con el MSA, el capital mínimo que te pide para conseguir un montecarlo al 95 ó 99% (según gustos). Ambos métodos suelen coincidir bastante.

Y yo lo hago por euros. Por porcentaje no me gusta porque unas veces el contrato vale 10.000 y otras 7.000, como en el ibex, y sin embargo los sistemas automáticos eso no lo miran, miran puntos/dinero.
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por Rafa7 »

Kosparuk escribió: Y yo lo hago por euros. Por porcentaje no me gusta porque unas veces el contrato vale 10.000 y otras 7.000, como en el ibex, y sin embargo los sistemas automáticos eso no lo miran, miran puntos/dinero.
Hola Kosparuk.

No estoy seguro de entender tu argumento. ¿Qué quiere decir que los sistemas automáticos miran puntos/dinero? ¿Quieres decir que los sistemas automáticos ponen los stops por puntos y dinero?

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: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por Kosparuk »

Me refiero a que si mi sistema tiene una desviación de resultados de 200ptos del IBEX, no son el mismo porcentaje si el IBEX está en 10000 que si está en 7000, y por eso prefiero mirar las cosas en puntos/dinero que en porcentajes.

Al final con lo que yo como es dinero, no porcentajes.
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por Rafa7 »

Kosparuk escribió: Y yo lo hago por euros. Por porcentaje no me gusta porque unas veces el contrato vale 10.000 y otras 7.000, como en el ibex, y sin embargo los sistemas automáticos eso no lo miran, miran puntos/dinero.
Hola Kosparuk,

Supongamos que durante varios años el contrato está por debajo de 7000, y que en los dos últimos años sube hasta los 10000. (Me invento los números). Si haces una simulación de Montecarlo el DD habiendo expresado las ganancias/pérdidas por euros, este será muy inferior al que pueda darse en el futuro.
Supongamos al revés, que durante varios años el contrato está por encima de 10000 y en los dos últimos años desciende hasta 7000. Si haces una simulación de Montecarlo el DD habiendo expresado las ganancias/pérdidad en euros, este será muy superior al que pueda darse en el futuro.
Y la razón es que es mas fácil ganar/perder un euro cuando los contratos están por los 10000 que cuando los contratos están por los 7000, porque el porcentaje de ganancia/pérdida es mas pequeño cuando el contrato está a 10000 que cuando está a 7000.

Por este motivo es mejor calcular expresando las ganancias / pérdidas en fracción (y teniendo en cuenta el apalancamiento), tanto por uno o porcentaje, que en euros.

En lugar de considerar precioVenta - precioCompra, considerar precioVenta / precioCompra - 1, y así obtienes la fracción. (Eso sí, corrigiendo la fórmula para tener en cuenta el apalancamiento : ¿un punto vale 10? entonces ¿hay que multiplicar por 10? Lo siento, no sé como van los futuros).

En fin, la idea es que si las operaciones las expresamos en fracción y calculamos el DD en fracción, vamos a calcular un DD mas realista, mas adecuado al actual valor de los contratos, sea cual sea, sea 10000 o sea 7000.

No entiendo porque pueda ser mejor expresar las ganancias/pérdidas en euros para hacer la Simulación de Montecarlo. Y además retiro mi recomendación de calcular el DD de acciones en euros si los lotes son de riesgo fijo en euros (aunque si es buena idea de ajustar los lotes de acciones a riesgo fijo en euros -ojo: que no es lo mismo que stop loss fijo en euros-). Mejor las simulaciones de DD en fracciones (tanto por 1 o porcentaje). En todo caso siemrpre es fácil pasar de DD en fracciones a DD en euros. No veo que problema hay en calcular el DD en fracciones. ¿Cuál es el problema, Kosparuk? No lo entiendo.


Saludos,
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Avatar de Usuario
andriuking
Mensajes: 231
Registrado: 06 Nov 2010 18:37
Ubicación: Madrid
Contactar:

Re: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por andriuking »

Kosparuk escribió:Fórmula clásica: peor DDx2 ó x3, o si haces las pruebas con el MSA, el capital mínimo que te pide para conseguir un montecarlo al 95 ó 99% (según gustos). Ambos métodos suelen coincidir bastante.

Y yo lo hago por euros. Por porcentaje no me gusta porque unas veces el contrato vale 10.000 y otras 7.000, como en el ibex, y sin embargo los sistemas automáticos eso no lo miran, miran puntos/dinero.
A mi se me generaron dudas parecidas por el motivo que dice Kosparuk y no sé si es acertado, pero tiene lógica entiendo el por qué de hacerlo con moneda en lugar con porcentaje, aunque no sé si es acertado.

Yo opero con futuros o cfd´s, y van a un euro el punto. Los índices con el tiempo se han ido revalorizando mucho y lo mismo un indice hace 10 años pongamos estaba en 200 y ahora está en 1600. A un € por punto, una operación con pérdida del 10% eran 20€ hace tiempo y ahora son 160€, y esto al backtest le afecta mucho. En la actualidad tendremos valores de pérdida y ganancia media muy superiores a los del pasado.

Efectivamente como dice Rafa esto se corrige tomando porcentajes, pero creo que esto sólo funciona en el supuesto de que vayamos cambiando el tamaño de la posición. Si mi stop era del 10% cuando el indice estaba en 200, operas con 8 contratos y cuando está en 1600 operas con uno.

Sin embargo cuando trabajas con un único contrato nunca varías el tamaño de la posición, por lo que no puedes ajustarte a un riesgo fijo para tu equity.

Visto desde el punto de vista de la equity en lugar del riesgo por operación, un stop del 10% son 20€ en un caso y 160 en el otro, ese es el problema.

No sé si me expresé bien :-)
http://www.sistemasdebolsa.com/" onclick="window.open(this.href);return false;
Avatar de Usuario
Rafa7
Mensajes: 4924
Registrado: 17 Dic 2009 21:36
Contactar:

Re: Estimación del DD por Montecarlo de un sistema multiacti

Mensaje por Rafa7 »

andriuking escribió: Sin embargo cuando trabajas con un único contrato nunca varías el tamaño de la posición, por lo que no puedes ajustarte a un riesgo fijo para tu equity.

Visto desde el punto de vista de la equity en lugar del riesgo por operación, un stop del 10% son 20€ en un caso y 160 en el otro, ese es el problema.

No sé si me expresé bien :-)
Hola andriuking,

Me gustaría entenderos a tí y a Kosparuk. Supongamos que operas con un solo contrato y el stop loss es de n * ATR(m). Obviamente el riesgo por contrato es muy variable. Pero eso no impide que el DD se calcule por porcentaje. Entonces si el DrawDown calculado es de D, en fracción, obtienes el capital mínimo así: R / (1 - D) + S. Donde R es el riesgo por lote en euros, y S es el capital necesario para realizar una única operación de 1 lote.
Por ejemplo, DD del 30%, R = 300 € y S = 3000 €. Entonces el capital mínimo será 300 € / (1 - 0,3) + 3000 € = 3428,58 €

¿Donde está el problema? Supongo que está en decidir que entendemos en riesgo por lote. ¿Está ahí el problema? ¿Es ese exactamente el problema? ¿Que si R es la mayor pérdida por lote de todo el histórico el capital mínimo será exagerado y que si R es el promedio de las pérdidas de todo el histórico el capital será poco prudente? ¿Es este el problema?

Me gustaría entender cual es exactamente el problema.


Saludos.
¡Jesús es el Rey de Reyes y el Señor de Señores!
https://loquepermanece.blogspot.com
Si te ha gustado este hilo del Foro, ¡compártelo en redes!


Responder

Volver a “Sistemas de Trading”