主要内容

InflationBond

InflationBond仪对象

描述

创建和定价InflationBond一个或多个通胀债券工具的工具对象,使用以下工作流程:

  1. 使用fininstrument创建一个InflationBond一个或多个通胀债券工具的工具对象。

  2. 使用ratecurve来指定利率模型InflationBond仪对象。

  3. 使用inflationcurve指定一个通货膨胀曲线模型InflationBond仪对象。

  4. 使用finpricer指定一个通货膨胀定价方法为一个或多个InflationBond仪器。

  5. 使用inflationCashflows计算每一个的现金流InflationBond仪器。

有关此工作流的更多详细信息,请参见开始使用基于对象的框架为金融工具定价的工作流程

有关可用的型号和定价方法的更多信息InflationBond仪器,看选择仪器,模型和价格

创建

描述

例子

InflationBond= fininstrument (InstrumentType,'CouponRate“couponrate_value,”成熟”,maturity_date)创建一个InflationBond指定一个或多个通胀债券工具的对象InstrumentType并设置属性所需的名称-值对参数CouponRate而且成熟

例子

InflationBond= fininstrument (___名称,值设置可选属性在前面的语法中使用所需的参数以外的其他名称-值对。例如,InflationBond = fininstrument(“InflationBond”,“成熟”,成熟,CouponRate, CouponRate, IssueDate, IssueDate)创建一个InflationBond选择。

输入参数

全部展开

仪器类型,指定为值为的字符串“InflationBond”,值为的字符向量“InflationBond”,一个NINST——- - - - - -1值为的字符串数组“InflationBond”,或者一个NINST——- - - - - -1值的字符向量的单元格数组“InflationBond”

数据类型:字符|细胞|字符串

名称-值参数

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

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

例子:InflationBond = fininstrument(“InflationBond”,“成熟”,成熟,CouponRate, CouponRate, IssueDate, IssueDate)

要求InflationBond名称-值对的观点

全部展开

InflationBond息票率,指定为逗号分隔的对,由“CouponRate”一个标量小数或者anNINST——- - - - - -1年利率的小数向量。

数据类型:

InflationBond到期日期,用逗号分隔的对指定,由“成熟”标量或者anNINST——- - - - - -1Vector,使用日期时间数组、字符串数组或日期字符向量。

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

如果使用日期字符向量或字符串,格式必须由datetime因为成熟属性存储为日期时间。

可选InflationBond名称-值对的观点

全部展开

支付的频率,指定为逗号分隔的对,由“时间”标量整数或NINST——- - - - - -1向量的整数。值123.46,或12

数据类型:

日计数基础,指定为逗号分隔的对,由“基础”标量整数或anNINST——- - - - - -1使用以下值的整数向量:

  • 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

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

数据类型:

初始本金金额,指定为逗号分隔的对,由“校长”一个标量数字或者anNINST——- - - - - -1数值向量。

数据类型:

标志,指示现金流是否按日计数约定进行调整,指定为逗号分隔的对,由“DaycountAdjustedCashFlow”一个标量逻辑或者anNINST——- - - - - -1值为的逻辑向量真正的

数据类型:逻辑

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

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

如果使用日期字符向量或字符串,格式必须由datetime因为IssueDate属性存储为日期时间。

以月为单位的索引延迟,指定为逗号分隔的对,由“滞后”一个标量数字或者anNINST——- - - - - -1数值向量。

数据类型:

现金流日期的营业日约定,指定为逗号分隔的对,由“BusinessDayConvention”标量字符串或者字符向量或者anNINST——- - - - - -1字符向量或字符串数组的单元格数组。营业日约定的选择决定了如何处理非营业日。非营业日被定义为周末加上任何其他不营业的日期(例如,法定假日)。值:

  • “实际”-非营业日被有效地忽略。非营业日的现金流假设在实际日分配。

  • “关注”-非营业日的现金流假定在下一个营业日分配。

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

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

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

数据类型:字符|细胞|字符串

假日用于计算工作日,指定为逗号分隔的对,由“假期”日期使用NINST——- - - - - -1日期时间数组、字符串数组或日期字符向量的向量。例如:

H =假期(datetime(今天),datetime(2025、12、15));InflationBondObj = fininstrument(“InflationBond”、“CouponRate”,0.34,“成熟”,datetime(2025、12、15),“假期”,H)

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

生成日期的月末规则标志成熟一个月的月底日期是否为30天或更少的一个月的月底日期,指定为逗号分隔的对,由“EndMonthRule”和标量逻辑值或NINST——- - - - - -1的逻辑值的向量真正的

  • 如果你设置EndMonthRule在美国,软件会忽略这一规则,即付款日期总是当月的同一天。

  • 如果你设置EndMonthRule真正的在美国,该软件会设置支付规则,这意味着支付日期总是当月的最后一天。

数据类型:逻辑

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

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

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

如果使用日期字符向量或字符串,格式必须由datetime因为FirstCouponDate属性存储为日期时间。

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

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

如果您指定LastCouponDate但不是FirstCouponDateLastCouponDate决定债券的息票结构。债券的息票结构在LastCouponDate它只跟随债券到期日的现金流日期。如果不指定LastCouponDate,现金流支付日期由其他投入确定。

如果使用日期字符向量或字符串,格式必须由datetime因为LastCouponDate属性存储为日期时间。

一个或多个仪器的用户定义名称,指定为逗号分隔的一对,由“名字”标量字符串或者字符向量或者anNINST——- - - - - -1字符向量或字符串数组的单元格数组。

数据类型:字符|细胞|字符串

属性

全部展开

InflationBond票面年利率,以标量小数或NINST——- - - - - -1向量的小数。

数据类型:

InflationBond到期日期,作为标量datetime或NINST——- - - - - -1向量的日期时间。

数据类型:datetime

每年支付的频率,作为标量整数或NINST——- - - - - -1向量的整数。

数据类型:

日计数基础,作为标量整数或NINST——- - - - - -1向量的整数。

数据类型:

初始本金金额,作为标量数字或NINST——- - - - - -1数值向量。

数据类型:

标志,指示现金流是否根据日计数约定进行调整,返回为标量逻辑或NINST——- - - - - -1值为的逻辑向量真正的

数据类型:逻辑

债券发行日期,作为日期时间或NINST——- - - - - -1datetime向量。

数据类型:datetime

数个月的索引延迟,作为标量数字或NINST——- - - - - -1数值向量。

数据类型:

业务日约定,作为标量字符串或NINST——- - - - - -1字符串数组。

数据类型:字符串

假日用于计算营业日,返回为NINST——- - - - - -1向量的日期时间。

数据类型:datetime

生成日期的月末规则标志成熟一个月的月末日期是30天或更少的一个月的月末日期,返回为逻辑标量还是NINST——- - - - - -1逻辑值的向量。

数据类型:逻辑

不规则的第一个优惠券日期,作为标量日期时间或NINST——- - - - - -1向量的日期时间。

数据类型:datetime

不规则的最后优惠券日期,作为标量日期时间或NINST——- - - - - -1向量的日期时间。

数据类型:datetime

用户定义的乐器名称,作为标量字符串或NINST——- - - - - -1字符串数组。

数据类型:字符串

对象的功能

inflationCashflows 计算现金流InflationBond仪器

例子

全部折叠

这个例子展示了定价的工作流InflationBond当你使用inflationcurve和一个通货膨胀定价方法。

创建ratecurve对象

创建一个ratecurve对象使用ratecurve

解决= datetime(2021、1、15);类型=“零”;ZeroTimes = [calmonths(6) calyears([1 2 3 4 5 7 10 20 30])]';ZeroRates = [0.0052 0.0055 0.0061 0.0073 0.0094 0.0119 0.0168 0.0222 0.0293 0.0307]';零次数=结算+零次数;ZeroCurve = ratecurve (“零”、结算、ZeroDates ZeroRates)
类型:“零”复合:-1基数:0日期:[10x1 datetime]利率:[10x1 double]结算:15- january -2021 InterpMethod: "linear" ShortExtrapMethod: "next" LongExtrapMethod: "previous"

创建inflationcurve对象

创建一个inflationcurve对象使用inflationcurve

BaseDate = datetime(2020、10、1);InflationTimes = [0 calyears([1 2 3 4 5 7 10 20 30])]';InflationIndexValues = [100 102 103.5 105 106.8 108.2 111.3 120.1 130.4 150.2]';InflationDates = BaseDate + InflationTimes;myInflationCurve = inflationcurve (InflationDates InflationIndexValues)
myInflationCurve = inflationcurve with properties: Basis: 0 date: [10x1 datetime] InflationIndexValues: [10x1 double] ForwardInflationRates: [9x1 double]季节性:[12x1 double]

创建InflationBond仪对象

使用fininstrument创建一个InflationBond仪对象。

IssueDate = datetime(2021、1、1);成熟= datetime(2026、1、1);CouponRate = 0.02;InflationBond = fininstrument (“InflationBond”“IssueDate”IssueDate,“成熟”成熟,“CouponRate”CouponRate,“名字”“inflation_bond_instrument”
期限:2基础:0本金:100 daycountadjuststed现金流:0滞后:3营业日惯例:“实际”假期:NaT结束月规则:1发行日期:01- 1月-2021 FirstCouponDate: NaT LastCouponDate: NaT到期日期:01- 1月-2026名称:"inflation_bond_instrument"

创建通货膨胀定价的人对象

使用finpricer创建一个通货膨胀对象,并使用ratecurve对象的“DiscountCurve”名称-值对参数和inflationcurve对象的“InflationCurve”名称-值对的论点。

outPricer = finpricer (“通货膨胀”“DiscountCurve”ZeroCurve,“InflationCurve”myInflationCurve)
贴现曲线:[1x1 ratecurve] InflationCurve: [1x1 InflationCurve]

价格InflationBond仪器

使用价格计算价格和灵敏度InflationBond乐器。

[价格,outPR] =价格(outPricer, InflationBond)
价格= 112.1856
outPR = priceresult属性:结果:[1x1表]PricerData: []
outPR。结果
ans =表格112.19价格……

这个例子展示了多重定价的工作流InflationBond当你使用inflationcurve和一个通货膨胀定价方法。

创建ratecurve对象

创建一个ratecurve对象使用ratecurve

解决= datetime(2020、1、15);类型=“零”;ZeroTimes = [calmonths(6) calyears([1 2 3 4 5 7 10 20 30])]';ZeroRates = [0.0052 0.0055 0.0061 0.0073 0.0094 0.0119 0.0168 0.0222 0.0293 0.0307]';零次数=结算+零次数;ZeroCurve = ratecurve (“零”、结算、ZeroDates ZeroRates)
类型:“零”复合:-1基数:0日期:[10x1 datetime]利率:[10x1 double]结算:15-Jan-2020 InterpMethod: "linear" ShortExtrapMethod: "next" LongExtrapMethod: "previous"

创建inflationcurve对象

创建一个inflationcurve对象使用inflationcurve

BaseDate = datetime(2019、8、1);InflationTimes = [0 calyears([1 2 3 4 5 7 10 20 30])]';InflationIndexValues = [100 102 103.5 105 106.8 108.2 111.3 120.1 130.4 150.2]';InflationDates = BaseDate + InflationTimes;myInflationCurve = inflationcurve (InflationDates InflationIndexValues)
myInflationCurve = inflationcurve with properties: Basis: 0 date: [10x1 datetime] InflationIndexValues: [10x1 double] ForwardInflationRates: [9x1 double]季节性:[12x1 double]

创建InflationBond仪对象

使用fininstrument创建一个InflationBond三个通货膨胀债券工具的工具对象。

IssueDate = datetime([2020,1,1;2019、12、1;2019年,11日,1]);成熟度= datetime([2026,1,1;2026、2、1;2026 3 1]);CouponRate = 0.02;InflationBond = fininstrument (“InflationBond”“IssueDate”IssueDate,“成熟”成熟,“CouponRate”CouponRate,“名字”“inflation_bond_instrument”
InflationBond =3×1对象有属性的3x1 InflationBond数组:CouponRate Period Basis Principal DaycountAdjustedCashFlow Lag BusinessDayConvention节假日EndMonthRule IssueDate FirstCouponDate LastCouponDate到期日名称

创建通货膨胀定价的人对象

使用finpricer创建一个通货膨胀对象,并使用ratecurve对象的“DiscountCurve”名称-值对参数和inflationcurve对象的“InflationCurve”名称-值对的论点。

outPricer = finpricer (“通货膨胀”“DiscountCurve”ZeroCurve,“InflationCurve”myInflationCurve)
贴现曲线:[1x1 ratecurve] InflationCurve: [1x1 InflationCurve]

价格InflationBond仪器

使用价格计算产品的价格和敏感性InflationBond仪器。

[价格,outPR] =价格(outPricer, InflationBond)
价格=3×1112.8769 113.1022 113.3434
outPR =1×3对象1x3 priceresult数组的属性
outPR。结果
ans =表格112.88价格……
ans =表格价格113.1 _____
ans =表格113.34价格……

更多关于

全部展开

算法

要给通胀指数债券定价,可以使用通胀曲线和名义折现曲线(无模型方法),其中现金流用名义折现曲线贴现。

( 0 T P n ( 0 T ( 0 P r ( 0 T B T P 年代 ( 0 T 1 ( T 0 1 c ( 0 P r ( 0 T + F ( 0 P r ( 0 T 1 ( T 0 1 c ( 0 T P n ( 0 T + F ( 0 T P n ( 0 T

在哪里

  • Pn为名义零息债券价格。

  • Pr是零息债券的真实价格。

  • k是固定通货膨胀率。

  • (0,T为期间的盈亏平衡通胀指数(0,T).

  • (0)是在(的通货膨胀指数t= 0)。

  • (T0)为发行日的基本通货膨胀指数(t =T0).

  • B提示(0,T)为与通胀挂钩的债券价格。

  • (T-1)是开始日期的通货膨胀指数,有一定的滞后期(例如三个月)。

  • C优惠券。

  • F是面值。

参考文献

布洛迪,哥伦比亚特区,克罗斯比,J.,和李,H.。通胀相关衍生品的凸性调整风险杂志.2008年11月,124-129页。

J。女友[2]Kerkhof,也是以为通货膨胀衍生品解释:市场、产品和定价2022世界杯八强谁会赢?固定收益定量研究,雷曼兄弟,2005年7月。

[3]通货膨胀保值债券(TIPS)价格:https://www.treasurydirect.gov/instit/marketables/tips/tips.htm

[4]张建新。“有限价格指数化(LPI)掉期估值构想。”维尔莫特杂志.不。57, 2012年1月,第58-69页。

版本历史

介绍了R2021a

全部展开

Baidu
map