主要内容

zbtyield

从给定收益率的息票债券数据进行零曲线自举

描述

实例

[零利率,CurveDates]=zbtield(债券,收益率解决)使用bootstrap方法返回一个零曲线给定的投资组合的息票债券及其收益率。

零曲线是由投资组合中的理论零息债券的到期收益率组成的债券投资组合。这个函数使用的引导方法可以做到这一点要求在投入投资组合中债券的现金流日期之间保持一致。它使用理论上的平价债券套利和收益率插值来推导所有的零利率;具体来说,现金流的利率是用线性插值确定的。为了达到最好的效果,投资组合中至少要有30种债券,这些债券平均分布在各个投资阶段。

实例

零利率,CurveDates= zbtyield (___,产量复合)为添加一个可选参数产量复合

例子

全部崩溃

给出12种息票债券(其中两种到期日相同)的数据和到期收益率;再加上共同的结算日期。

债券= [datenum (“6/1/1998”)0.0475 100 2 0 0;日期编号(“7/1/2000”)0.0610020;日期编号(“7/1/2000”) 0.09375 100 6 10;datenum ('6/30/2001') 0.05125 100 1 3 1;datenum (“4/15/2002”)0.07125 100 4 1 0;日期编号('1/15/2000')0.065100;日期编号('9/1/1999')0.08 100 3 0;日期编号('4/30/2001') 0.05875 100 2 00;datenum ('11/15/1999') 0.07125 100 2 00;datenum ('6/30/2000')0.07 100 2 3 1;日期编号(“7/1/2001”)0.0525 100 2 3 0;日期编号(“4/30/2002”) 00 0];收益率= [0.0616 0.0605 0.0687 0.0612 0.0615 0.0591 0.0603 0.0608 0.0655 0.0646 0.0641 0.0627];解决= datenum (“12/18/1997”);

为零曲线设置半年复利。

OutputCompounding = 2;

执行函数zbtyield在到期日返回0曲线。请注意,这两种到期日相同的债券的平均利率为零。

[ZeroRates, curedates] = zbtyield(债券,收益率,结算,...OutputCompounding)
ZeroRates =11×10.0616 0.0603 0.0657 0.0590 0.0649 0.0650 0.0606 0.0611 0.0643 0.0614 ⋮
弯曲的=11×1729907 730364 730439 730500 730667 730668 730971 731032 731033 731321 ⋮

给定12种息票债券(其中两种到期日相同)的数据和到期收益率,并给定共同的结算日期,使用日期时间输入。

债券= [datenum (“6/1/1998”)0.0475 100 2 0 0;日期编号(“7/1/2000”)0.0610020;日期编号(“7/1/2000”) 0.09375 100 6 10;datenum ('6/30/2001') 0.05125 100 1 3 1;datenum (“4/15/2002”)0.07125 100 4 1 0;日期编号('1/15/2000')0.065100;日期编号('9/1/1999')0.08 100 3 0;日期编号('4/30/2001') 0.05875 100 2 00;datenum ('11/15/1999') 0.07125 100 2 00;datenum ('6/30/2000')0.07 100 2 3 1;日期编号(“7/1/2001”)0.0525 100 2 3 0;日期编号(“4/30/2002”) 00 0];收益率= [0.0616 0.0605 0.0687 0.0612 0.0615 0.0591 0.0603 0.0608 0.0655 0.0646 0.0641 0.0627];解决= datenum (“12/18/1997”);OutputCompounding = 2;t = array2table(债券,“VariableNames”,{“到期日”,“CouponRate”,“脸”,“时间”,“基础”,“EndMonthRule”}); 分区(t)
(UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUE+05 0.065 100 2 0 0 7.3036e+05 0.08 100 3 0 7.3097e+05 0.05875 100 2 0 7.3044e+05 0.07125 1002007.3067e+050.071002317.3103e+050.05251002307.3134e+050.07100200
t、 到期日=日期时间(t.到期日,“转换自”,“datenum”,“区域设置”,“en_US”);解决= datetime(结算,“转换自”,“datenum”,“区域设置”,“en_US”)零利率,曲线利率,...OutputCompounding)
ZeroRates =11×10.0616 0.0603 0.0657 0.0590 0.0649 0.0650 0.0606 0.0611 0.0643 0.0614 ⋮
弯曲的=11 x1 datetime01-Jun-1998 01-Sep-1999 15-Nov-1999 15-Jan-2000 30-Jun-2000 01-Jul-2000 30-Apr-2001 30-Jun-2001 01-Jul-2001 15-Apr-2002 30-Apr-2002

使用zbtyield从通胀挂钩债券的实际收益率计算出实际零利率。

