金融工具工具箱™ 包括一组函数,用于将利率期限信息封装到单个结构中。这些函数提供了一种方便的方法,可以将与利率条款相关的所有信息打包为通用格式,并在修改一个或多个参数时解决相互依赖关系。有关信息,请参阅:
创建或修改(intenvset)讨论如何创建或修改利率期限结构(等级规范
)使用intenvset
作用
获取特定属性(intenvget)以讨论如何从等级规范
intenvset
)创建或修改利率期限结构的主要功能等级规范
(费率规格)为intenvset
.如果该函数的第一个参数是先前创建的等级规范
,该函数修改现有的速率规范并返回一个新的速率规范。否则,它将创建等级规范
.
当使用等级规范
要指定基于收益率(零息票利率)或远期利率对工具进行定价的利率期限结构,请指定零利率或远期利率作为输入参数等级规范
结构不限于或特定于此问题域。等级规范
是速率-时间关系的封装;intenvset
充当构造函数或修饰符,以及intenvget
作为一个访问器。金融工具工具箱软件支持的利率模型适用于零利率或远期金宝app利率。
其他的intenvset
参数是名称-值对。可以指定或修改的名称-值对参数有:
原因
复合
圆盘
结束日期
EndMonthRule
费率
startdate可以
估价日期
有关原因
,请参阅原因.
重新考虑原来的利率表(见)从费率计算折扣率).
从…起 |
来 |
速度 |
---|---|---|
2000年2月15日 |
2000年8月15日 |
0.05 |
2000年2月15日 |
2001年2月15日 |
0.056 |
2000年2月15日 |
2001年8月15日 |
0.06 |
2000年2月15日 |
2002年2月15日 |
0.065 |
2000年2月15日 |
2002年8月15日 |
0.075 |
使用此表中的信息填充等级规范
结构。
起始日期=[“15 - 2月- 2000”];EndDates = [“15 - 8月- 2000”;“15 - 2月- 2001”;“15 - 8月- 2001”;“15 - 2月- 2002”;“15 - 8月- 2002”];复合= 2;ValuationDate = [“15 - 2月- 2000”];率= (0.05;0.056;0.06;0.065;0.075);rs = intenvset (“复利”复合,startdate可以的,...startdate可以,“结束日期”EndDates,“费率”,差饷,...“ValuationDate”ValuationDate)
rs = FinObj: 'RateSpec'复利:2盘:[5x1 double]利率:[5x1 double] EndTimes: [5x1 double] StartTimes: [5x1 double] EndDates: [5x1 double] StartDates: 730531 ValuationDate: 730531 Basis: 0 endmonth规则:1
结构中填充的某些属性未在对的调用中显式传递等级规范
. 自动完成的属性的值取决于显式传递的属性。例如,考虑开始时间
和末日
向量。自从startdate可以
和结束日期
向量被传入,并且估价日期
,intenvset
计算所需的所有信息都准备好了吗开始时间
和末日
。因此,这两个属性是只读的。
intenvget
)互补函数intenvset
是intenvget
,它从利率期限结构中获取特定于函数的属性。其语法为:
ParameterValue = intenvget(RateSpec, 'ParameterName')
来获得矢量末日
从等级规范
结构,输入:
EndTimes = intenvget (rs,“EndTimes”)
EndTimes = 1 2 3 4 5
取得圆盘
,这些折扣率的值是自动计算的intenvset
,类型:
盘= intenvget (rs,“光盘”)
盘= 0.9756 0.9463 0.9151 0.8799 0.8319
这些贴现系数对应于从startdate可以
和结束结束日期
.
小心
尽管您可以直接访问结构中的这些字段,而不是使用intenvget
,建议不要这样做。利率期限结构的形式可能会在未来的工具箱版本中发生变化。如果发生这种情况,有代码访问吗等级规范
字段将直接停止工作。
现在使用的等级规范
结构及其功能,以检查利率期限结构的特定属性的变化如何影响那些依赖它的人。作为练习,改变的值复合
从2(半年一次)到1(一年一次)。
rs=意向集(rs,“复利”, 1);
自从开始时间
和末日
是以周期性折现的单位来衡量的吗复合
从2到1将基本单位从半年重新定义为年。这意味着六个月的时间段用值表示0.5
,一年的周期为1
. 获取向量开始时间
和末日
,输入:
开始时间= intenvget (rs,“开始时间”);EndTimes = intenvget (rs,“EndTimes”);Times = [StartTimes, EndTimes]
× = 0 0.5000 0 1.0000 0 1.5000 0 2.0000 0 2.5000
因为所有的值startdate可以
都和估价日期一样吗开始时间
值是0。另一方面,在结束日期
向量是以六个月为间隔的日期。由于重新定义的复合值为1,末日
变成以0.5的增量分隔的数字序列。
英斯特邦
|instcap
|instcf
|instfixed
|instfloat
|室内
|instoptbnd
|instoptembnd
|instoptfloat
|instoptemfloat
|instrangefloat
|instswap
|instswaption
|intenvset
|bondbyzero
|cfbyzero
|fixedbyzero
|floatbyzero
|意向价格
|意念
|天鹅座
|floatmargin
|浮动盘边距
|hjmtimespec
|hjmtree
|hjmvolspec
|邦德比
|卡比海姆
|cfbyhjm
|fixedbyhjm
|floatbyhjm
|floorbyhjm
|hjmprice
|hjmsens
|mmktbyhjm
|oasbyhjm
|optbndbyhjm
|optfloatbyhjm
|optembndbyhjm
|optemfloatbyhjm
|兰奇比姆酒店
|swapbyhjm
|swaptionbyhjm
|bdttimespec
|bdttree
|bdtvolspec
|bdtprice
|bdtsens
|bondbybdt
|capbybdt
|cfbybdt
|fixedbybdt
|floatbybdt
|floorbybdt
|mmktbybdt
|oasbybdt
|optbndbybdt
|optfloatbybdt
|optembndbybdt
|optemfloatbybdt
|范围浮动Bdt
|斯瓦布比德
|swaptionbybdt
|hwtimespec
|hwtree
|hwvolspec
|邦德比
|capbyhw
|cfbyhw
|固定的
|floatbyhw
|floorbyhw
|hwcalbycap
|hwcalbyfloor
|hwprice
|hwsens
|oasbyhw
|optbndbyhw
|optfloatbyhw
|optembndbyhw
|optemfloatbyhw
|rangefloatbyhw
|swapbyhw
|swaptionbyhw
|bktimespec
|bktree
|bkvolspec
|bkprice
|bksens
|邦德比克
|卡比伯克
|cfbybk
|fixedbybk
|浮动BYBK
|地板虫
|oasbybk
|optbndbybk
|optfloatbybk
|optembndbybk
|OptermfloatByk
|RangeByBK
|天鹅
|swaptionbybk
|卡比布莱克
|地板砖
|swaptionbyblk