3D plot for pricing options over increasing time and asset price
6 次查看(过去 30 天)
显示 更早的评论
I have a function that works out the black scholes formula over changing time and price of the underlying.
I need C to store and save the answer for each iteration, in vector form, in order to plot a 3D to show the price of the call option changing over time and increasing underlying price.
S0=100;
X=120;
r=0.1;
sigma=0.2;
N=50;
x1=linspace(0,0.5,N); %time in years
x2=[0:1:N]'; %price of the underlying
C=zeros(1,N);
for x2=0:N
for x1=0:N
d1=(log(x2/X)+(r+0.5*sigma.^2)*x1)/(sigma*sqrt(x1));
d2=d1-sigma.*sqrt(x1);
C=S0*normcdf(d1)-X*exp(-r*x1)*normcdf(d2)
end
end
2 个评论
回答(1 个)
Patel Mounika
2019-2-19
You can use array indexing to store the values of C in each iteration.
i=1;
for x2=0:N
for x1=0:N
d1=(log(x2/X)+(r+0.5*sigma.^2)*x1)/(sigma*sqrt(x1));
d2=d1-sigma.*sqrt(x1);
C(i)=S0*normcdf(d1)-X*exp(-r*x1)*normcdf(d2)
i=i+1;
end
end
This might help you.
2 个评论
Patel Mounika
2019-2-19
You can use 3D plots available in MATLAB like mesh,surface plots etc.,Please refer to
the below link.,
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Price and Analyze Financial Instruments 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!