主要内容

创建一个IRDataCurve对象

创建一个IRDataCurve对象,见以下选项:

使用IRDataCurve与日期和数据

使用IRDataCurve向量的日期和数据来创建一个利率曲线对象。当构建IRDataCurve对象,您也可以使用可选的输入定义的利率曲线是如何构建的日期和数据。

例子

在本例中,您创建的向量日期数据利率曲线。

Data = (2.09 2.47 2.71 - 3.12 3.43 - 3.85 4.57 - 4.58) / 100;今天日期= daysadd ([360 2 * 360 * 360 * 360 360 * 360 360 * 20 * 30 * 360), 1);

使用IRDataCurve构建基于利率对象常数pchip插值方法。

irdc_const = IRDataCurve (“前进”今天,日期、数据“InterpMethod”,“不变”);irdc_pchip = IRDataCurve (“前进”今天,日期、数据“InterpMethod”,“pchip”);

情节向前和零率曲线为两个IRDataCurve基于对象常数pchip插值方法。

PlottingDates = daysadd(1)今天,180:10:360 * 30日;情节(PlottingDates getForwardRates (irdc_const PlottingDates),“b”)举行情节(PlottingDates getForwardRates (irdc_pchip PlottingDates),“r”)情节(PlottingDates getZeroRates (irdc_const PlottingDates),‘g’)情节(PlottingDates getZeroRates (irdc_pchip PlottingDates),“黄色”)({传奇远期利率不变的,“PCHIP远期利率”,“恒零利率”,“PCHIP零利率”},“位置”,“东南”)标题(“IRDataCurve对象插值方法”)datetick

情节展示了向前和零率的关系曲线。

引导IRDataCurve基于市场工具

使用引导函数,基于市场工具,创建一个利率曲线对象。引导的时候,你还可以选择定义一系列的插值方法(线性,样条,常数,pchip)。

示例1

在本例中,您引导互换曲线从存款,欧洲美元期货和互换。输入市场数据对于这个例子是硬编码的,指定为两个单元数组的数据;一个细胞阵列显示仪表和其他包含的类型解决,成熟价值观和仪器的市场报价。存款和互换,引用率;欧洲美元期货的报价是有代价的。尽管债券是不习惯在这个例子中,债券也会有一个报价。

InstrumentTypes = {“存款”;“存款”;“存款”;“存款”;“存款”;“期货”;“期货”;“期货”;“期货”;“期货”;“期货”;“期货”;“期货”;“期货”;“期货”;“期货”;“期货”;“期货”;“期货”;“期货”;“期货”;“期货”;“交换”;“交换”;“交换”;“交换”;“交换”;“交换”;“交换”};仪器= [datenum (“08/10/2007”),datenum (“08/17/2007”),.0532063;datenum (“08/10/2007”),datenum (“08/24/2007”),.0532000;datenum (“08/10/2007”),datenum (“09/17/2007”),.0532000;datenum (“08/10/2007”),datenum (“10/17/2007”),.0534000;datenum (“08/10/2007”),datenum (“11/17/2007”),.0535866;datenum (“08/08/2007”),datenum (' 19 - 12月- 2007 '),9485;datenum (“08/08/2007”),datenum (“19 - 3月- 2008”),9502;datenum (“08/08/2007”),datenum (“18 - 2008年6月- - - - - -”),9509.5;datenum (“08/08/2007”),datenum (的17 - 9月- 2008),9509;datenum (“08/08/2007”),datenum (的17 - 12月- 2008),9505.5;datenum (“08/08/2007”),datenum (“18 - 3月- 2009”),9501;datenum (“08/08/2007”),datenum (截止2009年6月17日的),9494.5;datenum (“08/08/2007”),datenum (的16 - 9月- 2009),9489;datenum (“08/08/2007”),datenum (的16 - 12月- 2009),9481.5;datenum (“08/08/2007”),datenum (的17 - 3月- 2010),9478;datenum (“08/08/2007”),datenum (截止2010年6月16的),9474;datenum (“08/08/2007”),datenum (“15 - 9 - 2010”),9469.5;datenum (“08/08/2007”),datenum (的15 - 12月- 2010),9464.5;datenum (“08/08/2007”),datenum (的16 - 3月- 2011),9462.5;datenum (“08/08/2007”),datenum (“15 - 2011年6月- - - - - -”),9456.5;datenum (“08/08/2007”),datenum (“21 - 9 - 2011”),9454;datenum (“08/08/2007”),datenum (”21日- 12月- 2011),9449.5;datenum (“08/08/2007”),datenum (“08/08/2014”),.0530;datenum (“08/08/2007”),datenum (“08/08/2017”),.0545;datenum (“08/08/2007”),datenum (“08/08/2019”),.0551;datenum (“08/08/2007”),datenum (“08/08/2022”),.0559;datenum (“08/08/2007”),datenum (“08/08/2027”),.0565;datenum (“08/08/2007”),datenum (“08/08/2032”),.0566;datenum (“08/08/2007”),datenum (“08/08/2037”),.0566);

