全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
1184 0
2012-04-26
t=0:0.001:1;%时间跨度

dt=0.001;%时间间隔
z=zeros(1001,1);%预留计算内存空间
s=zeros(1001,1);
c=zeros(1001,1);
R=zeros(1001,1);
p=0.1;%假设股票收益率满足ds/s=p*dt+sig*dZ
sig=0.29;
s(1)=15;%股票现价
r=0.035;%无风险利率
k=17;%执行价
for i=1:1000;
z(i)=dt^0.5*randn(1);
R(i)= dt*p+sig*z(i);
s(i+1)=s(i)+s(i)*R(i);
d1=(log(s(i)/k)+(r+0.5*sig^2)*(1-t(i)))/sqrt(sig^2*(1-t(i)));
d2=(log(s(i)/k)+(r-0.5*sig^2)*(1-t(i)))/sqrt(sig^2*(1-t(i)));
c(i)=s(i)*normcdf(d1,0,1)-k*exp(-r*(1-t(i)))*normcdf(d2,0,1);
end
dd1=(log(s(1001)/17)+(r+0.5*sig^2)*(1-1))/sqrt(sig*(1-t(1001))+eps);
dd2=(log(s(1001)/17)+(r-0.5*sig^2)*(1-t(1001)))/sqrt(sig*(1-t(1001))+eps);
c(1001)=s(1001)*normcdf(dd1,0,1)-k*exp(-r*(1-t(1001)))*normcdf(dd2,0,1);
plot(t,s,'b'),grid on
xlabel('时间t');ylabel('股票价格S')
hold on
line([0,1],[15,15],'color','c')
line([0,1],[17,17],'color','g')
h1=gca %获得并保留当前图形的坐标句柄
h2=axes('position',get(h1,'position'))%创建新坐标并保留,h2和h1的位置是一样的
plot(t,c,'r')
set(h2,'yaxislocation','right','color','none')
ylabel('期权价格C')
hold off



这里假设股票收益率服从带漂移的维纳过程。模拟一条股价波动轨迹,再利用布莱克-舒尔斯方程求出相应点的期权价格。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群