6 votos

Error del modelo de volatilidad local

Estoy implementando mi preciador de volatilidad local utilizando el método de diferencias finitas en MATLAB. Parametrizo la superficie de volatilidad implícita utilizando la parametrización SSVI ( Gatheral & Jacquier ), lo que me permite obtener una superficie de volatilidad local bastante suave:

enter image description here

Utilizo la fórmula de Dupire en términos de varianza total implícita $w(k,T)$ , donde $k=\log(K/F_{0,T})$ y interpSsviStineman se encarga de interpolar la curva de varianza total ATMF y devolver el nivel de varianza total implícito para cualquier $k$ y $T$ :

delta_k = 0.0001;
delta_t = 1e-6;
w_k_t = interpSsviStineman(k, t_, ssvi_param_);
w_k_tm = interpSsviStineman(k, t_-delta_t, ssvi_param_);
w_k_tp = interpSsviStineman(k, t_+delta_t, ssvi_param_);
dwdt = (w_k_tp-w_k_tm)/(2*delta_t);
w_km_t = interpSsviStineman(k-delta_k, t_, ssvi_param_);
w_kp_t = interpSsviStineman(k+delta_k, t_, ssvi_param_);
dwdk = (w_kp_t-w_km_t)/(2*delta_k);
d2wdk2 = (w_kp_t+w_km_t-2*w_k_t)/(delta_k^2);
[kg, ~] = ndgrid(k, t_);
local_var = dwdt./(1-kg./w_k_t.*dwdk+1/4*(-1/4-1./w_k_t+...
    kg.^2./w_k_t.^2).*(dwdk).^2 + 1/2*d2wdk2);
local_vol = sqrt(local_var);

Para validar mi implementación, estoy revalorizando las opciones vainilla que utilicé para calibrar la superficie de volatilidad en primer lugar. Si mi implementación fuera correcta, esperaría poder retroceder las mismas volatilidades implícitas utilizadas para generar la superficie de volatilidad local. Este no es el caso y parece que sólo puedo igualar los precios de las opciones AMTF mientras que mi implementación está sobrevalorando las opciones en las alas:

enter image description here

Agradecería cualquier sugerencia que me pueda indicar el error.

¡Salud!

2 votos

¿Puede mostrar el código, por favor?

0 votos

¿Funciona si se fija la superficie de volatilidad implícita en un 10%? ¿Y si es plana al 40%?

0 votos

Sí, tanto con el 10% plano como con el 40% de vol. plano estoy echando atrás los mismos IVs.

1voto

user39770 Puntos 9

El error que tenía en mi solucionador PDE era que para aproximar el valor de la opción en el tiempo $t$ en el algoritmo hacia atrás, estaba muestreando la volatilidad local para el tiempo de expiración $t$ en lugar de $T-t$ .

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