swapbybdt

利率树的价格掉期工具

描述

例子

(价格,PriceTree,CFTree,SwapRate) = swapbybdt (BDTTree,LegRate,解决,成熟)从黑人玩具利率树中为掉期工具定价。swapbybdt计算香草掉期、摊销掉期和远期掉期的价格。

例子

(价格,PriceTree,CFTree,SwapRate) = swapbybdt (___,名称,值)添加额外的名称-值对参数。

例子

全部折叠

为利率掉期定价,包括固定的接收环节和浮动的支付环节。每年支付一次,名义本金金额为100美元。其余参数的值为:

  • 固定腿票面利率:0.15 (15%)

  • 浮动腿的价差:10个基点

  • 掉期结算日期:2000年1月1日

  • 掉期到期日:2003年1月1日

根据上面的信息,设置所需的参数并构建LegRate,LegType,LegReset矩阵:

解决=' 01 - 1月- 2000;成熟=' 01 - 1月- 2003;基础= 0;校长= 100;le格拉特= [0.15 10];% (CouponRate传播)LegType = [1 0];%(固定浮动)LegReset = [11];%每年支付一次

用。为掉期定价BDTTree包含在mati文件中deriv.matBDTTree包含为工具定价所需的时间和正向汇率信息。

负载deriv.mat;

使用swapbybdt来计算掉期的价格。

价格=互换,结算,到期LegReset, Basis, Principal, LegType)
价格= 7.4222

利用前面的数据,计算掉期利率,固定腿的息票率,使掉期价格在时间= 0时为零。

le格拉特= [NaN 20];[Price, PriceTree, CFTree, SwapRate] =le格拉特,定居,成熟,LegReset,基础,本金,腿型)
价格= -1.4211 e-14
PriceTree =结构体字段:[0 1 2 3 4] PTree: {1x5 cell}
CFTree =结构体字段:[0 1 2 3 4] CFTree: {[NaN] [NaN NaN] [NaN NaN] [NaN NaN] [NaN NaN] [NaN NaN NaN] [NaN NaN NaN] [1x4 double]}
SwapRate = 0.1205

为摊还互换定价主要用于定义摊销时间表的输入参数。

创建RateSpec

率= 0.035;ValuationDate =“1 - 1月- 2011”;startdate可以= 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 - 1月- 2011”;成熟=“1 - 1月- 2017”;时间= 1;le格拉特= [0.04 10];

定义交换摊还计划。

校长= {{“1 - 1月- 2013”100;“1 - 1月- 2014”80;“1 - 1月- 2015”60;“1 - 1月- 2016”40;“1 - 1月- 2017”20}};

构建BDT树并假设波动率为10%。

MatDates = {“1 - 1月- 2012”;“1 - 1月- 2013”;“1 - 1月- 2014”;“1 - 1月- 2015”;“1 - 1月- 2016”;“1 - 1月- 2017”};BDTTimeSpec = BDTTimeSpec (ValuationDate, MatDates);波动率= 0.10;BDTVolSpec = BDTVolSpec (ValuationDate, matdate, Volatility*ones(1,length(matdate))');BDTT = bdttree(BDTVolSpec, RateSpec, BDTTimeSpec);

计算摊还掉期的价格。

Price = swapbybdt, LegRate, Settle, Maturity, Maturity,“校长”校长)
价格= 1.4574

用。为远期掉期定价StartDate可以输入参数来定义交换的未来开始日期。

创建RateSpec

率= 0.0325;ValuationDate =“1 - 1月- 2012”;startdate可以= ValuationDate;EndDates =“1 - 1月- 2018”;复合= 1;RateSpec = intenvset (“ValuationDate”ValuationDate,startdate可以的startdate可以,“EndDates”EndDates,“利率”率,“复合”复合)
RateSpec =结构体字段:FinObj: 'RateSpec'复利:1盘:0.8254利率:0.0325结束时间:6开始时间:0结束日期:737061开始日期:734869 ValuationDate: 734869 Basis: 0月底规则:1

构建波动率为10%的树。

MatDates = {“1 - 1月- 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, matdate, Volatility*ones(1,length(matdate))');BDTT = bdttree(BDTVolSpec, RateSpec, BDTTimeSpec);

计算两年期(2014年1月1日)、三年到期、远期掉期利率为3.85%的远期掉期价格。

解决=“1 - 1月- 2012”;成熟=“1 - 1月- 2017”;StartDate可以=“1 - 1月- 2014”;[0.0385];Price = swapbybdt, LegRate, Settle, Maturity, Maturity,StartDate可以的StartDate可以)
价格= 1.3203

利用前面的数据,计算远期掉期利率,即固定腿的息票率,使远期掉期价格在时刻= 0时为零。

le格拉特= [NaN 10];3 . SwapRate (n .)交换率,交换率【同】【例】StartDate可以的StartDate可以)
价格= -4.9738 e-12
SwapRate = 0.0335

输入参数

全部折叠

利率树形结构,由bdttree

数据类型:结构体

分段速率,指定为aNINST——- - - - - -2矩阵,每一行定义为:

  • (CouponRate传播)(fixed-float)

  • (CouponRate传播)(float-fixed)

  • [CouponRate CouponRate](惯性)

  • (传播扩散)(float-float)

CouponRate是十进制的年利率。传播为参考利率上的基点数目。第一列表示接收端,第二列表示支付端。

