0 votos

Valores negativos en el modelo CIR

Me cuesta entender la conocida propiedad del modelo CIR de que no puede bajar de cero. La Wikipedia dice que esto se debe a que el choque aleatorio sobre la tasa crecerá muy pequeño a medida que r se acerque a cero, pero ¿no lo hará también el término de deriva? Especialmente si el término de volatilidad es alto, ¿no es posible que el choque aleatorio tenga un valor negativo mayor que el de la deriva sea positivo incluso cuando r se acerque a cero?

Actualmente estoy intentando implementar el método en matlab pero me ocurre que r se vuelve negativo si aumento la volatilidad. ¿Podría ser un problema con la discretización también, tal vez? El fragmento de código está abajo si es de interés.

theta=0.5; %Long run mean
sigma=14; %Volatility of drawdowns
k = 7.326; %Mean reversion constant
n = 100; %number of time steps, t.
dt = T/n; %time step
M=10^3; %Number of realizations
d0 = theta;
d=ones(M,1).*d0;%Starting value for d
for i = (j-1:n)
    dW = sqrt(dt)*randn(M,1); % Wiener increments
    d(:,i+1) = d(:,i) + k.*(theta-d(:,i)).*dt + sigma.*sqrt(d(:,i)).*dW; %drawdown rate
end

```

1voto

B. Schmidt Puntos 46

Analíticamente la condición de Feller ( $ 2 \kappa \theta > \sigma ^2)$ garantiza que el proceso no se convierta en negativo, pero esto no es suficiente cuando se está simulando. Incluso si eliges parámetros que satisfagan la condición de Feller, puedes tener el problema de obtener valores negativos dentro de root cuadrada dando malos resultados. Esto es una consecuencia de la discretización. La forma más fácil de resolver el problema es sustituir en su código sqrt(d(:,i)) por sqrt(max(d(:,i),0)). Hay otras formas más sofisticadas de resolverlo, puedes verlas aquí https://www.deriscope.com/docs/Andersen_Jaeckel_Kahl_2010.pdf

0voto

Valometrics.com Puntos 631

Si no quiere que su proceso CIR sea inferior a cero, esta condición debe cumplirse: $$2k\theta>\sigma^2$$ Por lo tanto, no se puede elegir un valor muy grande para la volatilidad. Está limitado por esta condición.

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