此示例演示如何使用Financial Toolbox分析通货膨胀指数工具™ 金融工具工具箱™.gydF4y2Ba
虽然通胀指数化债券在设计上有很大的差异,例如,指数化滞后的长度,但大多数通胀指数化债券现在有3个月的滞后。它们也是与资本挂钩的,也就是说,债券的本金与通货膨胀挂钩。因此,债券的息票率是不变的,但实际的息票支付随着债券的本金与通货膨胀挂钩而变化。gydF4y2Ba
具体来说,指数化是通过以下比率完成的:gydF4y2Ba
在哪里gydF4y2Ba 是在债券发行时的消费价格指数(或等价的价格衡量)水平和gydF4y2Ba 为参考CPI。gydF4y2Ba
通常,你会计算gydF4y2Ba 通过在已知的通胀指数曲线的指数数据之间进行插值。要计算通货膨胀指数债券的现金流,只需计算适当的参考CPI和指数比率。gydF4y2Ba
通货膨胀指数债券的市场惯例是使用实际(即未经调整的)息票报价价格和收益率,这意味着您的报价是真实的价格和收益率。要获得真实的价格和收益率,您可以使用金融工具箱™ 功能gydF4y2BabndpricegydF4y2Ba
和gydF4y2BabndyieldgydF4y2Ba
.例如:gydF4y2Ba
价格= 124 + 9/32;解决= datetime(2009、9、28);优惠券= .03375;成熟= datetime (2032 4 15);RealYield = bndyield(价格、优惠券、结算、成熟度);disp ([gydF4y2Ba的实际收益率:gydF4y2Banum2str (RealYield * 100)gydF4y2Ba“%”gydF4y2Ba])gydF4y2Ba
实际收益率:2.0278%gydF4y2Ba
随着通货膨胀指数债券市场的出现,真实曲线可以以与名义曲线类似的方式构建。使用可用的市场数据,您可以构建真实曲线,并将其与名义曲线进行比较。gydF4y2Ba
请注意,有一个问题与债券的指数化滞后有关。如前所述,指数化滞后通常为三个月,这意味着通胀补偿实际上与债券的到期日或息票支付不匹配。而Anderson和Sleath[gydF4y2Ba1gydF4y2Ba讨论一种解决这种差异的方法,在本例中,简单地指出了滞后。gydF4y2Ba
你可以使用gydF4y2BafitNelsonSiegelgydF4y2Ba
和gydF4y2Ba
fitSvenssongydF4y2Ba
函数在Financial Instruments Toolbox™中创建gydF4y2BaparametercurvegydF4y2Ba
将尼尔森-西格尔(Nelson-Siegel)和斯文森(Svensson)模型与美国实际和名义收益率曲线相吻合的对象。Nelson-Siegel模型通常对模型参数施加限制,以确保利率总是正的。然而,实际利率可能是负的,这意味着这些Nelson-Siegel限制在下面的例子中没有使用。gydF4y2Ba
%加载数据。gydF4y2Ba负载gydF4y2Bausbond_02Sep2008gydF4y2Ba= datetime(2008, 9,2);NominalMaturity NominalTimeToMaturity = yearfrac(解决);TIPSMaturity TIPSTimeToMaturity = yearfrac(解决);gydF4y2Ba%计算收益率。gydF4y2BaNominalYield = bndyield (NominalPrice NominalCoupon,解决,NominalMaturity);TIPSYield = bndyield (TIPSPrice TIPSCoupon,解决,TIPSMaturity);gydF4y2Ba%绘制产量图。gydF4y2Ba散射(NominalTimeToMaturity NominalYield * 100,gydF4y2Ba“r”gydF4y2Ba);持有gydF4y2Ba在gydF4y2Ba;散射(倾斜度、倾斜度*100,gydF4y2Ba“b”gydF4y2Ba);gydF4y2Ba使用fitNelsonSiegel拟合真实收益率曲线。gydF4y2BanInst =元素个数(TIPSCoupon);TIPSBonds (nInst, 1) = fininstrument.FinInstrument;gydF4y2Ba为gydF4y2Baii=1:NIST TIPSBonds(ii)=有限仪器(gydF4y2Ba“FixedBond”gydF4y2Ba,gydF4y2Ba“成熟”gydF4y2BaTIPSMaturity (ii),gydF4y2Ba...gydF4y2Ba“CouponRate”gydF4y2BaTIPSCoupon (ii));gydF4y2Ba结束gydF4y2BaTIPSNelsonSiegel=fitNelsonSiegel(结算、TIPSBonds、TIPSPrice);gydF4y2Ba
局部最小值。Lsqnonlin停止的原因是相对于初始值的平方和的最终变化小于函数的容差值。gydF4y2Ba
使用fitSvensson拟合名义收益率曲线。gydF4y2BanInst =元素个数(NominalCoupon);NominalBonds (nInst, 1) = fininstrument.FinInstrument;gydF4y2Ba为gydF4y2Baii=1:N安装名义债券(ii)=有限仪器(gydF4y2Ba“FixedBond”gydF4y2Ba,gydF4y2Ba“成熟”gydF4y2BaNominalMaturity (ii),gydF4y2Ba...gydF4y2Ba“CouponRate”gydF4y2BaNominalCoupon (ii));gydF4y2Ba结束gydF4y2BaNominalSvensson = fitSvensson(结算、NominalBonds NominalPrice);gydF4y2Ba
解算器过早地停止。Lsqnonlin停止,因为它超出了函数的计算限制,选项。MaxFunctionEvaluations = 6.000000 e + 02。gydF4y2Ba
绘制名义和实际收益率曲线。gydF4y2BaPlotDates =(解决+ calmonths (1): calmonths(1):解决+ calyears (30) 1) ';PlotDates PlotTimeToMaturity = yearfrac(解决);TIPSNelsonSiegelZeroRates = zerorates (TIPSNelsonSiegel PlotDates);TIPSNelsonSiegelParYields = zero2pyld (TIPSNelsonSiegelZeroRates PlotDates,结算,gydF4y2Ba...gydF4y2Ba“InputCompounding”gydF4y2Ba, -1,gydF4y2Ba“OutputCompounding”gydF4y2Ba2);NominalSvenssonZeroRates = zerorates (NominalSvensson PlotDates);NominalSvenssonParYields = zero2pyld (NominalSvenssonZeroRates PlotDates,结算,gydF4y2Ba...gydF4y2Ba“InputCompounding”gydF4y2Ba, -1,gydF4y2Ba“OutputCompounding”gydF4y2Ba2);情节(PlotTimeToMaturity NominalSvenssonParYields * 100,gydF4y2Ba“r”gydF4y2Ba)情节(PlotTimeToMaturity TIPSNelsonSiegelParYields * 100,gydF4y2Ba“b”gydF4y2Ba)举行gydF4y2Ba从gydF4y2Ba;标题(gydF4y2Ba《美国数据的名义和实际收益率曲线》,2008年9月2日gydF4y2Ba)包含(gydF4y2Ba的时间(年)gydF4y2Ba) ylabel (gydF4y2Ba的收益率(%)gydF4y2Ba)传奇({gydF4y2Ba的名义收益率gydF4y2Ba,gydF4y2Ba“贴士收益”gydF4y2Ba,gydF4y2Ba“Svensson适合名义收益率”gydF4y2Ba,gydF4y2Ba...gydF4y2Ba尼尔森-西格尔符合TIPS收益率gydF4y2Ba},gydF4y2Ba“位置”gydF4y2Ba,gydF4y2Ba‘东南’gydF4y2Ba)gydF4y2Ba
通过减去实际的通货膨胀率曲线来创建一条通货膨胀率曲线gydF4y2Ba%名义曲线。gydF4y2BaInflationRateCurve = ratecurve (gydF4y2Ba“零”gydF4y2Ba,结算,计划日期,gydF4y2Ba...gydF4y2BaNominalSvenssonZeroRates - TIPSNelsonSiegelZeroRates);图绘制(PlotTimeToMaturity zero2pyld (gydF4y2Ba...gydF4y2Bazerorates(InflationRateCurve, PlotDates), PlotDates,gydF4y2Ba...gydF4y2Ba“InputCompounding”gydF4y2Ba, -1,gydF4y2Ba“OutputCompounding”gydF4y2Ba2) * 100,gydF4y2Ba“b”gydF4y2Ba);头衔(gydF4y2Ba“美国数据的通货膨胀率曲线,2008年9月2日”gydF4y2Ba)包含(gydF4y2Ba的时间(年)gydF4y2Ba) ylabel (gydF4y2Ba“通货膨胀率(%)”gydF4y2Ba)传奇({gydF4y2Ba“根据债券收益率计算的通胀曲线”gydF4y2Ba},gydF4y2Ba“位置”gydF4y2Ba,gydF4y2Ba‘东南’gydF4y2Ba)gydF4y2Ba
与通胀挂钩的衍生品市场也有所增长。一些交易流动性最强的通胀衍生品是零息通胀互换(gydF4y2BaZeroCouponInflationSwapgydF4y2Ba
)及年度通胀互换(gydF4y2BaYearYearInflationSwapgydF4y2Ba
).gydF4y2Ba
在零息通货膨胀掉期中,通货膨胀支付方同意支付到期时的通货膨胀率(滞后一定数额)和年数的复利。通货膨胀的接受者通常支付一个固定的利率,再加上票据的期限。在零息通货膨胀掉期开始时,固定利率被设定为掉期期间的预期通货膨胀率。这个利率被称为“盈亏平衡通货膨胀掉期利率”,它在市场上报价[gydF4y2Ba6gydF4y2Ba].gydF4y2Ba
使用Hurd和Relleen的符号,计算速率如下:gydF4y2Ba
在哪里gydF4y2BatgydF4y2Ba是现在的时间,,gydF4y2BaTgydF4y2Ba是男高音吗gydF4y2BalgydF4y2Ba是滞后的。[gydF4y2Ba5gydF4y2Ba]gydF4y2Ba
到期日,零息通胀掉期的实际现金流为:gydF4y2Ba
在哪里gydF4y2Ba
是交换的引用。gydF4y2Ba
为固定的通货膨胀率。gydF4y2Ba
为交换的生命期的年数。gydF4y2Ba
是到期日有一定滞后(例如,三个月)的通胀指数。gydF4y2Ba
是通胀指数在开始日期有一些滞后(例如,三个月)。gydF4y2Ba
虽然固定期现金流可能不同于实际到期的通胀期现金流,但零息通胀掉期的固定盈亏平衡通胀掉期率代表掉期开始时预期的通胀率。你可以用一系列从同一日期开始、在不同日期到期的保本零息通货膨胀掉期利率来构建通胀曲线。这里,日期已经用适当的索引延迟进行了调整,以简化符号:gydF4y2Ba
在哪里gydF4y2Ba
盈亏平衡通胀指数是到期日的参考数字吗gydF4y2Ba .gydF4y2Ba
基准通货膨胀指数是否为起始日期gydF4y2Ba .gydF4y2Ba
零息通胀互换到期时的盈亏平衡通胀率是多少gydF4y2Ba .gydF4y2Ba
你可以通过使用gydF4y2Ba通货膨胀建设gydF4y2Ba
函数创建gydF4y2BainflationcurvegydF4y2Ba
对象。建立一个gydF4y2BainflationcurvegydF4y2Ba
从零息通货膨胀掉期利率开始,首先定义基本通货膨胀日期和相应的基本通货膨胀指数值。gydF4y2Ba
定义通胀指数的基本通胀日期和指数值gydF4y2Ba%曲线。gydF4y2BaBaseDate = datetime(2020、6、1);BaseIndexValue = 100;gydF4y2Ba
然后,定义零息通货膨胀掉期利率和相应的到期日,这些到期日已经过适当的指数化滞后调整。gydF4y2Ba
定义零息通货膨胀掉期利率和到期日。gydF4y2BaZCISTimes = (calyears([1 2 3 4 5 7 10 20 30]))';ZCISRates = [0.42 0.54 0.76 0.87 0.92 1.39 1.71 2.01 2.46]'./100gydF4y2Ba
ZCISRates=gydF4y2Ba9×1gydF4y2Ba0.0042 0.0054 0.0076 0.0087 0.0092 0.0139 0.0171 0.0201 0.0246gydF4y2Ba
ZCISDates=基准日期+ZCISTimesgydF4y2Ba
ZCISDates =gydF4y2Ba9 x1 datetimegydF4y2Ba01- 6 -2021 01- 6 -2022 01- 6 -2023 01- 6 -2024 01- 6 -2025 01- 6 -2027 01- 6 -2030 01- 6 -2040 01- 6 -2050gydF4y2Ba
在为通胀衍生品定价和构建通胀曲线时,考虑季节性因素可能是一个关键因素。零息通货膨胀掉期利率通常以全年数为期限递增。因此,通胀曲线通常是由每年的零息通胀掉期利率构建而成的。但是,当计算每月期间的通货膨胀指数值而不是整个年份时,您可以进行季节性调整,以反映年内通货膨胀的季节性模式。这12个月的季节性费率按年计算,它们加起来等于零,以确保累积的季节性调整每年重置为零。在gydF4y2Ba通货膨胀建设gydF4y2Ba
函数和gydF4y2BainflationcurvegydF4y2Ba
对象,您可以使用gydF4y2Ba“季节性”gydF4y2Ba
名称-值对参数,并对其进行内部更正,以确保它们相加为零。gydF4y2Ba
定义12个月的季节性费率。gydF4y2Ba%gydF4y2Ba%月:gydF4y2Ba%一月二月三月四月五月六月七月八月九月十月十一月十二月gydF4y2Ba% 12 3 4 5 6 7 8 9 10 11 12gydF4y2Ba%季节费率(百分比):gydF4y2Ba% -6.34 -3.00 -1.34 3.34 5.34 3.66 8.66 5.66 -2.34 -2.66 -4.66 -6.32gydF4y2Ba季节利率=[-6.34-3.00-1.34 3.34 5.34 3.66 8.66 5.66-2.34-2.66-4.66-6.32]。/100gydF4y2Ba
SeasonalRates =gydF4y2Ba1×12gydF4y2Ba0.0334 0.0534 0.0366 0.0866 0.0566 -0.0234 -0.0266 -0.0466 -0.0632gydF4y2Ba
%从零息票通胀掉期利率构建通胀指数曲线。gydF4y2BamyInflationCurve = inflationbuild(BaseDate, BaseIndexValue,gydF4y2Ba...gydF4y2BaZCISDates ZCISRates,gydF4y2Ba“季节性”gydF4y2BaSeasonalRates)gydF4y2Ba
myInflationCurve =带有属性的通货膨胀曲线:基础:[10x1 datetime]gydF4y2Ba
一旦创建了gydF4y2BainflationcurvegydF4y2Ba
对象,计算每个月的通货膨胀指数值gydF4y2BaindexvaluesgydF4y2Ba
.gydF4y2Ba
%计算通货膨胀指数值。gydF4y2BaIndexPlotDates = (BaseDate: calmonths (1): BaseDate + calyears (10)) ';IndexPlotValues = indexvalues(myInflationCurve, IndexPlotDates);gydF4y2Ba
为了可视化每年发生的通货膨胀的季节性模式,绘制计算出的通货膨胀指数值。gydF4y2Ba
绘制通货膨胀指数曲线。gydF4y2Ba图;情节(IndexPlotDates IndexPlotValues)gydF4y2Ba在gydF4y2Ba;情节(myInflationCurve.Dates (1:8) myInflationCurve.InflationIndexValues (1:8)gydF4y2Ba“哦”gydF4y2Ba)举行gydF4y2Ba从gydF4y2Ba;标题(gydF4y2Ba零息通货膨胀掉期构建的通胀指数曲线gydF4y2Ba)包含(gydF4y2Ba“年”gydF4y2Ba) ylabel (gydF4y2Ba“通货膨胀指数的值”gydF4y2Ba)传奇({gydF4y2Ba“窜改通货膨胀指数价值”gydF4y2Ba,gydF4y2Ba“ZCIS通货膨胀指数价值”gydF4y2Ba},gydF4y2Ba“位置”gydF4y2Ba,gydF4y2Ba“西北”gydF4y2Ba)gydF4y2Ba
与gydF4y2BainflationcurvegydF4y2Ba
对象创建后,你可以为通胀指数工具(如零息通胀互换(gydF4y2BaZeroCouponInflationSwapgydF4y2Ba
)、年度通胀互换(gydF4y2BaYearYearInflationSwapgydF4y2Ba
)和通货膨胀指数债券(gydF4y2BaInflationBondgydF4y2Ba
).gydF4y2Ba
首先,创建一个gydF4y2BaratecurvegydF4y2Ba
对象使用gydF4y2BaratecurvegydF4y2Ba
.gydF4y2Ba
解决= datetime(2020、9、25);类型=gydF4y2Ba“零”gydF4y2Ba零利率=[0.0043 0.0051 0.0062 0.0072 0.0096 0.0121 0.0172 0.0241 0.0302 0.0308];零利率=结算+零利率;零利率=利率曲线(gydF4y2Ba“零”gydF4y2Ba、结算、ZeroDates ZeroRates)gydF4y2Ba
ZeroCurve =带有属性的比率曲线:类型:" 0 "复利:-1基础:0日期:[10x1 datetime] rate: [10x1 double] Settle: 25-Sep-2020 InterpMethod: "linear" ShortExtrapMethod: "next" LongExtrapMethod: "previous"gydF4y2Ba
使用gydF4y2BaratecurvegydF4y2Ba
和gydF4y2BainflationcurvegydF4y2Ba
对象作为输入,创建gydF4y2Ba通货膨胀gydF4y2Ba
定价的人对象使用gydF4y2BafinpricergydF4y2Ba
.gydF4y2Ba
outPricer = finpricer (gydF4y2Ba“通货膨胀”gydF4y2Ba,gydF4y2Ba“DiscountCurve”gydF4y2BaZeroCurve,gydF4y2Ba“InflationCurve”gydF4y2BamyInflationCurve)gydF4y2Ba
outPricer =通货膨胀属性:折现曲线:[1x1 ratecurve]gydF4y2Ba
创建一个gydF4y2BaInflationBondgydF4y2Ba
仪器使用gydF4y2Ba精密仪器gydF4y2Ba
.gydF4y2Ba
IssueDate = datetime(2020、9、20);成熟= datetime(2025、9、20);CouponRate = 0.023;InflationBond = fininstrument (gydF4y2Ba“InflationBond”gydF4y2Ba,gydF4y2Ba“IssueDate”gydF4y2BaIssueDate,gydF4y2Ba“成熟”gydF4y2Ba成熟,gydF4y2Ba“CouponRate”gydF4y2BaCouponRate)gydF4y2Ba
InflationBond = InflationBond with properties: CouponRate: 0.0230 Period: 2 Basis: 0 Principal: 100 DaycountAdjustedCashFlow: 0 Lag: 3 BusinessDayConvention:“实际”假期:NaT endmonth规则:1 issueddate: 20-Sep-2020 FirstCouponDate: NaT LastCouponDate: NaT Maturity: 20-Sep-2025名称:""gydF4y2Ba
此处,默认指数化滞后为三个月,债券发行日期为gydF4y2Ba20 - 9 - 2020gydF4y2Ba
.价格在通胀曲线上的第一个日期必须是在或之前gydF4y2Ba2020年6月20日gydF4y2Ba
为这个工具定价。在这个例子中,价格的通货膨胀曲线上的第一个日期是gydF4y2Ba01 - jun - 2020gydF4y2Ba
.gydF4y2Ba
价格的gydF4y2BaInflationBondgydF4y2Ba
仪器通过使用gydF4y2Ba价格gydF4y2Ba
函数gydF4y2Ba通货膨胀gydF4y2Ba
定价的人。gydF4y2Ba
通胀债券价格=价格(outPricer, InflationBond)gydF4y2Ba
InflationBondPrice = 110.1314gydF4y2Ba
这个例子是基于以下的论文和期刊文章:gydF4y2Ba
Anderson N.和J. Sleath。《英国实际和名义收益率曲线的新估计》。英格兰银行,工作文件126,2001。gydF4y2Ba
Brigo, D.和F. Mercurio。gydF4y2Ba利率模型-理论与实践:微笑、通货膨胀和信贷gydF4y2Ba.施普林格,2006年。gydF4y2Ba
[3] 迪肯,M.,A.德里和D.米尔芬德雷斯基。gydF4y2Ba通货膨胀指数证券:债券、掉期和其他衍生品gydF4y2Ba.威利金融,2004。gydF4y2Ba
Gurkaynak, r.s., B.P. Sack, J.H. Wright。TIPS收益率曲线和通胀补偿联邦调查局工作文件第2008-05号,2008年10月。gydF4y2Ba
[5] 赫德、M.和J.瑞琳。“通货膨胀掉期和指数挂钩债券的新信息”,《季报》,2006年春季。gydF4y2Ba
J。女友[6]Kerkhof,也是以为“通胀衍生品解释。”雷曼兄弟(Lehman Brothers) 2005年。gydF4y2Ba
精密仪器gydF4y2Ba
|gydF4y2BafinpricergydF4y2Ba
|gydF4y2BaratecurvegydF4y2Ba
|gydF4y2Ba通货膨胀建设gydF4y2Ba
|gydF4y2BaindexvaluesgydF4y2Ba
|gydF4y2BainflationcurvegydF4y2Ba
|gydF4y2BaInflationBondgydF4y2Ba
|gydF4y2BaYearYearInflationSwapgydF4y2Ba
|gydF4y2BaZeroCouponInflationSwapgydF4y2Ba
|gydF4y2Ba通货膨胀gydF4y2Ba