1 votos

Proceso Wiener correlacionado

Tengo problemas con una tarea:

Tengo una cartera de 5 activos, y tengo la correlación entre ellos, con una matriz 5x5.

Dado que cada activo sigue la fórmula BS: enter image description here En este caso, necesito realizar una simulación de montecarlo, con un número de simulaciones (N) por ejemplo igual a 10000, para un periodo de 1 año, con 12 pagos (pago mensual).

Así que necesito simular la trayectoria de cada activo, considerando la correlación entre ellos. ¿Cómo puedo hacerlo? He visto algo referente a la descomposición de Cholesky, pero no he entendido cómo hacerlo, ya que al simular la trayectoria de cada activo, tenemos una matriz formada por: 5 filas (activo) y 10000 elementos dentro de cada fila (trayectoria de cada activo)

Gracias.

1voto

Sean Puntos 11

La descomposición de Cholesky funciona de la siguiente manera: Supongamos que tenemos un vector de $n$ realizaciones normales independientes: $Z$ . Establece los elementos de $\Sigma$ para ser $\rho_{i,j}$ donde $i$ indica la fila y $j$ indica la columna. Obviamente $\rho_{i,i}=1$ . Establecemos la descomposición Cholesky de $\Sigma$ para ser $L$ (una matriz triangular inferior) tal que $\Sigma=L\cdot L^{\top}$ . Entonces $X=L\cdot Z$ se distribuye normalmente con media 0 y matriz de covarianza $\Sigma$ .

El código R que funciona es para el caso simple de $n=2$ con una muestra se da a continuación

Sigma<-matrix(c(1,0.9,0.9,1),nrow=2)

L<-t(chol(Sigma)) #transpose as R uses upper triangular for cholesky
L%*%t(L) #check

Z<-rnorm(2)
X<-L%*%Z

Sólo tiene que calcular $L$ una vez, pero tienen que calcular $Z$ y $X$ una vez por punto de la trayectoria.

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