10 votos

¿Cómo simular el movimiento browniano geométrico correlacionado para n activos?

Estoy tratando de simular movimientos de divisas para varias monedas con una matriz de correlación dada. Tengo el precio inicial, la deriva y la volatilidad para cada una de las monedas separadas, y quiero simular sus precios contra el USD con correlaciones siguiendo la matriz. Estoy haciendo esto en Excel. Leí en algún lugar que multiplicar un vector de GBM independientes con la descomposición de Cholesky de la matriz de correlación da el resultado requerido, pero no funciona.

¿Alguna ayuda?

14voto

penti Puntos 93

Sí, necesitas la factorización de Cholesky.

Puedes encontrar la idea general aquí:
http://www.goddardconsulting.ca/option-pricing-monte-carlo-basket.html

Además, la implementación en MATLAB aquí:
http://www.goddardconsulting.ca/matlab-monte-carlo-assetpaths-corr.html

El código en general debería ser fácilmente traducible. La única dificultad es la factorización de Cholesky, donde se puede encontrar código en VBA aquí:
http://vbadeveloper.net/numericalmethodsvbacholeskydecomposition.pdf

3 votos

Cholesky se usa a menudo porque es fácil de implementar - aunque puede sufrir de inestabilidad- sería mejor utilizar svd. También tienes el problema de que tus matrices no son definidas positivas, lo cual es un problema para cholesky pero no para svd.

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X