4衍射工具的分析和定价.docx
- 文档编号:4091080
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:38
- 大小:104.48KB
4衍射工具的分析和定价.docx
《4衍射工具的分析和定价.docx》由会员分享,可在线阅读,更多相关《4衍射工具的分析和定价.docx(38页珍藏版)》请在冰点文库上搜索。
4衍射工具的分析和定价
材料四:
金融衍生品定价
一、欧式期权的定价
(1)blsprice函数
目的Black-Scholes看涨-看跌期权定价
格式[callprice,putprice]=blsprice(price,strike,rate,time,volatility,dividendrate)
参数price标的资产价格
Strike执行价格
Rate无风险利率
Time距期权到期日的时间,即期权的存续期
Volatility标的资产波动的标准差
Dividendrate标的资产红利率。
默认=0。
描述使用Black-Scholes定价公式计算卖权和买权的价值。
这个方程使用normcdf,统计工具箱中的一般累积分布方程。
例1当前股票价格是$100,期权执行价是$95,无风险利率是10%,距期权到期日0.25年,资产波动率标准差是50%,试求该股票欧式期权价格。
price=100;
strike=95;
rate=0.1;
time=0.25;
volatility=0.5;
[callprice,putprice]=blsprice(price,strike,rate,time,volatility)
callprice=
13.6953
putprice=
6.3497
(2)blkprice函数
目的Black’s期货期权定价,布莱克期权定价公式
格式[call,put]=blkprice(forwardprice,strike,rate,time,volatility)
参数Forwardprice:
0时刻资产的远期价格,必须大于0。
Strike:
期权的执行价,必须大于0。
Rate无风险利率,必须大于等于0。
Time至期权到期日的时间,必须大于0。
Volatility资产价格的标准差,必须大于等于0。
例2期货的远期价格是$95,期权的执行价是$98,无风险利率是11%,距期权到期日的事件时3年,期货价格的标准差是2.5%,求其欧式期权。
forwardprice=95;
strike=98;
rate=0.11;
time=3;
volatility=0.025;
[call,put]=blkprice(forwardprice,strike,rate,time,volatility)
call=0.4162
put=2.5729
(3)binprice函数
目的二项式期权定价(二叉树(CRR)模型定价数值解)
格式[assetprice,optionvalue]=binprice(price,strike,rate,time,increment,volatility,flag,
dividendrate,dividend,exdiv)
参数price资产价格
Strike期权执行价
Rate无风险利率
Time距到期日的期权时间
Increment时间增量,调节以保证每个期间长度与期权到期日相一致
Volatility资产标准差
Flag确定期权类型,看涨期权(买权,flag=1),看跌期权(卖权,flag=0)
Dividendrate(期权)红利发放率,默认=0,表示没有红利。
如果给出红利,设置divident和exdiv为零,或不输入内容;如果divident和exdiv输入价值,设置dividendrate=0.
Dividend标的资产价外的红利金额,除了固定红利之外的红利,必须对应除息日期,默认=0;
Exdiv标的资产的除息日期,默认=0
Assetprice:
二叉树每个节点的价格
Optionvalue:
期权在每个节点的现金流
描述使用cox-ross-rubinstein二叉树定价模型定价期权.
例3设一卖权,资产价格是$52,期权执行价是$50,无风险利率10%,期权到期日是5个月,资产标准差40%,在3.1/2月时有一次股息支付$2.06,利用二叉树模型估计看铁期权价格。
price=52;
strike=50;
rate=0.1;
time=5/12;
increment=1/12;
volatility=0.4;
flag=0;
dividentrate=0;
divident=2.06;
exdiv=3.5;
[price,option]=binprice(price,strike,rate,time,increment,volatility,flag,dividentrate,divident,exdiv)
得出二叉树每个交点处的资产价格和期权价值.
Price=
52.000058.136765.022672.749479.351589.0642
46.564252.033658.170662.988270.6980
41.723146.598149.999256.1192
37.412039.688744.5467
31.504435.3606
028.0688
option=
4.44042.16270.6361000
06.86113.77151.301800
0010.15916.37852.66450
00014.224510.31135.4533
000018.495614.6394
0000021.9312
由结果可知,option第一行第一列就是看铁期权价格,该期权价格为4.4404元。
二、欧式期权价格变动的敏感度
(1)欧式期权delta值
考查期权价格随标的资产价格变化的关系,其数学含义是期权价格相对于标的的资产价格的偏导数:
其中,c是期权价格,p是标的资产价格。
格式[calldelta,putdelta]=blsdelta(price,strike,rate,time,volatility,dividendrate)
参数同blsprice
例4当前股票价格是$50,期权执行价是$50,无风险利率是10%,期权存续期为0.25年,波动率标准差是30%,存续期内无红利,计算该期权delta值。
price=50;
strike=50;
rate=0.1;
time=0.25;
volatility=0.3;
dividendrate=0;
[calldelta,putdelta]=blsdelta(price,strike,rate,time,volatility,dividendrate)
calldelta=0.5955
putdelata=-0.4045
(2)欧式期权gamma值
衡量delata与标的资产价格变动的关系,其数学角度是期权价格对于标的资产的二阶偏导数:
格式gamma=blsgamma(price,strike,rate,time,volatility,dividendrate)
参数同blsprice
例5当前股票价格是$50,期权执行价是$50,无风险利率是12%,期权存续期为0.25年,波动率标准差是30%,存续期内无红利,计算该期权gamma值。
price=50;
strike=50;
rate=0.12;
time=0.25;
volatility=0.3;
dividendrate=0;
gamma=blsgamma(price,strike,rate,time,volatility,dividendrate)
gamma=0.0512
(3)欧式期权theta值
衡量期权价格与时间变化之间的关系,其数学角度是期权价格对于时间的偏导数:
其中t为期权的存续期
格式:
[CallTheta,PutTheta]=blstheta(Price,Strike,Rate,Time,Volatility, DividendRate)
参数:
同blsprice
描述:
返回买权的Theta和卖权的Theta.Theta是期权价值对时间的敏感性.
例6当前股票价格是$50,期权执行价是$50,无风险利率是12%,期权存续期为0.25年,波动率标准差是30%,存续期内无红利,计算该期权theta值。
price=50;
strike=50;
rate=0.12;
time=0.25;
volatility=0.3;
dividendrate=0;
[calltheta,puttheta]=blstheta(price,strike,rate,time,volatility,dividendrate)
Calltheta=-8.9630
Puttheta=-3.1404
(4)欧式期权rho值
衡量期权价格与无风险利率之间的关系,其数学角度是期权价格对于无风险利率的偏导数:
其中r为期权的存续期
格式:
[CallRho,PutRho]=blsrho(Price,Strike,Rate,Time,Volatility,DividendRate)
参数:
同上
例7当前股票价格是$50,期权执行价是$50,无风险利率是12%,期权存续期为0.25年,波动率标准差是30%,存续期内无红利,计算该期权Rho值。
price=50;
strike=50;
rate=0.12;
time=0.25;
volatility=0.3;
dividendrate=0;
[callrho,putrho]=blsrho(price,strike,rate,time,volatility,dividendrate)
callrho=
6.6686
putrho=
-5.4619
(5)欧式期权vega值
衡量期权价格与标的资产波动率之间的关系,其数学角度是期权价格对于波动率的偏导数:
其中
为标的资产标准差
格式:
Vega=blsvega(Price,Strike,Rate,Time,Volatility,DivedendRate)
参数:
同上
例8当前股票价格是$50,期权执行价是$50,无风险利率是12%,期权存续期为0.25年,波动率标准差是30%,存续期内无红利,计算该期权Vega值。
price=50;
strike=50;
rate=0.12;
time=0.25;
volatility=0.3;
dividendrate=0;
vega=blsvega(price,strike,rate,time,volatility,dividendrate)
Vega=9.6035
(6)期权lambda值
指量度期权杠杆水平的一个比率,显示标的资产的价格每变动一个百分点,可导致期权价格变动的百分比。
格式[CallEl,PutEl]=blslambda(price,strike,rate,time,volatility,dividendrate)
参数同上
描述[CallEl,PutEl]=blslambda(price,strike,rate,time,volatility,dividendrate)得出期权的弹性。
CallEl是买权弹性或杠杆要素,PutEl是卖权弹性或杠杆要素。
Note这个方程使用normcdf,统计工具箱中的一般累积分布方程。
例9当前股票价格是$50,期权执行价是$50,无风险利率是12%,期权存续期为0.25年,波动率标准差是30%,存续期内无红利,计算该期权lambda值。
price=50;
strike=50;
rate=0.12;
time=0.25;
volatility=0.3;
dividendrate=0;
[CallEl,PutEl]=blslambda(price,strike,rate,time,volatility,dividendrate)
CallEl=8.1274
PutEl=-8.6466
(7)欧式期权隐含波动率
利用欧式期权价格,推出隐含波动率的标准差
格式volatility=blsimpv(price,strike,rate,time,call,MaxIterations)
参数price标的资产当前价格
Strike期权执行价
Rate无风险利率
Time距期权到期日的时间。
Call买权价格
MaxIterations(期权)用于通过Newton法求出变化率的迭代最大数。
Volatility欧式期权隐含波动率
例10资产现价$100,执行价$95,无风险利率7.5%,距期权到期日0.25年,买权价值$10.00,求其欧式期权隐含波动率。
price=100;
strike=95;
rate=0.075;
time=0.25;
call=10;
volatility=blsimpv(price,strike,rate,time,call)
volatility=
0.3130
三、期权收益
opprofit函数
格式:
Profit=opprofit(Asset,Strike,Cost,PosFlag,OptType)
参数:
Asset标的资产价格
Strike执行价格或敲定价格
Cost期权价格
PosFlag期权情况,0表示长期,1表示短期。
OptType期权类型,0表示看涨期权,1表示看跌期权。
Profit期权的收益。
例11:
买一份价格为4美元的期权,标的资产现价为100美元,执行价格为90美元。
Asset=100;
Strike=90;
Cost=4;
PosFlag=0;
OptType=0;
Profit=opprofit(Asset,Strike,Cost,PosFlag,OptType)
Profit=
6.00
若期权在这种情况下执行,则收益为6美元。
四、证券类衍生产品价格树建立
1.标的资产输入格式
MATLAB对衍生产品定价是通过价格树来完成,价格树由3部分构成:
标的资产特征、无风险利率特征与时间的离散方法,公式:
价格树=证券特征+无风险利率特征+时间的离散方法
(1)证券特征
格式:
Stockspec=stockspec(Sigma,AssetPrice,DividendType,…,
DividendAmounts,ExDividendDates)
参数:
Sigma标的资产波动率
AssetPrice标的资产价格
DividendType红利发放形式,'cash'现金红利绝对额,'constant'常数红利,
'continuous'连续形式红利
DividendAmounts发放红利的数量,可以用向量表示,或用标量表示每年以固定数量
发放的红利
ExDividendDates除息日,若红利是连续型,则不需要该参数
例11已知标的资产的标准差为0.27,当期价格为50,标的资产红利发放格式如表
时间
2003年1月3日
2003年4月1日
2003年7月5日
2003年10月1日
现金
0.5
0.5
0.5
0.5
则标的资产格式如下:
Sigma=0.27;
AssetPrice=50;
DividendType='cash';
DividendAmounts=[0.50.50.50.5]';%DividendAmounts=0.5
ExDividendDates={'01/03/2003';'04/01/2003';'07/05/2003';'10/1/2003'};
Stockspec=stockspec(Sigma,AssetPrice,DividendType,DividendAmounts,ExDividendDates)
Stockspec=
FinObj:
'StockSpec'
Sigma:
0.2700
AssetPrice:
50
DividendType:
'cash'
DividendAmounts:
[4x1double]
ExDividendDates:
[4x1double]
可用结构变量方式打开,代码如下
Stockspec.DividendAmounts
ans=
0.5000
0.5000
0.5000
0.5000
(2)无风险收益率格式
格式:
[RateSpec,RateSpecOld]=intenvset('Parameter1',Value1,'Parameter2',Value2,...)
参数:
'Parameter1'参数1的名称
Value1参数1的值
'Parameter2'参数2的名称
Value2参数2的值
RateSpec:
无风险利率新格式
RateSpecOld:
无风险利率旧格式
具体格式:
RateSpec=intenvset('Compounding',Compounding,'Rates',Rates,…
'StartDates',StartDates,'EndDates',EndDates)
Compounding:
票息转换为贴现率方式,默认值为2,可取1,2,3,4,6,12
Rates:
国债票息
StartDates:
开始日
EndDates:
结束日
其运行结果中
Disc:
贴现率
ValuationDate:
评估日,即价格树起始时间
Basis:
应计天数计算方式
EndMonthRule:
月末法则
例12国债利率为复合利率,票息及其支付日如表
起息日
2000-1-1
---
---
---
到期日
2001-1-1
2002-1-1
2003-1-1
2004-1-1
利息
0.02
0.03
0.03
0.05
则无风险利率格式如下:
Compounding=1;
Rates=[0.020.030.040.05]';
StartDates=['01/01/2000'];
EndDates={'01/01/2001';'01/01/2002';'01/01/2003';'01/01/2004'};
RateSpec=intenvset('Compounding',1,'Rates',Rates,'StartDates',StartDates,'EndDates',EndDates)
RateSpec=
FinObj:
'RateSpec'
Compounding:
1
Disc:
[4x1double]
Rates:
[4x1double]
EndTimes:
[4x1double]
StartTimes:
[4x1double]
EndDates:
[4x1double]
StartDates:
730486
ValuationDate:
730486
Basis:
0
EndMonthRule:
1
可用结构变量方式打开,代码如下
RateSpec.Disc
ans=
0.9804
0.9426
0.8890
0.8227
可以用datedisp函数检验定义在变量RateSpec.中日期。
例如
datedisp(RateSpec.ValuationDate)
输出结果将是
01-Jan-2000
(3)树图时间离散格式
1)CRR模型时间离散格式
格式TimeSpec=crrtimespec(ValuationDate,Maturity,NumPeriods)
ValuationDate:
评估日,CRR型树起始日期
Maturity:
到期日
NumPeriods:
离散时间段
TimeSpec:
时间离散格式
例13期权生效日为2002年7月1日,到期日为2006年7月1日,分四段进行离散。
ValuationDate='07/01/2002';
Maturity='07/01/2006';
NumPeriods=4;
TimeSpec=crrtimespec(ValuationDate,Maturity,NumPeriods)
TimeSpec=
FinObj:
'BinTimeSpec'
ValuationDate:
731398
Maturity:
732859
NumPeriods:
4
Basis:
0
EndMonthRule:
1
tObs:
[01234]
dObs:
[731398731763732129732494732859]
2)EQP模型时间离散格式
格式TimeSpec=eqptimespec(ValuationDate,Maturity,NumPeriods)
ValuationDate:
评估日,EQP型树起始日期
Maturity:
到期日
NumPeriods:
离散时间段
TimeSpec:
时间离散格式
如上例
ValuationDate='07/01/2002';
Maturity='07/01/2006';
NumPeriods=4;
TimeSpec=eqptimespec(ValuationDate,Maturity,NumPeriods)
TimeSpec=
FinObj:
'BinTimeSpec'
ValuationDate:
731398
Maturity:
732859
NumPeriods:
4
Basis:
0
EndMonthRule:
1
tObs:
[01234]
dObs:
[731398731763732129732494732859]
2.二叉树建立
(1)格式CRRTree=crrtree(Stockspec,RateSpec,TimeSpec)
Stockspec:
股票格式
RateSpec:
利率格式
TimeSpec:
时间的离散化方法
CRRTree:
价格树
例14股票波动的标准差为0.2,标的资产价格为50,红利类型为现金红利,除息日期如表
日期
2003年1月3日
2003年4月1日
2003年7月1日
2003年10月1日
红利
0.5
0.5
0.5
0.5
第一步,设定标的资产格式
Sigma=0.2;
AssetPrice=50;
DividendType='cash';
DividendAmounts=[0.50.50.50.5]';
ExDividendDates={'01/03/2003';'04/01/2003';'07/01/2003';'10/01/2003'};
Stockspec=stockspec(Sigma,AssetPrice,DividendType,DividendAmounts,ExDividendDates)
Stockspec=
FinObj:
'StockSpec'
Sigma:
0.2000
AssetPrice:
50
DividendType:
'cash'
DividendAmounts:
[4x1d
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 衍射 工具 分析 定价