IRDataCurve
对象创建一个IRDataCurve
对象,请参阅以下选项:
IRDataCurve
资料及日期使用IRDataCurve
用日期和数据向量创建利率曲线对象。当构建IRDataCurve
对象,还可以使用可选输入来定义如何根据日期和数据构造利率曲线。
在本例中,创建的向量为日期
和数据
对于利率曲线。
数据= [2.09 2.47 2.71 3.12 3.43 3.85 4.57 4.58]/100;date = daysadd(今天,[360 2*360 3*360 5*360 7*360 10*360 20*360 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”) plot(PlottingDates, getZeroRates(irdc_const, PlottingDates),‘g’) plot(PlottingDates, getZeroRates(irdc_pchip, PlottingDates),“黄色”)({传奇远期利率不变的,“PCHIP远期利率”,“恒零利率”,...“PCHIP零利率”},“位置”,“东南”)标题(“irdataccurve对象的插值方法”) datetick
该图显示了远期利率和零利率曲线的关系。
IRDataCurve
基于市场工具使用引导功能,基于市场工具,创建利率曲线对象。在引导时,您还可以选择定义一系列插值方法(线性
,样条
,常数
,pchip
).
在本例中,从存款、欧洲美元期货和掉期启动掉期曲线。本例的输入市场数据是硬编码的,并指定为两个单元数据数组;一个单元阵列表示仪器的类型,另一个单元阵列包含解决
,成熟
该工具的价值和市场报价。对于存款和掉期,报价是一个利率;对于欧洲美元期货,报价是一个价格。虽然本例中没有使用债券,但债券也会报价。
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
,仪器
数据。的引导
函数还支持可选参数,包括插值万博1manbetx方法、复合、基和用于引导的选项结构。例如,你传入一个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 = irdataccurve Type: Forward Settle: 733264 (10- 8 -2007) compound: -1 Basis: 0 (actual/actual) InterpMethod: pchip date: [29x1 double] Data: [29x1 double]
的引导
函数使用最优化工具箱™函数来求解任何引导速率。
绘制正向和零曲线。
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’)标题(“引导曲线”)包含(“时间”)({传奇“前进”,“零”})
该图显示了市场数据的远期和零利率曲线。
在本例中,从存款、欧洲美元期货和掉期启动掉期曲线。本例的输入市场数据是硬编码的,并指定为两个单元数据数组;一个单元格数组表示仪器的类型,另一个单元格数组包含解决
,成熟
该工具的价值和市场报价。这个引导的示例还演示了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
,仪器
数据。的引导
函数还支持可选参数,包括插值万博1manbetx方法、复合、基和用于引导的选项结构。在这个例子中,您传递了一个额外的基础
每个仪器类型的值。
bootModel = IRDataCurve.bootstrap (“前进”CurveSettle InstrumentTypes,...仪器,“InterpMethod”,“pchip”,“InstrumentBasis”, (repmat (2 8 1); repmat (0 4 1)))
bootModel = irdataccurve Type: Forward Settle: 733264 (10- 8 -2007) compound: 2 Basis: 0 (actual/actual) InterpMethod: pchip date: [12x1 double] Data: [12x1 double]
的引导
函数使用最优化工具箱函数来求解任何引导速率。
使用。绘制par收益率曲线getParYields
函数。
PlottingDates = (datenum (“08/11/2007”): 30: CurveSettle + 365 * 25) ';情节(PlottingDates getParYields (bootModel PlottingDates),“r”) datetick
该图显示了市场数据的标准收益率曲线。
IRBootStrapOptions
|IRDataCurve
|IRFunctionCurve
|IRFitOptions