• 大小: 2KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-07
  • 语言: Matlab
  • 标签: B-S模型  

资源简介

采用沪深300指数期权数据,利用B-S模型计算隐含波动率。

资源截图

代码片段和文件信息

%隐含波动率计算
%导入数据采用IO1407的期权数据
op_p=xlsread(‘F:\西南证券\IO1406-P-2150.xlsx‘1‘E2:E60‘);
index_s=xlsread(‘F:\西南证券\IO1406-P-2150.xlsx‘1‘F2:F60‘);
maturity_T=xlsread(‘F:\西南证券\IO1406-P-2150.xlsx‘1‘G2:G60‘);

r=log(1+0.0385);
k=2150;
%C=50;
n=length(op_p);
implied_sigma=ones(n1);
for i=1:n
   temp=0;
   s_sigma=0;
e_sigma=1000;
t_sigma=(s_sigma+e_sigma)/2;
d1=(log(index_s(i)/k)+(r+0.5*t_sigma*t_sigma)*maturity_T(i))/t_sigma*sqrt(maturity_T(i));
d2=(log(index_s(i)/k)+(r-0.5*t_sigma*t_sigma)*maturity_T(i))/t_sigma*sqrt(maturity_T(i));
%C=index_s(i)*normcdf(d1)-k*exp(-r*maturity_T(i))*normcdf(d2);
P=k*exp(-r*maturity_T(i))*(1-normcdf(d2))-index_s(i)*(1-normcdf(d1));

 while (abs(P-op_p(i))>0.01&&temp<20)
if P    temp=temp+1;
    s_sigma=t_sigma;
    t_sigma=(s_sigma+e_sigma)/2;
d1=(log(index_s(i)/k)+(r+0.5*t_sig

评论

共有 条评论

相关资源