主要内容

bondbybk

Black-Karasinski利率树的价格债券

描述

例子

价格PriceTree= bondbybk(BKTreeCouponRate解决成熟布莱克-卡拉辛斯基利率树的债券价格。bondbybk计算普通债券、阶梯息票债券和摊销债券的价格。

例子

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

例子

全部折叠

用布莱克-卡拉辛斯基利率树为4%的债券定价。

负载deriv.mat,提供BKTree.的BKTree结构包含为债券定价所需的时间和利率信息。

负载deriv.mat

使用所需的参数定义绑定。其他参数使用默认值。

CouponRate = 0.04;Settle = datetime(2004,1,1);成熟度= datetime(2008,1,1);

使用bondbybk计算债券的价格。

周期= 1;价格= BKTree,息票率,结算,期限,期限
价格= 99.3296

利用市场数据为单级息票债券定价。

定义利率期限结构。

比率= [0.035;0.042147;0.047345;0.052707);ValuationDate = datetime(2010,1,1);StartDates = ValuationDate;EndDates = [datetime(2011,1,1);datetime(2012年,1,1);...datetime(2013年,1,1);datetime(2014年,1,1)];复利= 1;

创建RateSpec

RS = intvset (“ValuationDate”ValuationDate,startdate可以的startdate可以,...“EndDates”EndDates,“利率”率,“复合”复合)
RS =带有字段的结构:FinObj: 'RateSpec'复合:1盘:[4x1 double]利率:[4x1 double] EndTimes: [4x1 double] StartTimes: [4x1 double] EndDates: [4x1 double] StartDates: 734139估值日期:734139基础:0 EndMonthRule: 1

创建阶梯式键合工具。

Settle = datetime(2010,1,1);成熟度= [datetime(2011,1,1);datetime(2012年,1,1);datetime(2013年,1,1);datetime(2014年,1,1)];CouponRate = {{datetime(2012,1,1) .0425;datetime(2014,1,1) .0750}};周期= 1;

使用以下市场数据构建BK树:

VolDates = [datetime(2011,1,1);datetime(2012年,1,1);datetime(2013年,1,1);datetime(2014年,1,1)];VolCurve = 0.01;AlphaDates = datetime(2014,1,1);alpha曲线= 0.1;BKVolSpec = BKVolSpec (RS。ValuationDate,VolDates, VolCurve,...AlphaDates AlphaCurve);BKTimeSpec = BKTimeSpec (RS。ValuationDate,VolDates, Compounding); BKT = bktree(BKVolSpec, RS, BKTimeSpec);

计算阶梯式息票债券的价格。

债券收益率(BKT,息票率,结算,期限,期限)
PBK =4×1100.7246 100.0945 101.5900 102.0820

根据分期偿还计划为债券定价输入参数定义调度。

定义利率期限结构。

比率= 0.065;ValuationDate = datetime(2011,1,1);StartDates = ValuationDate;EndDates = datetime(2017、1、1);复利= 1;

创建RateSpec

RateSpec = intenvset(“ValuationDate”ValuationDate,startdate可以的startdate可以,...“EndDates”EndDates,“利率”率,“复合”复合)
RateSpec =带有字段的结构:FinObj: 'RateSpec'复合:1 Disc: 0.6853 Rates: 0.0650 EndTimes: 6 StartTimes: 0 EndDates: 736696 StartDates: 734504 ValuationDate: 734504 Basis: 0 EndMonthRule: 1

创建债券工具。该债券票面利率为7%,期限为一年,于2017年1月1日到期。

CouponRate = 0.07;Settle = datetime(2011,1,1);成熟度= datetime(2017,1,1);周期= 1;Face = {{datetime(2015,1,1) 100;datetime(2016年,1,1)90;datetime(2017年,1,1)80}};

用以下市场数据建立BK树:

VolDates = [datetime(2012,1,1);datetime(2013年,1,1);...datetime(2014年,1,1);datetime(2015年,1,1);datetime(2016年,1,1);datetime(2017年,1,1)];VolCurve = 0.01;AlphaDates = datetime(2017,1,1);alpha曲线= 0.1;BKVolSpec = BKVolSpec (RateSpec.)ValuationDate,VolDates, VolCurve,...AlphaDates AlphaCurve);BKTimeSpec = BKTimeSpec (rate。ValuationDate,VolDates, Compounding); BKT = bktree(BKVolSpec, RateSpec, BKTimeSpec);

计算摊还债券的价格。

息票率,结算,到期日“时间”期,...“脸”脸)
价格= 102.3155

将结果与普通债券的价格进行比较。

PriceVanilla = bondbybk(BKT,息票率,结算,到期日)
PriceVanilla = 102.4205

输入参数

全部折叠

利率树形结构,由bktree

数据类型:结构体

债券票面利率,指定为NINST——- - - - - -1十进制年率或NINST——- - - - - -1单元格数组,其中每个元素都是NumDates——- - - - - -2单元阵列。的第一列NumDates——- - - - - -2单元格数组是日期,第二列是相关的利率。日期表示票面利率有效的最后一天。

数据类型:|细胞

结算日期,指定为标量或NINST——- - - - - -1Vector,使用日期时间数组、字符串数组或日期字符向量。

要支持万博1manbetx现有代码,bondbybk也接受序列号作为输入,但不建议使用。

解决每个债券的日期都是ValuationDateBK树的。债券的论点解决将被忽略。

到期日期,指定为NINST——- - - - - -1向量,使用日期时间数组、字符串数组或日期字符向量表示每个债券的到期日。

要支持万博1manbetx现有代码,bondbybk也接受序列号作为输入,但不建议使用。

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名-值参数必须出现在其他参数之后,但对的顺序并不重要。

