Estoy tratando de fijar el precio de una llamada Down-and-Out utilizando la simulación de Monte Carlo. El problema es que obtengo el precio correcto para la opción vainilla (el mismo precio que la fórmula analítica de Black y Scholes) pero no obtengo el precio correcto para la Call down-and-out.
S0 = 105 % Price of underlying
sig = 0.28; % vol
mu = 0.0025; % drift
B = 101 % Barrier
K = 100 % Strike
En concreto, el precio correcto es de 4,14 mientras que yo obtengo alrededor de 5 con la simulación de Monte carlo. ¿Pueden ayudarme?
nbrsim = 10000;
S = zeros(nbrsim,nbre_step+1);
for j = 1:nbrsim
S(j,1)=S0;
for i = 1:nbrstep
t(i+1)=t(i)+dt;
Z = normrnd(0,1);
S(j,i+1)=S(j,i) + mu*S(j,i)*dt + S(j,i) * sig * sqrt(dt) * Z;
end
ST(j)=S(j,nbrstep+1);
end
K=100
B = 101
for j = 1:nbrsim
if min(S(j,:)) <= B
l(j) = 0;
else
l(j) = 1;
end
vectpayoffs(j) = l(j)*max(ST(j) - K,0);
end
r= 0.0025
DF = exp(- r * T);
Downout = DF * 1/nbrsim * sum(vectpayoffs)
No entiendo por qué no consigo el precio adecuado. ¿Hay algún error?
Gracias.
1 votos
Dar a conocer su aplicación. ¿Está seguro de que su proceso estocástico se detiene al llegar a la barrera?
0 votos
¿Qué método utiliza para detectar que se ha cruzado la barrera?
0 votos
@poco por favor pregunte sus cuentas a fusionar .