%加载数据负载美国邦德大学2008年9月2日解决= datenum (‘02 - 9月- 2008);

计算实际收益率,然后计算实际零利率。

真实收益率=bndyield(TIPSPrice,TIPS息票,结算,TIPS到期);TIPSBonds=[TIPS到期TIPS息票];[RealZeroRates,CurveDates]=zbtield(TIPSBonds,真实收益率,结算)
零利率=26日×10.0069 0.0094 0.0092 0.0111 0.0110 0.0119 0.0116 0.0128 0.0126 0.0136 ⋮
弯曲的=26日×1734153 734243 734518 734608 734883 734974 735065 75339 735430 735614⋮

输入参数

全部崩溃

债券息票信息生成零曲线,指定为六列表或一列N——- - - - - -2.N——- - - - - -6.bond信息矩阵,其中表列或矩阵列包含:

  • 成熟(第一栏,必填)债券的到期日,以连续日期编号表示。使用datenum将日期字符向量转换为序列日期号。如果输入债券是一张桌子吗成熟日期可以是序列日期号、日期字符向量或日期时间数组。

  • 耦合率(第2列,必填)表示债券票面利率的小数点。

  • (第三栏,可选)债券的赎回或面值。默认=One hundred.

  • (可选)每年的债券息票。允许的值是0,1.,2.(默认),3.,4.,6.12

  • 基础(第5列,可选)债券的日计数基础。整数向量。

    • 0=实际值/实际值(默认值)

    • 1=30/360(新航)

    • 2 =实际/ 360

    • 3 =实际/ 365

    • 4 = 30/360 (bma)

    • 5=30/360(ISDA)

    • 6=30/360(欧洲)

    • 7 =实际/365(日文)

    • 8 = actual/actual (ICMA)

    • 9 = actual/360 (ICMA)

    • 10=实际值/365(ICMA)

    • 11=30/360E(ICMA)

    • 12 =实际/365 (ISDA)

    • 13 =总线/ 252

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

  • 末梢(第6列,可选)月末规则。此规则仅适用于以下情况成熟是一个月只有30天或更少的月末日期。0=忽略规则,意思是债券的息票支付日期总是当月相同的数字日。1.= set rule on (default),意思是债券的息票支付日期总是当月的最后一天

:

笔记

  • 如果债券是一张桌子吗成熟日期可以是序列日期号、日期字符向量或日期时间数组。

  • 如果债券是矩阵,是N——- - - - - -2.N——- - - - - -6.矩阵,其中每行描述一个键,前两列(成熟耦合率)是必需的。其余的列是可选的,但必须按顺序添加。在所有行债券必须有相同的列数。

数据类型:|桌子

中每种债券的到期收益率债券,指定为N——- - - - - -1.列向量。行数(N)必须与中的行数匹配债券

笔记

到期收益率必须每半年复利一次。

数据类型:

表示零曲线推导中时间零点的结算日期,指定为序列日期号、日期字符向量或日期时间数组。解决表示零点时间,用于推导零曲线,通常为所有债券的共同结算日期。

数据类型:|字符|日期时间

(可选)输出的复合频率零利率,使用允许的值指定:

  • 0-单利(无复利)

  • 1.-年度复利

  • 2.-半年复利(默认)

  • 3.-一年三次复利

  • 4.-季度复合

  • 6.-双月复配

  • 12——每月复利

  • -1-连续复配

数据类型:

输出参数

全部崩溃

到期日期定义的投资期限内每一点的隐含利率为零,回报为aM——- - - - - -1.小数部分的向量M是具有独特到期日的债券数量。总的来说零利率构成零曲线。

如果不止一个键有相同的成熟目前为止,zbtyield返回它的平均零利率成熟.任何汇率前的第一成熟和第一次的速率相等成熟,也就是说,在第一个之前假设曲线是平的成熟

对应于零利率,以M——- - - - - -1.唯一到期日期向量,其中M是不同到期日的债券数量。这些日期以最早的日期开始成熟日期和结束与最新成熟中的日期债券表或矩阵。

如果其中一个输入用于债券解决有日期时间值,那么CurveDatesCurveDates日期时间。否则CurveDates是序列号。

参考文献

[1] 《利率的结构》,第6章,法博齐,弗兰克J.和T.德萨法博齐编辑。固定收益证券手册。第四版,纽约,欧文专业出版社,1995年。

[2] 麦克纳利、理查德W.和詹姆斯V.乔丹。“利率期限结构”,在法博齐和法博齐的第37章中,同前

[3] Das, Satyajit。“计算零息票利率。“在互换和衍生金融。第8章附录,219-225页。纽约,欧文专业出版社,1994。

在R2006a之前引入