我在matlab中为定价选项编写了以下代码:
function call=CallBinomial(S,E,T,r,sigma)
S=100;
E=90;
T=2;
r=0.03;
sigma=0.2;
n=50;
dt=T/n;1
u=exp(sigma*sqrt(dt)+(r+0.5*sigma^2)*dt); d=1/u;
disf=exp(-r*dt);
p=0.5;
X=zeros(n+1,n+1);
for k=1:(n+1)
X(n+1,k)=max(S*u^(k-1)*d^(n-k+1)-E,0);
end
for m=n:-1:1
for k=1:m
X(m,k)=disf*( p*X(m+1,k+1) + (1-p)*X(m+1,k) );
end
end
call=X(1,1)
我想绘制一个调整值变化的图表,因为我改变了不同的参数S,r,sigma,但我不确定如何做到这一点。
答案 0 :(得分:0)
这是一个简单的示例,您可以在其中更改参数以在 a for循环中绘制:
for i = 1:.1:2
plot(i,i); % plot different things
axis([0 3 0 3]); % forces a constant size of window
pause(.2); % pauses before the next plot
end