3 votos

Monte Carlo para Multifactorial de Ornstein Uhlenbeck

Estoy siguiendo vagamente la exposición dada en "Métodos de Monte Carlo en la Ingeniería Financiera por Glasserman.

Para un multifactorial OU proceso:

$dX(t)=C(b-X(t))dt+DdW(t)$

Donde C y D son d*d matrices a y b y X(t) son vectores de longitud d y W es una d dimensiones el movimiento browniano.

Señala que esto puede ser usado para definir un "exacto" de discretización similar a la 1D caso (Mostrado a continuación)

1D caso:

$dr(t)=\alpha(b-r(t))dt+\sigma dW(t)$

que tiene solución

$r(t)=exp^{-\alpha(t-u)}r(u)+\alpha\int_u^t \exp^{- \alpha(t-s)}b(s) ds+ \sigma \int_u^t \exp^{- \alpha(t-s)}dW(s)$

y puede ser simulado como

$r(t+1)=exp^{-\alpha(t_{i+1}-t_i)}r(t_i)+\mu(t_i,t_{t+1})+\sigma_r(t_i,t_{i+1})Z_{i_1} $ -- EQ1

donde $\mu(u,t)=\alpha \int_u^t \exp^{-\alpha(t-s)}b(s)ds$
si b es constante $\mu=b(1-\exp^{-\alpha(t_{i+1}-t_i)})$

y

$\sigma_r^2(u,t)=\sigma^2 \int_u^t \exp^{-2\alpha(t-s)}ds=\frac{\sigma^2}{2 \alpha}(1-exp^{-2 \alpha(t-u)})$

volviendo a la multi-factor de caso

La solución general es

$X(t)=exp^{-C(t-u)}X(u)+\int_u^t \exp^{- C(t-s)}b ds+ \int_u^t \exp^{- C(t-s)}DdW(s)$ -- EQ2

Sin embargo, él también va a mostrar que cuando C es diagonizable usando $VCV^{-1}=\Delta$

$dY(t)=VX(t)$

que después de la simplificación se convierte en

$dY(t)=\Delta(\tilde{b}-Y(t))dt+d \tilde W(t)$

con $\tilde{W}$ una $BM(0,\Sigma)$ donde $\Sigma=VDD NO'$

Esto puede ser modelado como

$Y_j(t+1)=exp^{-\lambda_j (t_{i+1}-t_i)}Y_j(t_i)+(\exp^{\lambda_j(t_{i+1}-t_i)}-1)\tilde{b}_j +\sqrt{\frac{1}{2 \lambda_j}(1-exp^{(-2\lambda_j(t_{i+1}-t_i)})}\xi_j(i+1)$ EQ3

donde $\xi(1), \xi(2)$ son independientes $N(0,\Sigma)$.
Lo que se reduce a un sistema de escalar simulaciones

Entonces puede recuperar el valor de $X(t)$ con $X(t)=V(t)^{-1}Y(t)$

Mi pregunta es

1.) Puedo ejecutar el multifactorial OU proceso sin hacer el diagonalisation, yo.e el uso de la solución general Eq2 y la discretización esquema se muestra en la EQ1? (si no, ¿por que no?)

Me doy cuenta de que la segunda solución, la utilización de la diagonalisation debo favorable es más limpio (y más rápido), pero me gustaría ser capaz de simular el proceso de dos maneras, de modo que puedo probar los modelos de uno contra el otro.

2.) Si la respuesta a la pregunta 1 es no, ¿cómo puedo benchmark mi modelo a enusre es correcta.

4voto

EQ1 es uni-variable de caso. EQ2 es el caso multivariante, en el que tienes que utilizar correlaciona $X_t$. Su manera de hacer es de $Y_t$ independientes, de modo que usted puede simular libremente. Lo hace mediante la búsqueda de PC en $\Delta$. Alternativamente, usted puede generar correlaciona $X_t$ en su simulación.

Para comparar su modelo / código, primero debe probar y reproducir un ejemplo dado multivariante de OU y ver si coincide con la solución. Hay formas de uso de la solución exacta Multivariante solución exacta , otro por Gillespie, va a bivariante caso y aquí es Gillespie implementado en Matlab

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