3D plot for pricing options over increasing time and asset price
6 views (last 30 days)
Show older comments
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 Comments
Answers (1)
Patel Mounika
on 19 Feb 2019
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 Comments
Patel Mounika
on 19 Feb 2019
You can use 3D plots available in MATLAB like mesh,surface plots etc.,Please refer to
the below link.,
See Also
Categories
Find more on Price and Analyze Financial Instruments in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!