引导调用的函数IRDataCurve对象。这个函数的输入包括曲线类型(向前),解决目前为止,InstrumentTypes,仪器数据。的引导功能还支持可选参数,包括一个金宝app插值方法,复合,的基础上,为引导和选择结构。例如,你传入一个IRBootstrapOptions对象包括信息ConvexityAdjustment远期利率。

IRsigma = . 01;CurveSettle = datenum (“08/10/2007”);bootModel = IRDataCurve.bootstrap (“前进”CurveSettle,InstrumentTypes,仪器,“InterpMethod”,“pchip”,“复合”,1“IRBootstrapOptions”,IRBootstrapOptions (“ConvexityAdjustment”@ (t) 5 * IRsigma ^ 2。* t ^ 2))。
bootModel = IRDataCurve类型:提出解决:733264(10 - 8月- 2007)复合:1基础:0(实际/实际)InterpMethod: pchip日期:[29 x1双]数据:[29 x1双]

引导函数使用一个优化工具箱™函数求解任何引导利率。

情节向前和零曲线。

PlottingDates = (CurveSettle + 20:30: CurveSettle + 365 * 25) ';TimeToMaturity = yearfrac (CurveSettle PlottingDates);BootstrappedForwardRates = getForwardRates (bootModel PlottingDates);BootstrappedZeroRates = getZeroRates (bootModel PlottingDates);图保存情节(TimeToMaturity BootstrappedForwardRates,“r”)情节(TimeToMaturity BootstrappedZeroRates,‘g’)标题(“引导曲线”)包含(“时间”)({传奇“前进”,“零”})

情节展示了向前和零率曲线的市场数据。

示例2

在本例中,您引导互换曲线从存款,欧洲美元期货和互换。输入市场数据对于这个例子是硬编码的,指定为两个单元数组的数据;一个细胞阵列显示仪器的类型和其他细胞数组包含解决,成熟价值观和仪器的市场报价。这个例子的引导也演示了使用InstrumentBasis为每一个仪器类型。

InstrumentTypes = {“存款”;“存款”;“期货”;“期货”;“期货”;“期货”;“期货”;“期货”;“交换”;“交换”;“交换”;“交换”};仪器= [datenum (“08/10/2007”),datenum (“09/17/2007”),.0532000;datenum (“08/10/2007”),datenum (“11/17/2007”),.0535866;datenum (“08/08/2007”),datenum (' 19 - 12月- 2007 '),9485;datenum (“08/08/2007”),datenum (“19 - 3月- 2008”),9502;datenum (“08/08/2007”),datenum (“18 - 2008年6月- - - - - -”),9509.5;datenum (“08/08/2007”),datenum (的17 - 9月- 2008),9509;datenum (“08/08/2007”),datenum (的17 - 12月- 2008),9505.5;datenum (“08/08/2007”),datenum (“18 - 3月- 2009”),9501;datenum (“08/08/2007”),datenum (“08/08/2014”),.0530;datenum (“08/08/2007”),datenum (“08/08/2019”),.0551;datenum (“08/08/2007”),datenum (“08/08/2027”),.0565;datenum (“08/08/2007”),datenum (“08/08/2037”),.0566);CurveSettle = datenum (“08/10/2007”);

引导函数被调用的函数IRBootstrapOptions对象。的输入引导功能包括曲线类型(向前),解决目前为止,InstrumentTypes,仪器数据。的引导功能还支持可选参数,包括一个金宝app插值方法,复合,的基础上,为引导和选择结构。在本例中,您将一个额外的基础每个仪器类型值。

bootModel = IRDataCurve.bootstrap (“前进”CurveSettle InstrumentTypes,仪器,“InterpMethod”,“pchip”,“InstrumentBasis”,(repmat (2 8 1); repmat (0 4 1)))
bootModel = IRDataCurve类型:提出解决:733264(10 - 8月- 2007)复合:2基础:0(实际/实际)InterpMethod: pchip日期:[12 x1双]数据:[12 x1双)

引导函数使用一个优化工具箱函数求解任何引导利率。

情节票面收益率曲线使用getParYields函数。

PlottingDates = (datenum (“08/11/2007”):30:CurveSettle + 365 * 25) ';情节(PlottingDates getParYields (bootModel PlottingDates),“r”)datetick

情节展示了票面收益率曲线的市场数据。

另请参阅

|||

相关的例子

更多关于

外部网站