来自Black-Derman-Toy利率树的价格互换工具
用固定接收端和浮动支付端对利率掉期进行定价。每年支付一次,名义本金为100美元。其余参数的值为:
固定腿票息:0.15 (15%)
利差浮动腿:10个基点
掉期结算日:2000年1月1日
掉期到期日:2003年1月1日
根据上述信息,设置所需的参数并构建LegRate
,LegType
和LegReset
矩阵:
解决='01 -Jan-2000';成熟度=' 01 - 1月- 2003;基础= 0;主要= 100;LegRate = [0.15 10];% (CouponRate传播)LegType = [1 0];%[固定浮点]LegReset = [1 1];%每年支付一次
使用价格交换BDTTree
包含在mat文件中deriv.mat
。BDTTree
包含为工具定价所需的时间和远期利率信息。
负载deriv.mat;
使用swapbybdt
来计算掉期的价格。
价格= swapbybdt(BDTTree,LegRate,定居,成熟,...(LegReset, Basis, Principal, LegType)
价格= 7.4222
使用先前的数据,计算出掉率,优惠券率为固定腿,使得所述交换价格在时间= 0为零。
[NaN 20];[Price, PriceTree, CFTree, SwapRate] = swapbybdt(BDTTree,...LegRate,定居,成熟,LegReset,基础,主体,LegType)
价格= -1.4211 e-14
PriceTree =结构体字段:FinObj: 'BDTPriceTree' tObs: [0 1 2 3 4] PTree: {1x5 cell}
CFTREE =结构体字段:[0 1 2 3 4] CFTree:{[南][南南][南南][南南南][南南南][1x4双]}
SwapRate = 0.1205
使用。对摊销掉期进行定价主要
输入参数来定义摊销计划。
创建RateSpec
。
率= 0.035;ValuationDate ='1-JAN-2011';StartDates = ValuationDate;EndDates =“1 - 1月- 2017”;复合= 1;RateSpec = intenvset (“ValuationDate”,ValuationDate,startdate可以的startdate可以,...“EndDates”,EndDates,“利率”率,“复合”复合)
RateSpec =结构体字段:FinObj: 'RateSpec'复合:1光盘:0.8135率:0.0350结束时间:6开始时间:0结束日期:736696开始日期:734504价值日期:734504基础:0结束月规则:1
使用下面的数据创建的交换设备:
解决='1-JAN-2011';成熟度=“1 - 1月- 2017”;时间= 1;le箅子= [0.04 10];
定义交换摊销计划。
校长= {{'1-JAN-2013'100;“1 - 1月- 2014”80;“1 - 1月- 2015”60;“1 - 1月- 2016”40;“1 - 1月- 2017”20}};
构建BDT树并假设波动率为10%。
MatDates = {'1-JAN-2012';'1-JAN-2013';“1 - 1月- 2014”;“1 - 1月- 2015”;“1 - 1月- 2016”;“1 - 1月- 2017”};BDTTimeSpec = BDTTimeSpec (ValuationDate, MatDates);波动率= 0.10;BDTVolSpec = BDTVolSpec (ValuationDate, MatDates, Volatility*one (1,length(MatDates))’);BDTT = bdttree(BDTVolSpec, RateSpec, BDTTimeSpec);
计算摊销掉期的价格。
价格= swapbybdt(BDTT, legrgrt, Settle, Maturity,“校长”校长)
价格= 1.4574
对远期掉期进行定价StartDate可以
输入参数来定义交换的未来开始日期。
创建RateSpec
。
率= 0.0325;ValuationDate ='1-JAN-2012';StartDates = ValuationDate;EndDates =“1 - 1月- 2018”;复合= 1;RateSpec = intenvset (“ValuationDate”,ValuationDate,startdate可以的startdate可以,...“EndDates”,EndDates,“利率”率,“复合”复合)
RateSpec =结构体字段:FinObj: 'RateSpec' 混配:1光盘:0.8254价格:0.0325 EndTimes:6个StartTimes:0 EndDates:737061个StartDates:734869 ValuationDate:734869个基础:0 EndMonthRule:1
用10%的易变率构建树。
MatDates = {'1-JAN-2013';“1 - 1月- 2014”;“1 - 1月- 2015”;“1 - 1月- 2016”;“1 - 1月- 2017”;“1 - 1月- 2018”};BDTTimeSpec = BDTTimeSpec (ValuationDate, MatDates);波动率= 0.10;BDTVolSpec = BDTVolSpec (ValuationDate, MatDates, Volatility*one (1,length(MatDates))’);BDTT = bdttree(BDTVolSpec, RateSpec, BDTTimeSpec);
计算两年(2014年1月1日)开始、三年(远期掉期利率为3.85%)到期的远期掉期的价格。
解决='1-JAN-2012';成熟度=“1 - 1月- 2017”;StartDate可以=“1 - 1月- 2014”;LegRate = [0.0385 10];价格= swapbybdt(BDTT, legrgrt, Settle, Maturity,StartDate可以的StartDate可以)
价格= 1.3203
使用前面的数据,计算远期掉期利率,固定期限的息票率,使远期掉期价格在= 0时为0。
LegRate = [NaN的10];[价格,〜,〜,SwapRate] = swapbybdt(BDTT,LegRate,沉降,成熟度,StartDate可以的StartDate可以)
价格= -4.5191 e-12
SwapRate = 0.0335
BDTTree
- - - - - -利率结构利率树结构,由bdttree
数据类型:结构体
LegRate
- - - - - -腿率步长速率,指定为aNINST
——- - - - - -2
矩阵,每一行定义如下:
(CouponRate传播)
(fixed-float)
(CouponRate传播)
(浮子固定)
[CouponRate CouponRate]
(惯性)
(传播扩散)
(float-float)
CouponRate
为十进制年利率。传播
是参考汇率上的基点数。第一列表示接收站,第二列表示付费站。
数据类型:双
解决
- - - - - -结算日期结算日期,指定为标量或NINST
——- - - - - -1
序列号或日期字符向量的向量。
的解决
将每个交换的日期设置为ValuationDate
BDT树的。交换观点解决
被忽略。
数据类型:字符
|双
成熟
- - - - - -成人礼到期日,指定为NINST
——- - - - - -1
序列日期数字或日期字符向量的向量,表示每个互换的到期日。
数据类型:字符
|双
指定可选的逗号分隔的对名称,值
参数。名称
参数名和值
是对应的值。名称
必须出现在引号内。可以按任意顺序指定多个名称和值对参数Name1, Value1,…,的家
。
[价格,PriceTree,CFTREE,SwapRate] = swapbybdt(BDTTree,LegRate,沉降,成熟度,LegReset,基础,负责人,LegType)
'LegReset'
- - - - - -每年复位频率为每个交换[1 1]
(默认)|向量重置频率每年为每个交换,指定为逗号分隔的对组成'LegReset'
和NINST
——- - - - - -2
向量。
数据类型:双
“基础”
- - - - - -表示用于每个支腿的基础天数的基础0
(实际/实际)(默认)|整数的0
至13
日计数基表示每条腿的基,指定为逗号分隔的对,由“基础”
和NINST
——- - - - - -1
数组(或NINST
——- - - - - -2
如果基础
为每个腿不同)。
0 =实际/实际
1 = 30/360 (SIA)
2 =实际/ 360
3 =实际/ 365
4 = 30/360 (PSA)
5 = 30/360 (ISDA)
6 = 30/360(欧洲)
7 =实际/ 365(日本)
8 =实际/实际(ICMA)
9 =实际/360 (ICMA)
10 =实际/365 (ICMA)
11 = 30 / 360E(ICMA)
12 =实际/ 365(ISDA)
13 = BUS / 252
有关更多信息,请参见基础。
数据类型:双
“校长”
- - - - - -名义本金金额或本金价值表100
(默认)|向量或单元数组概念主量或主值表,由逗号分隔的对组成“校长”
和一个向量或单元数组。
主要
接受一个NINST
——- - - - - -1
向量或NINST
——- - - - - -1
单元阵列(或NINST
——- - - - - -2
如果主要
的概念本金金额或本金价值表。对于调度,单元数组的每个元素都是NumDates
——- - - - - -2
阵列,其中第一列是日期,第二栏是其相关联的名义本金值。日期表示最后一天的主要价值是有效的。
数据类型:细胞
|双
“LegType”
- - - - - -腿型[1 0]
每台仪器(默认)|矩阵值[1 1]
(惯性),[1 0]
(fixed-float),[0 1]
(浮子固定),或[0 0]
(float-float)腿型,指定为逗号分隔的一对组成的“LegType”
和NINST
——- - - - - -2
矩阵值[1 1]
(惯性),[1 0]
(fixed-float),[0 1]
(浮子固定),或[0 0]
(float-float)。每一行代表一个乐器。每一列表示对应的段是否固定(1
)或浮动(0
)。这个矩阵定义了输入值的解释LegRate
。LegType
允许[1 1]
(惯性),[1 0]
(fixed-float),[0 1]
(浮子固定),或[0 0]
(浮子浮)互换
数据类型:双
“选项”
- - - - - -衍生工具定价及期权结构衍生品定价期权结构,指定由逗号分隔的对组成“选项”
并使用获得的结构derivset
。
数据类型:结构体
'EndMonthRule'
- - - - - -用于生成日期的月末规则标记成熟
月底的日期是30天还是更少天1
(效果)(默认)|非负整数[0,1]
用于生成日期的月末规则标记成熟
对于一个月有30天或更少天的月末日期,是否指定为逗号分隔的对'EndMonthRule'
和一个非负整数[0
,1
)使用NINST
——- - - - - -1
(或NINST
——- - - - - -2
如果EndMonthRule
为每个腿不同)。
0
=忽略规则,这意味着付款日期总是相同的数字天的一个月。
1
= Set rule on,意思是付款日期总是一个月的最后一天。
数据类型:逻辑
“AdjustCashFlowsBasis”
- - - - - -标志以调整现金流根据实际周期天数假
(默认)|的价值0
(虚假的)或1
(真正的)标志来调整现金流基于实际周期日数,指定为逗号分隔的一对组成的“AdjustCashFlowsBasis”
和NINST
——- - - - - -1
(或NINST
——- - - - - -2
如果AdjustCashFlowsBasis
为逻辑值的每个腿)同值的不同0
(虚假的)或1
(真正的)。
数据类型:逻辑
“BusinessDayConvention”
- - - - - -工作日约定实际
(默认)|特征向量|字符向量的单元阵列工作日公约,指定为逗号分隔的一对组成的“BusinessDayConvention”
和一个字符向量N
——- - - - - -1
(或NINST
——- - - - - -2
如果BusinessDayConvention
为工作日公约的字符向量的每个腿)单元阵列不同。对于工作日约定的选择将决定非工作日应如何处理。非营业日被定义为周末加任何其他日期,企业都开不了(如法定节假日)。价值观是:
实际
- 非营业日实际上被忽略。现金流量是在非工作日秋天被假定为实际日期分布。
遵循
-假设非营业日的现金流量在下一个营业日分配。
modifiedfollow
-假设非营业日的现金流量在下一个营业日分配。但是,如果下一个营业日在不同的月份,则采用前一个营业日。
以前
- 现金流量在非营业日那年秋天被假定为上一工作日发布。
modifiedprevious
- 现金流量在非营业日那年秋天被假定为上一工作日发布。但是,如果一个营业日是在不同的月份,下一个工作日改为采用。
数据类型:字符
|细胞
“假期”
- - - - - -在计算工作日使用假期holidays.m
(默认)|MATLAB®日期数字在计算业务日中使用的假日,指定为逗号分隔的对,由“假期”
用MATLAB实现的数据编号NHolidays
——- - - - - -1
向量。
数据类型:双
StartDate可以的
- - - - - -交换日期正式开始解决
日期(默认)|串行日期数字|特征向量日期交换实际开始,指定为逗号分隔的对StartDate可以的
和NINST
——- - - - - -1
使用串行日期数字或字符向量日期矢量。
用这个参数来为远期掉期定价,也就是在未来某个日期开始的掉期
数据类型:字符
|双
价钱
- 0时刻的预期掉期价格预计掉期价格在时间0,返回为NINST
——- - - - - -1
向量。
PriceTree
- 仪器价格的树形结构仪器价格的树状结构,作为MATLAB的树状结构返回,其中包含了仪器价格的交换向量和每个节点的观测时间向量。在PriceTree
:
PriceTree.PTree
包含干净的价格。
PriceTree.tObs
包含观察时间。
CFTree
- 交换现金流交换现金流,以树结构返回,每个节点上都有一个交换现金流向量。这个结构只包含南
是因为与二项式重组树,现金流不能精确地在树的每个节点计算。
SwapRate
-适用于固定腿的费率适用于固定腿的费率,以a退回NINST
——- - - - - -1
适用于固定支腿的利率向量,使掉期的值在时间0时为零。这个利率是用来计算掉期的价格时,为固定的腿指定的利率LegRate
是南
。的SwapRate
输出用以下内容填充南
这些文书,其中CouponRate
未设置为南
。
你点击了一个链接,对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入该命令来运行它。Web浏览器不支持MATLAB命令。金宝app
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文),以获得最佳的网站表现。其他MathWorks国家站点没有针对您所在位置的访问进行优化。