数据类型:

结算日期,指定为标量或NINST——- - - - - -1串行日期数字的向量或日期字符向量。

解决将每个交换的日期设置为ValuationDateBDT树的。交换观点解决将被忽略。

数据类型:字符|

到期日,指定为NINST——- - - - - -1表示每个交换的到期日期的串行日期号向量或日期字符向量。

数据类型:字符|

名称-值对的观点

的可选逗号分隔对名称,值参数。的名字参数名称和价值为对应值。的名字必须出现在引号内。可以按任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:(价格、PriceTree CFTree SwapRate] = swapbybdt (BDTTree LegRate,解决、成熟度、LegReset基础上,校长,LegType)

每个交换的每年重置频率,指定为逗号分隔的对,由“LegReset”和一个NINST——- - - - - -2向量。

数据类型:

表示每个分支的基的日计数基,指定为逗号分隔的对,由“基础”和一个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 =总线/ 252

有关更多信息,请参见基础

数据类型:

名义本金金额或本金价值表,指定为逗号分隔的对,包括“校长”以及向量或单元数组。

主要接受一个NINST——- - - - - -1向量或NINST——- - - - - -1单元阵列(或NINST——- - - - - -2如果主要是不同的每个分支)名义本金金额或本金价值表。对于调度,单元格数组的每个元素是aNumDates——- - - - - -2数组,其中第一列是日期,第二列是与之关联的名义主值。日期表示主值有效的最后一天。

数据类型:细胞|

类型,指定为逗号分隔的对,由“LegType”和一个NINST——- - - - - -2矩阵的值[1](惯性),[1 0](fixed-float),[0 1](float-fixed),或[0 0](float-float)。每一行代表一个乐器。每一列表示对应的腿是否固定(1)或浮动(0)。这个矩阵定义了输入值的解释LegRateLegType允许[1](惯性),[1 0](fixed-float),[0 1](float-fixed),或[0 0](float-float)互换

数据类型:

衍生品期权定价结构,指定为逗号分隔的一对组成“选项”以及从使用中获得的结构derivset

数据类型:结构体

时生成日期的月末规则标志成熟一个月的月末日期是否包含30天或更少的天数,指定为逗号分隔的对“EndMonthRule”和一个非负整数[0,1)使用NINST——- - - - - -1(或NINST——- - - - - -2如果EndMonthRule每条腿都不一样)。

  • 0=忽略规则,这意味着付款日期总是同一个数字月的一天。

  • 1= Set rule on,意思是付款日期总是这个月的最后一天。

数据类型:逻辑

标志根据实际期间日计数调整现金流,指定为逗号分隔的对“AdjustCashFlowsBasis”和一个NINST——- - - - - -1(或NINST——- - - - - -2如果AdjustCashFlowsBasis是不同的为每个腿)的逻辑的价值0(虚假的)或1(真正的)。

数据类型:逻辑

工作日约定,指定为逗号分隔的对,由“BusinessDayConvention”和一个字符向量N——- - - - - -1(或NINST——- - - - - -2如果BusinessDayConvention不同的腿)单元格阵列的字符向量的工作日惯例。对工作日约定的选择决定了如何处理非工作日。非工作日定义为周末加上任何其他不营业的日期(如法定节假日)。值:

  • 实际-非工作日被有效地忽略。非营业日的现金流量假定按实际日期分配。

  • 遵循-非营业日的现金流量假定在下一个营业日分配。

  • modifiedfollow-非营业日的现金流量假定在下一个营业日分配。但是,如果下一个营业日是在不同的月份,则改为前一个营业日。

  • 以前的-非营业日的现金流量假定在前一个营业日分配。

  • modifiedprevious-非营业日的现金流量假定在前一个营业日分配。但如前一个营业日在不同月份,则改为下一个营业日。

数据类型:字符|细胞

在计算业务日中使用的假日,指定为逗号分隔的对,由“假期”和MATLAB日期数字使用NHolidays——- - - - - -1向量。

数据类型:

日期交换实际上开始,指定为逗号分隔的对,由StartDate可以的和一个NINST——- - - - - -1使用序列号或字符向量的日期向量。

使用这个参数为远期掉期定价,也就是在未来开始的掉期

数据类型:字符|

输出参数

全部折叠

0时刻的预期掉期价格,返回为aNINST——- - - - - -1向量。

工具价格树结构,返回为MATLAB树结构,其中包含交换工具价格向量和每个节点的观测时间向量。在PriceTree:

  • PriceTree.PTree包含清洁价格。

  • PriceTree.tObs包含观测时间。

交换现金流,以树结构返回,每个节点上都有交换现金流的向量。这个结构只包含这是因为使用二项式重组树,不能在树的每个节点上精确地计算现金流。

适用于固定腿的费率,返回为aNINST——- - - - - -1适用于固定分支的利率向量,使互换的值在时刻0为零。该利率用于计算掉期价格时,指定的利率为固定分支LegRate。的SwapRate输出用对于那些文书CouponRate未设置为

更多关于

全部折叠

摊还期

在摊销掉期中,名义本金会周期性地减少,因为它与本金余额递减(摊销)的基础金融工具有关,比如抵押贷款。

远期互换

在未来某一固定日期签订利率互换协议的协议。

之前介绍过的R2006a