这个例子展示了如何使用不同的曲线进行贴现来引导一个正向曲线。
正向和折扣曲线需要数据。对于该特定示例,假设为eonia(折扣曲线)和欧元伯(前向曲线)提供数据。然而,在要构建的曲线的任何情况下可以使用这种方法与用于折扣现金流量的曲线不同。虽然这个例子中的数据是硬编码的,但它也可以导入MATLAB®与Datafeed工具箱™或数据库工具箱™。
解决= datenum ('20 -aug-2013');%存款数据EONIADepositRates =[。0007 .00067];EONIADepositMat = datenum ({'3-2013',“20 - 9 - 2013”});eoniadepositbasis = 2;%行为/ 360eoniadepositperiod = 0;%联邦铁路局EoniaFrarates = [.00025 .0003 .00043 .00054]';eoniafrastartdate = datenum({'11 -sep-2013',9 - 10月- 2013 ','13 -nov-2013','11 -dec-2013'});EONIAFRAEndDate = datenum ({9 - 10月- 2013 ','13 -nov-2013','11 -dec-2013',' 11 - 1月- 2014 '});EONIAFRABasis = 2;%行为/ 360Eoniafraperiod = 0;%交换数据EONIASwapRates =[。' 0003 .001 .004 .008 .012 .0155 .018 .0193 ';EONIASwapMat = datemnth(解决,12*[2:5 7 10 15 20 25 30]');EONIASwapBasis = 5;% ISDA 30/360EONIASwapPeriod = 1;%EURIBOR存款数据EURIBORDepositRates =[。';EURIBORDepositMat = datenum ({'3-2013',“20 - 9 - 2013”,'21 -oct-2013',20 - 11月- 2013 '});EURIBORDepositBasis = 2;%行为/ 360欧伯佩德省梯田= 0;%欧元区银行间同业拆借利率期货EURIBORFRARates = [9982 9978 9976 9975]';EURIBORFRAStartDate = datenum ({'18 -dec-2013','19 -MAR-2014',“18 - 2014年6月- - - - - -”,的17 - 9月- 2014});EURIBORFRAEndDate = datenum ({'18 -MAR-2014',截止2014年6月19日的,“18 - 9 - 2014”,'17 -DEC-2014'});欧元弗拉巴西斯= 2;%行为/ 360欧伯弗弗拉弗二= 4;%Euribor交换数据Euriborswaprates = [.0026。2004。015 .018 .02 .021。0215]'';欧元湾武伍马特= DATEMNTH(定居,12 * [2:5 7 10 15 20 25 30]');欧元湾武装赛= 5;% ISDA 30/360EURIBORSwapPeriod = 1;
建立eonia曲线。这与单个曲线外壳基本相同。
CurveType ='零';CurveCompounding = 1;CurveBasis = 3;%行为/ 365nEONIADeposits =长度(EONIADepositMat);nEONIAFRA =长度(EONIAFRAEndDate);nEONIASwaps =长度(EONIASwapMat);EONIAInstrumentTypes = [repmat ({“存款”},NeoNiaDeposits,1);repmat({联邦铁路局的},NeoNiafra,1); Repmat({“交换”} nEONIASwaps 1)];EONIAPeriod = [repmat (EONIADepositPeriod nEONIADeposits 1);repmat (EONIAFRAPeriod nEONIAFRA 1); repmat (EONIASwapPeriod nEONIASwaps 1)];EONIABasis = [repmat (EONIADepositBasis nEONIADeposits 1);repmat (EONIAFRABasis nEONIAFRA 1); repmat (EONIASwapBasis nEONIASwaps 1)];EONIAInstrumentData = [[repmat(Settle,[nEONIASwaps 1]);EONIAFRAStartDate;repmat(Settle,[nEONIASwaps 1])];...[eoniadepositmat; eoniafraenddate; eoniaswapmat]...[eoniadepositrates;大氧化物; eoniawaprates]]];eoniacurve = irdatacurve.bootstrap(曲线,定居,eoniainstumenttypes,...eoniainstrumentdata,“复合”,curvecompounding,'基础'CurveBasis,...'internerperiod'EONIAPeriod,'internicbasis',eoniabasis)
EONIACurve = Type: zero Settle: 735466 (20-Aug-2013) compound: 1 Basis: 3 (actual/365) InterpMethod: linear Dates: [16x1 double] Data: [16x1 double]
欧元银行间拆放款远期曲线首先采用单一曲线方法构建。
nEURIBORDeposits =长度(EURIBORDepositMat);nEURIBORFRA =长度(EURIBORFRAEndDate);nEURIBORSwaps =长度(EURIBORSwapMat);EURIBORInstrumentTypes = [repmat ({“存款”},neuribordeposits,1);repmat({'期货'} nEURIBORFRA 1); repmat ({“交换”},神经毒树脂,1)];Euriborperiod = [Repmat(Euribordepositperiod,Neuribordeposits,1);Repmat(Euriborfraperiod,Neuriborfra,1); Repmat(Euriborswapperiod,Neuriborswaps,1)];欧伯·森西= [Repmat(欧伯佩特巴西斯,神经纤维诗,1);Repmat(Euriborfrabasis,Neuriborfra,1); Repmat(Euriborswapbasis,Neuriborswaps,1)];EuriborinstrumentData = [Repmat(Sold,Size(EuriborinStrumentTypes))...[EURIBORDepositMat; EURIBORFRAEndDate; EURIBORSwapMat]...[欧伯福特;欧元婚;欧元湾];Euriborcurve_single = Irdatacurve.bootstrap(Curvetype,Sold,Euriborinstrumenttypes,...EURIBORInstrumentData,“复合”,curvecompounding,'基础'CurveBasis,...'internerperiod',欧元纤维,'internicbasis'EURIBORBasis)
Euriborcurve_single =类型:Zero Solly:735466(2013年8月)复合:1个基础:3(实际/ 365)Interpmethod:线性日期:[18x1双]数据:[18x1双]
接下来,使用eonia曲线作为折扣曲线构建曲线。为此,请将Eonia曲线指定为可选的输入参数。
EURIBORInstrumentTypes EURIBORCurve = IRDataCurve.bootstrap (CurveType,结算,...EURIBORInstrumentData,“DiscountCurve”,eoniacurve,“复合”,...curvecompounding,'基础'CurveBasis,'internerperiod',欧元纤维,...'internicbasis'EURIBORBasis)
EURIBORCurve = Type: zero Settle: 735466 (20-Aug-2013) compound: 1 Basis: 3 (actual/365) InterpMethod: linear Dates: [18x1 double] Data: [18x1 double]
绘制结果以比较曲线。
PlottingDates =(解决+ 20:30:解决+ 365 * 30)';PlottingDates TimeToMaturity = yearfrac(解决);figure plot(TimeToMaturity, getZeroRates(EONIACurve, PlottingDates),“b”) 抓住上情节(时间术,欧虫(Euriborcurve_single,Plottingdates),“r”)情节(时间弥扑症,召集(Euriborcurve,Plottingdates),‘g’) 标题(单曲线与双曲线自举的比较) 传奇({“欧元”,“欧元区银行间同业拆借,'欧元互惠eonia折扣'},'地点','东南')
正如预期的那样,两种不同的欧元银行间同业拆借利率曲线之间的差异很小,但并非微不足道。
这个例子来自以下论文和期刊文章:
amametrano, F和Bianchetti, M,你一直想知道多个利率曲线举动的一切,但害怕问(2013年4月2日),网址:https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2219548.
[2] Bianchetti, M。两条曲线,一个价格,风险杂志,74-80页,2010年8月。
Fujii, M, Shimada, Y, Takahashi, A.,关于构建多个交换曲线的注意事项,无副交换曲线(2010年1月2日),CARF工作文件系列号。carf - f - 154,可以在:https://papers.srn.com/sol3/papers.cfm?abstract_id=1440633.
[4] Mercurio,Fabio,利率与信贷紧缩:新的公式和市场模型(2009年2月5日),彭博投资组合研究论文第2010-01-FRONTIERS号。
[5] Nashikkar、。理解OIS打折《巴克莱资本利率策略》,2011年2月24日。
IRDataCurve
|引导
|floatbyzero
|召集机会
|swapbyzero.