在R2021a之前,名称和值之间用逗号隔开,并括起来的名字在报价。

例子:[Price,PriceTree] = bondbybk(BKTree,CouponRate,结算,期限,'期限',4,'面',10000)

每年的优惠券,以逗号分隔的对所组成“时间”和一个NINST——- - - - - -1向量。值123.46,12

数据类型:

仪器的日计数基,指定为逗号分隔的对,由“基础”和一个NINST——- - - - - -1向量。

  • 0 = actual/实际的

  • 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

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

数据类型:

生成日期的月末规则标志成熟一个月的月底日期是否有30天或更少的天,指定为逗号分隔的对,由“EndMonthRule”和一个非负整数[01使用aNINST——- - - - - -1向量。

  • 0= Ignore规则,这意味着付款日期总是当月的同一天。

  • 1=设置规则,这意味着支付日期总是每月的最后一天。

数据类型:逻辑

债券发行日期,以逗号分隔的对所组成“IssueDate”和一个NINST——- - - - - -1Vector,使用日期时间数组、字符串数组或日期字符向量。

要支持万博1manbetx现有代码,bondbybk也接受序列号作为输入,但不建议使用。

不规则的第一次优惠券日期,指定为逗号分隔的对“FirstCouponDate”和一个NINST——- - - - - -1Vector,使用日期时间数组、字符串数组或日期字符向量。

要支持万博1manbetx现有代码,bondbybk也接受序列号作为输入,但不建议使用。

FirstCouponDate而且LastCouponDate都是指定的,FirstCouponDate优先决定息票支付结构。如果不指定FirstCouponDate,现金流支付日期由其他投入确定。

不规则的最后优惠券日期,指定为逗号分隔的一对,由“LastCouponDate”和一个NINST——- - - - - -1Vector,使用日期时间数组、字符串数组或日期字符向量。

要支持万博1manbetx现有代码,bondbybk也接受序列号作为输入,但不建议使用。

在没有指定的情况下FirstCouponDate,指定的LastCouponDate决定债券的息票结构。债券的息票结构在LastCouponDate它只跟随债券到期日的现金流日期。如果不指定LastCouponDate,现金流支付日期由其他投入确定。

转发支付开始日期(债券现金流考虑的日期),指定为逗号分隔的对,由StartDate可以的和一个NINST——- - - - - -1Vector,使用日期时间数组、字符串数组或日期字符向量。

要支持万博1manbetx现有代码,bondbybk也接受序列号作为输入,但不建议使用。

如果不指定StartDate可以的生效起始日期为解决日期。

面值或面值,指定为逗号分隔的一对,由“脸”和一个NINST——- - - - - -1非负面值的向量NINST——- - - - - -1面值或面值表的单元格数组。对于后一种情况,单元格数组的每个元素都是aNumDates——- - - - - -2单元格数组,其中第一列是日期,第二列是其相关联的面值。日期表示面值有效的最后一天。

数据类型:细胞|

衍生品期权定价,指定为逗号分隔的对组成“选项”这个结构是用derivset

数据类型:结构体

标记以根据实际的期间日计数调整现金流,指定为逗号分隔的对,由“AdjustCashFlowsBasis”和一个NINST——- - - - - -1值为的逻辑向量0(虚假的)或1(真正的)。

数据类型:逻辑

工作日约定,指定为逗号分隔的对,由“BusinessDayConvention”还有一个字符向量aN——- - - - - -1(或NINST——- - - - - -2如果BusinessDayConvention对每个分支不同)工作日约定的字符向量单元格数组。营业日约定的选择决定了如何处理非营业日。非营业日的定义是周末加上任何其他不营业的日期(如法定假日)。值:

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

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

  • modifiedfollow-非营业日的现金流假定在下一个营业日分配。但是,如果下一个工作日在不同的月份,则采用上一个工作日。

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

  • modifiedprevious-非营业日的现金流假定在前一个营业日分配。但是,如果上一个工作日在不同的月份,则采用下一个工作日。

数据类型:字符|细胞

假日用于计算工作日,指定为逗号分隔的对,由“假期”和MATLAB数据使用NHolidays——- - - - - -1向量。

数据类型:datetime

输出参数

全部折叠

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

仪器价格的树形结构,返回为MATLAB树结构,包含仪器价格和累计利息的向量,以及每个节点的观测时间向量。在PriceTree

  • PriceTree。PTree包含干净的价格。

  • PriceTree。AITree包含应计利息。

  • PriceTree.tObs包含观察时间。

  • PriceTree。连接包含连通性向量。单元格数组中的每个元素描述该级别的节点如何连接到下一级别的节点。对于给定的树级别,有NumNodes元素,它们包含中间分支连接到的下一层节点的索引。从这个值中减去1表示上行分支连接到的地方,加上1表示下行分支连接到的地方。

  • PriceTree。聚合氯化铝包含概率数组。单元格数组的每个元素都包含关卡每个节点的向上、中间和向下迁移概率。

更多关于

全部折叠

香草债券

普通息票债券是一种证券,代表在指定时间偿还借款金额的义务,并在指定时间之前定期支付利息。

债券的发行人定期支付利息,直到债券到期。到期时,发行人向债券持有人支付所欠本金(票面价值)和最后支付的利息。

阶梯式息票债券

增减债券是一种债券证券,随着时间的推移票面结构是预先确定的。

通过这些工具,票息在债券存续期内的特定时间增加(上升)或减少(下降)。

债券与摊销计划

摊销债券被视为一种资产,贴现金额在债券存续期内摊销为利息支出。

版本历史

R2006a之前介绍过

全部展开