主要内容

zero2pyld

给定零曲线的票面收益率曲线

在R2017b中,可选输入参数的规范发生了变化。虽然以前的有序输入语法仍然支持,但在未来的版本中可能不再支持。金宝app使用新的可选名称-值对输入:InputCompoundingInputBasisOutputCompounding,OutputBasis

描述

例子

ParRatesCurveDates= zero2pyld(ZeroRatesCurveDates解决返回给定零曲线及其到期日的票面收益率曲线。如果输入为CurveDates解决是datetime数组,CurveDates作为datetime数组返回。否则,CurveDates作为连续日期号返回。使用函数datestr将串行日期数字转换为格式化的日期字符向量。ParRates对于这些输入数据类型中的任何一个都是相同的。

例子

ParRatesCurveDates= zero2pyld(___名称,值添加可选的名称-值对参数

例子

全部折叠

给定一组到期日、结算日上的零曲线,输入零曲线为年度复利,输出票面利率为月度复利,使用datetime计算等值收益率曲线的输入。

ZeroRates = [0.0457 0.0487 0.0506 0.0507 0.0505 0.0504 0.0506 0.0516 0.0539 0.0530];CurveDates = [datetime(2000,11,6) datetime(2000,12,11) datetime(2001,1,15) datetime(2001,1,5) datetime(2001,3,4) datetime(2001,3,4) datetime(2001,4,2) datetime(2001,4,30) datetime(2001,6,25) datetime(2001,9,4) datetime(2001,11,12)];set = datetime(2000,11,3);InputCompounding = 12;InputBasis = 2;outputcompound = 1;OutputBasis = 2;[ParRates, CurveDates] = zero2pyld(ZeroRates, CurveDates,...解决,“InputCompounding”12“InputBasis”2,“OutputCompounding”,1,“OutputBasis”, 2)
ParRates =10×1-0.0436 0.0611 0.0579 0.0567 0.0550 0.0543 0.0541 0.0546 0.0565 0.0561
CurveDates =10 x1 datetime2001年3月-2001年4月-2001年4月-2001年4月- 25年6月-2001年04月-2001年9月-2001年12月- 11月

给定以下零曲线及其到期日,返回ParRates

set = datetime(2013,2,1);CurveDates = [datetime(2014,2,1) datetime(2015,2,1) datetime(2016,2,1) datetime(2018,2,1) datetime(2020,2,1) datetime(2023,2,1) datetime(2033,2,1) datetime(2043,2,1)];OriginalZeroRates =[。110.3.00.641.44 2.07 2.61 3.29 3.55]'/100; OutputCompounding = 1; OutputBasis = 0; InputCompounding = 1; InputBasis = 0; ParRates = zero2pyld(OriginalZeroRates, CurveDates, Settle,...“OutputCompounding”OutputCompounding,“OutputBasis”OutputBasis,...“InputCompounding”InputCompounding,“InputBasis”InputBasis)
ParRates =8×10.0011 0.0030 0.0064 0.0142 0.0202 0.0251 0.0310 0.0331

ParRates,使用pyld2zero函数返回ZeroRatesOut并确定往返误差。

ZeroRatesOut = pyld2zero(ParRates, CurveDates, Settle,...“OutputCompounding”OutputCompounding,“OutputBasis”OutputBasis,...“InputCompounding”InputCompounding,“InputBasis”InputBasis)
ZeroRatesOut =8×10.0011 0.0030 0.0064 0.0144 0.0207 0.0261 0.0329 0.0355
max(abs(OriginalZeroRates - ZeroRatesOut))%往返错误
Ans = 1.4919e-16

输入参数

全部折叠

年化零利率,指定为aNUMBONDS——- - - - - -1使用十进制分数的向量。总的来说,利率构成了一个隐含的零曲线的投资期限代表CurveDates

数据类型:

与输入对应的到期日ZeroRates,指定为NUMBONDS——- - - - - -1向量,使用日期时间数组、字符串数组或日期字符向量。

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

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

输入的通用结算日期ZeroRates,指定为标量日期时间、字符串或日期字符向量。

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

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

名称-值参数

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

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:[ParRates,CurveDates] = zero2pyld(ZeroRates,CurveDates, Settle,'OutputCompounding',3,'OutputBasis',5,'InputCompounding',4,'InputBasis',5)

输出复合频率ParRates,指定为逗号分隔的对,由“OutputCompounding”和允许的值:

  • 1-年度复利

  • 2-半年复利(默认)

  • 3.-每年复利三次

  • 4-季度复利

  • 6-双月复利

  • 12-每月复利

请注意

  • 如果InputCompounding123.46,或12而且OutputCompounding未指定时,的值InputCompounding使用。

  • 如果InputCompounding0(简单的),-1(连续),或365(每日),有效OutputCompoundingValue也必须指定。

  • 如果任何一InputCompoundingOutputCompounding未指定,默认为2(半年一次)。

数据类型:

输出的日计数基础ParRates,指定为逗号分隔的对,由“OutputBasis”和允许的值:

  • 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 =总线/252

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

请注意

如果OutputBasis没有指定,那么OutputBasis是否分配了为InputBasis.如果任何一InputBasisOutputBasis未指定,默认为0(实际的/实际的)。

数据类型:

输入复合频率ZeroRates,指定为逗号分隔的对,由“InputCompounding”和允许的值:

  • 0-单利(无复利)

  • 1-年度复利

  • 2-半年复利(默认)

  • 3.-每年复利三次

  • 4-季度复利

  • 6-双月复利

  • 12-每月复利

  • 365-每日复利

  • -1-持续复合

请注意

  • 如果InputCompounding设置为0(简单的),-1(连续),或365(每日)OutputCompounding也必须使用有效值指定。

  • 如果InputCompounding没有指定,那么InputCompounding是否分配了为OutputCompounding

  • 如果任何一InputCompoundingOutputCompounding未指定,默认为2(半年一次)。

数据类型:

输入的日计数基础ZeroRates,指定为逗号分隔的对,由“InputBasis”和允许的值:

  • 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 =总线/252

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

请注意

如果InputBasis没有指定,那么InputBasis是否分配了为OutputBasis.如果任何一InputBasisOutputbasis未指定,默认为0(实际的/实际的)。

数据类型:

输出参数

全部折叠

票面利率债券,返回为aNUMBONDS——- - - - - -1数值向量。ParRates按成熟度的升序排列。

对应的到期日ParRates,作为NUMBONDS——- - - - - -1中所包含的每个票面利率对应的到期日向量ParRates

ParRates表示为连续日期号(默认)或日期时间(如果CurveDates解决是datetime数组)。CurveDates按成熟度的升序排列。

版本历史

R2006a之前介绍

全部展开