[Matlab] esercizio opzioni barriera
salve a tutti
devo scrivere un programma con il matlab per calcolare il prezzo di un'opzione barriera call-down-out europea; usando il metodo di montecarlo e la discretizzazione di eulero.
Ho provato a scrivere il programma, ma non so è giusto. Qualcuno potrebbe aiutarmi? Mi serve per un'esame in università, ma la prof ha fatto solo 3 lezioni sul matlab, quindi mi sento parecchio in difficoltà. Grazie a chi può darmi qualche consiglio :S
disp('Introdurre la numerosità del campione:')
N=input('N= ');
disp('Introdurre S0:')
S0=input('S0= ');
disp('Introdurre K:')
K=input('K= ');
disp('Introdurre sigma:')
sigma=input('sigma= ');
disp('Introdurre r:')
r=input('r= ');
disp('Introdurre T:')
T=input('T= ');
disp('Introdurre il numero di intervalli temporali M:')
M=input('M= ');
disp('Introdurre barriera inferiore L:')
L=input('L= ');
disp('Introdurre rebate R:')
R=input('R= ');
disp('Introdurre q:')
R=input('q= ');
k=T/N; S=zeros(1,N+1); %t=zeros(1,N+1);
S(1)=S0;
for i=1:N
for j=1:M
%t(i+1)=t(i)+k;
S(i+1)=S(i)*exp((r-sigma*sigma-q)*T+sqrt(k)*sigma*Y);
end
if max(S(i))
P(j)=(max(S(N)-K));
else
P(j)=R;
end
end
Price=exp(-r*T)*mean(P)

Ho provato a scrivere il programma, ma non so è giusto. Qualcuno potrebbe aiutarmi? Mi serve per un'esame in università, ma la prof ha fatto solo 3 lezioni sul matlab, quindi mi sento parecchio in difficoltà. Grazie a chi può darmi qualche consiglio :S
disp('Introdurre la numerosità del campione:')
N=input('N= ');
disp('Introdurre S0:')
S0=input('S0= ');
disp('Introdurre K:')
K=input('K= ');
disp('Introdurre sigma:')
sigma=input('sigma= ');
disp('Introdurre r:')
r=input('r= ');
disp('Introdurre T:')
T=input('T= ');
disp('Introdurre il numero di intervalli temporali M:')
M=input('M= ');
disp('Introdurre barriera inferiore L:')
L=input('L= ');
disp('Introdurre rebate R:')
R=input('R= ');
disp('Introdurre q:')
R=input('q= ');
k=T/N; S=zeros(1,N+1); %t=zeros(1,N+1);
S(1)=S0;
for i=1:N
for j=1:M
%t(i+1)=t(i)+k;
S(i+1)=S(i)*exp((r-sigma*sigma-q)*T+sqrt(k)*sigma*Y);
end
if max(S(i))
else
P(j)=R;
end
end
Price=exp(-r*T)*mean(P)