主要内容

zbtyield

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

描述

例子

ZeroRatesCurveDates= zbtyfield (债券收益率解决使用bootstrap方法返回给定息票债券及其收益率的投资组合的零曲线。

零息曲线由从输入中导出的理论零息债券组合的到期收益率组成债券投资组合。这个函数使用的bootstrap方法可以要求投资组合中债券的现金流日期保持一致。它使用理论上的票面债券套利和收益率插值来推导所有的零利率;具体来说,现金流的利率是用线性插值法确定的。为了获得最佳效果,在投资期限内使用至少30种债券的投资组合。

例子

ZeroRatesCurveDates= zbtyield (___OutputCompounding为添加可选参数OutputCompounding

例子

全部折叠

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

bond = [datenum(“6/1/1998”) 0.0475 100 2 00;datenum (“7/1/2000”) 0.06 100 2 00;datenum (“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 10;datenum (“1/15/2000”) 0.065 100 2 00;datenum (“9/1/1999”) 0.08 100 3 3 0;datenum (“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;datenum (“7/1/2001”) 0.0525 100 2 3 0;datenum (“4/30/2002”) 0.07 100 2 00];收益率= [0.0616 0.0605 0.0687 0.0612 0.0615 0.0591 0.0603 0.0608 0.0655 0.0646 0.0641 0.0627];Settle = datetime(1997,12,18);outputcompound = 2;t = array2table(债券,“VariableNames”, {“成熟”“CouponRate”“脸”“时间”“基础”“EndMonthRule”});disp (t)
成熟CouponRate脸EndMonthRule基础时期  __________ __________ ____ ______ _____ ____________ 7.2991 e + 05年0.0475 100 2 0 0 7.3067 0.06 e + 05 100 2 0 0 7.3067 0.09375 e + 05 100 6 1 0 7.3103 0.05125 e + 05 100 3 1 7.3132 0.07125 e + 05 100 4 1 0 7.305 0.065 e + 05 100 2 0 0 7.3036 e + 05年0.08 0.05875 100 7.3097 e + 3 3 0 05 100 2 0 0 7.3044 0.07125 e + 05 100 2 0 0 7.3067 0.07 e + 05 100 2 3 1 7.3103 e + 05年0.0525 0.07 100 7.3134 e + 2 3 0 05 100 2 0 0
t.成熟度=日期时间(t。成熟,“ConvertFrom”“datenum”“场所”“en_US”);[ZeroRates, CurveDates] = zbtyfield (t, yield, Settle, OutputCompounding)
ZeroRates =11×10.0616 0.0603 0.0657 0.0590 0.0649 0.0650 0.0606 0.0611 0.0643 0.0614
CurveDates =11 x1 datetime1998年6月01日-1999年9月15日-2000年1月15日-2000年6月30日-2001年4月30日-2001年6月30日-2001年7月01日-2002年4月15日-2002年4月30日

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

加载数据负载usbond_02Sep2008Settle = datetime(2008,9,2);

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

real殖= bndyfield (tipprice, tipspoon,Settle,TIPSMaturity);tips债券= [tips到期tips券];[RealZeroRates, CurveDates] = zbtyfield (TIPSBonds, realyield, Settle)
RealZeroRates =26日×10.0069 0.0094 0.0092 0.0111 0.0110 0.0119 0.0116 0.0128 0.0126 0.0136
CurveDates =26 x1 datetime2010年1月15日- 4月15日-2010年1月15日-2011年4月15日-2012年1月15日-2012年4月15日-2013年15月15日-2014年7月15日-2015年1月15日-2015年1月15日-2016年1月15日-2017年1月15日-2018年7月15日-2025年1月15日-2026日- 1月-2027日- 1月-2028日- apr -2028日- apr -2029日- apr -2032

输入参数

全部折叠

债券息票信息生成零曲线,指定为6列表或an——- - - - - -2n——- - - - - -6矩阵的键合信息,其中表列或矩阵列包含:

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

  • CouponRate(第二栏必填)表示债券票面利率的十进制小数。

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

  • (第四栏,可选)每年的债券息票。允许的值为012(默认),3.46,12

  • 基础(第五栏,可选)债券的日期。一个整数向量。

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

    • 1 = 30/360 (sia)

    • 2 =实际/360

    • 3 =实际/365

    • 4 = 30/360 (bma)

    • 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

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

  • EndMonthRule(第6列,可选)月末规则。此规则仅适用于成熟是一个月的月底日期,该月的天数为30天或更少。0= ignore规则,这意味着债券的息票支付日期总是同一个数字日。1= set rule on (default),这意味着债券的息票支付日期总是每月的最后一天

请注意

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

  • 如果债券是矩阵吗n——- - - - - -2n——- - - - - -6矩阵,其中每行描述一个键,前两列(成熟而且CouponRate)。其余列是可选的,但必须按顺序添加。所有的行债券必须有相同数量的列。

数据类型:|字符|字符串|datetime|表格

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

请注意

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

数据类型:

结算日期表示零点曲线推导中的时间零点,指定为标量日期时间、字符串或日期字符向量。解决表示推导零曲线的时间零,通常是所有债券的共同结算日期。

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

数据类型:字符串|字符|datetime

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

  • 0-单利(无复利)

  • 1-年度复利

  • 2-半年复利(默认)

  • 3.-每年复利三次

  • 4-季度复利

  • 6-双月复利

  • 12-每月复利

  • -1-持续复合

数据类型:

输出参数

全部折叠

由到期日定义的投资期限内每个点的隐含零利率,以a的形式返回——- - - - - -1其中,十进制分数向量是具有唯一到期日的债券的数目。总的来说,在ZeroRates构成一条零曲线。

如果不止一个键有相同的键成熟目前为止,zbtyield返回它的平均零利率成熟。第一个之前的任何价格成熟假设等于第一个的速率成熟,即假设曲线在第一个点之前是平坦的成熟

对应的到期日ZeroRates,作为——- - - - - -1唯一到期日向量,其中是不同到期日债券的数量。这些日期从最早的开始成熟日期和结尾都是最近的成熟日期在债券表格或矩阵。

如果输入为债券解决有datetime值吗CurveDatesCurveDates日期时间。否则CurveDates是序列号。使用函数datestr将串行日期数字转换为格式化的日期字符向量。

参考文献

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

麦克纳利,理查德W.和詹姆斯V.乔丹。利率期限结构。第37章,法博齐和法博齐,同前

达斯,萨蒂亚吉特。《计算零利率》。“在互换和衍生品融资。附录第8章,第219-225页。纽约,欧文专业出版社,1994年。

版本历史

R2006a之前介绍

全部展开

Baidu
map