主要内容gydF4y2Ba

利率曲线函数拟合gydF4y2Ba

这个例子展示了如何使用gydF4y2BaIRFunctionCurvegydF4y2Ba对象为利率期限结构(也称为收益率曲线)建模。这可以与用日期和数据的向量建模期限结构以及点之间的插值(目前可以用函数来完成)进行对比gydF4y2BaprbyzerogydF4y2Ba).期限结构至少可以指三种不同的曲线:贴现曲线、零曲线或远期曲线。gydF4y2Ba

的gydF4y2BaIRFunctionCurvegydF4y2Ba对象允许您将利率曲线建模为函数。gydF4y2Ba

本示例探讨如何使用gydF4y2BaIRFunctionCurvegydF4y2Ba反对建立英国无违约利率期限结构的模型。期限结构有三种不同的形式,稍后将进行更详细的讨论:gydF4y2Ba

  • - siegelgydF4y2Ba

  • SvenssongydF4y2Ba

  • 用可变粗糙度惩罚(VRP)平滑三次样条gydF4y2Ba

选择的数据gydF4y2Ba

收益率曲线建模的第一个问题是应该使用什么数据。为了建立无违约收益率曲线的模型,必须使用无违约、无期权的市场工具。数据中最重要的组成部分是英国政府债券(Gilts)。历史数据可从以下网站检索:gydF4y2Ba

https://www.dmo.gov.ukgydF4y2Ba

回购数据被用来构建收益率曲线的短端。回购数据可从以下网站检索:gydF4y2Ba

https://www.ukfinance.org.uk/gydF4y2Ba

还要注意,必须将数据指定为列所在的矩阵gydF4y2Ba解决gydF4y2Ba,gydF4y2Ba成熟gydF4y2Ba,gydF4y2BaCleanPricegydF4y2Ba,gydF4y2BaCouponRategydF4y2Ba这些工具必须是债券或者综合转换成债券。gydF4y2Ba

截至二八年四月三十日收盘的市场数据已下载并储存于以下数据档案(gydF4y2Baukdata20080430gydF4y2Ba),用以下命令加载到MATLAB®中:gydF4y2Ba

%加载数据gydF4y2Ba负载gydF4y2Baukdata20080430gydF4y2Ba将回购利率转换为等价的零息债券gydF4y2BaRepoCouponRate = repmat(0,大小(RepoRates));RepoPrice = bndprice(reportates, RepoCouponRate, RepoSettle, RepoMaturity);gydF4y2Ba%聚合数据gydF4y2Ba解决= [RepoSettle; BondSettle];成熟= [RepoMaturity; BondMaturity];CleanPrice = [RepoPrice; BondCleanPrice];CouponRate = [RepoCouponRate; BondCouponRate];工具=[结算到期清洁价格CouponRate];InstrumentPeriod = [repmat (0, 1); repmat(1) 2, 31日];CurveSettle = datenum (gydF4y2Ba30 - 4月- 2008 'gydF4y2Ba);gydF4y2Ba

尼尔森-西格尔模型与市场数据的拟合gydF4y2Ba

Nelson-Siegel模型提出瞬时正向曲线可以用以下方式建模:gydF4y2Ba

fgydF4y2Ba =gydF4y2Ba βgydF4y2Ba 0gydF4y2Ba +gydF4y2Ba βgydF4y2Ba 1gydF4y2Ba egydF4y2Ba -gydF4y2Ba 米gydF4y2Ba τgydF4y2Ba +gydF4y2Ba βgydF4y2Ba 2gydF4y2Ba egydF4y2Ba -gydF4y2Ba 米gydF4y2Ba τgydF4y2Ba 米gydF4y2Ba τgydF4y2Ba

这可以通过积分得到零曲线的方程(关于方程和推导的更多信息,参见[6]):gydF4y2Ba

年代gydF4y2Ba =gydF4y2Ba βgydF4y2Ba 0gydF4y2Ba +gydF4y2Ba (gydF4y2Ba βgydF4y2Ba 1gydF4y2Ba +gydF4y2Ba βgydF4y2Ba 2gydF4y2Ba )gydF4y2Ba τgydF4y2Ba 米gydF4y2Ba (gydF4y2Ba 1gydF4y2Ba -gydF4y2Ba egydF4y2Ba -gydF4y2Ba 米gydF4y2Ba τgydF4y2Ba )gydF4y2Ba -gydF4y2Ba βgydF4y2Ba 2gydF4y2Ba egydF4y2Ba -gydF4y2Ba 米gydF4y2Ba τgydF4y2Ba

参见[gydF4y2Ba1gydF4y2Ba]查阅更多资料。gydF4y2Ba

的gydF4y2BaIRFunctionCurvegydF4y2Ba对象提供了将尼尔森西格尔曲线与观察到的市场数据拟合的能力gydF4y2BafitNelsonSiegelgydF4y2Ba方法。通过调用优化工具箱™函数来进行拟合gydF4y2BalsqnonlingydF4y2Ba.gydF4y2Ba

的gydF4y2BafitNelsonSiegelgydF4y2Ba函数需要曲线的输入gydF4y2Ba类型gydF4y2Ba,曲线gydF4y2Ba解决gydF4y2Ba,以及仪器数据矩阵。gydF4y2Ba

可选输入参数,在name-value pair参数中指定,是:gydF4y2Ba

  • IRFitOptionsgydF4y2Ba结构:提供选择最小化哪个数量(价格、收益率或持续时间加权价格)和其他优化参数(例如,参数的上下限)的功能。gydF4y2Ba

  • 曲线gydF4y2Ba复合gydF4y2Ba而且gydF4y2Ba基础gydF4y2Ba(日计数公约)gydF4y2Ba

  • 额外的仪器参数,gydF4y2Ba期gydF4y2Ba,gydF4y2Ba基础gydF4y2Ba,gydF4y2BaFirstCouponDategydF4y2Ba,等等。gydF4y2Ba

NSModel = IRFunctionCurve.fitNelsonSiegel (gydF4y2Ba“零”gydF4y2BaCurveSettle,gydF4y2Ba...gydF4y2Ba仪器,gydF4y2Ba“InstrumentPeriod”gydF4y2Ba, InstrumentPeriod);gydF4y2Ba

符合Svensson模型gydF4y2Ba

一个与Nelson-Siegel模型非常相似的模型是Svensson模型,该模型增加了两个额外参数,以解释期限结构的更大灵活性。该模型提出,转发速率可以用以下形式建模:gydF4y2Ba

fgydF4y2Ba =gydF4y2Ba βgydF4y2Ba 0gydF4y2Ba +gydF4y2Ba βgydF4y2Ba 1gydF4y2Ba egydF4y2Ba -gydF4y2Ba 米gydF4y2Ba τgydF4y2Ba 1gydF4y2Ba +gydF4y2Ba βgydF4y2Ba 2gydF4y2Ba egydF4y2Ba -gydF4y2Ba 米gydF4y2Ba τgydF4y2Ba 1gydF4y2Ba 米gydF4y2Ba τgydF4y2Ba 1gydF4y2Ba +gydF4y2Ba βgydF4y2Ba 3.gydF4y2Ba egydF4y2Ba -gydF4y2Ba 米gydF4y2Ba τgydF4y2Ba 2gydF4y2Ba 米gydF4y2Ba τgydF4y2Ba 2gydF4y2Ba

如上所述,这可以积分得到零曲线的方程:gydF4y2Ba

年代gydF4y2Ba =gydF4y2Ba βgydF4y2Ba 0gydF4y2Ba +gydF4y2Ba βgydF4y2Ba 1gydF4y2Ba (gydF4y2Ba 1gydF4y2Ba -gydF4y2Ba egydF4y2Ba -gydF4y2Ba 米gydF4y2Ba τgydF4y2Ba 1gydF4y2Ba )gydF4y2Ba (gydF4y2Ba -gydF4y2Ba τgydF4y2Ba 1gydF4y2Ba 米gydF4y2Ba )gydF4y2Ba +gydF4y2Ba βgydF4y2Ba 2gydF4y2Ba (gydF4y2Ba (gydF4y2Ba 1gydF4y2Ba -gydF4y2Ba egydF4y2Ba -gydF4y2Ba 米gydF4y2Ba τgydF4y2Ba 1gydF4y2Ba )gydF4y2Ba τgydF4y2Ba 1gydF4y2Ba 米gydF4y2Ba -gydF4y2Ba egydF4y2Ba 米gydF4y2Ba τgydF4y2Ba 1gydF4y2Ba )gydF4y2Ba +gydF4y2Ba βgydF4y2Ba 3.gydF4y2Ba (gydF4y2Ba (gydF4y2Ba 1gydF4y2Ba -gydF4y2Ba egydF4y2Ba -gydF4y2Ba 米gydF4y2Ba τgydF4y2Ba 2gydF4y2Ba )gydF4y2Ba τgydF4y2Ba 2gydF4y2Ba 米gydF4y2Ba -gydF4y2Ba egydF4y2Ba 米gydF4y2Ba τgydF4y2Ba 2gydF4y2Ba )gydF4y2Ba

参见[gydF4y2Ba2gydF4y2Ba]查阅更多资料。gydF4y2Ba

对该模型进行参数拟合的方式与使用的Nelson-Siegel模型类似gydF4y2BafitSvenssongydF4y2Ba函数。gydF4y2Ba

SvenssonModel = IRFunctionCurve.fitSvensson (gydF4y2Ba“零”gydF4y2BaCurveSettle,gydF4y2Ba...gydF4y2Ba仪器,gydF4y2Ba“InstrumentPeriod”gydF4y2Ba, InstrumentPeriod);gydF4y2Ba

合适的平滑样条gydF4y2Ba

期限结构也可以用样条来建模,具体来说,一种建模期限结构的方法是用三次样条来表示正向曲线。为了确保样条足够光滑,对样条的曲率(二阶导数)施加一个惩罚:gydF4y2Ba

∑gydF4y2Ba 我gydF4y2Ba =gydF4y2Ba 1gydF4y2Ba NgydF4y2Ba [gydF4y2Ba PgydF4y2Ba 我gydF4y2Ba -gydF4y2Ba PgydF4y2Ba ˆgydF4y2Ba 我gydF4y2Ba (gydF4y2Ba fgydF4y2Ba )gydF4y2Ba DgydF4y2Ba 我gydF4y2Ba ]gydF4y2Ba 2gydF4y2Ba +gydF4y2Ba ∫gydF4y2Ba 0gydF4y2Ba 米gydF4y2Ba λgydF4y2Ba tgydF4y2Ba (gydF4y2Ba 米gydF4y2Ba )gydF4y2Ba [gydF4y2Ba fgydF4y2Ba ”gydF4y2Ba ”gydF4y2Ba (gydF4y2Ba 米gydF4y2Ba )gydF4y2Ba ]gydF4y2Ba 2gydF4y2Ba dgydF4y2Ba 米gydF4y2Ba

第一项是观察到的价格之差gydF4y2BaPgydF4y2Ba预测价格,gydF4y2BaP_hatgydF4y2Ba,(以债券的存续期加权,gydF4y2BaDgydF4y2Ba)对数据集中所有债券求和,第二项为惩罚项(其中gydF4y2BaλgydF4y2Ba是惩罚函数和吗gydF4y2BafgydF4y2Ba是花键)。gydF4y2Ba

参见[gydF4y2Ba3.gydF4y2Ba]、[gydF4y2Ba4gydF4y2Ba]、[gydF4y2Ba5gydF4y2Ba下面)。gydF4y2Ba

对于惩罚函数的规范有不同的建议gydF4y2BaλgydF4y2Ba.一种方法,由[提倡]gydF4y2Ba4gydF4y2Ba],目前由英国债务管理办公室使用,是以下形式的惩罚函数:gydF4y2Ba

lgydF4y2Ba ogydF4y2Ba ggydF4y2Ba (gydF4y2Ba λgydF4y2Ba (gydF4y2Ba 米gydF4y2Ba )gydF4y2Ba )gydF4y2Ba =gydF4y2Ba lgydF4y2Ba -gydF4y2Ba (gydF4y2Ba lgydF4y2Ba -gydF4y2Ba 年代gydF4y2Ba )gydF4y2Ba egydF4y2Ba -gydF4y2Ba 米gydF4y2Ba μgydF4y2Ba

的参数gydF4y2BalgydF4y2Ba,gydF4y2Ba年代gydF4y2Ba,gydF4y2BaμgydF4y2Ba通常根据历史数据进行估计。gydF4y2Ba

的gydF4y2BaIRFunctionCurvegydF4y2Ba对象可用于拟合带有使用该函数的罚函数的正向曲线的平滑样条表示gydF4y2BafitSmoothingSplinegydF4y2Ba.gydF4y2Ba

与上面的函数一样,必需的输入是agydF4y2BaCurveTypegydF4y2Ba,曲线gydF4y2Ba解决gydF4y2Ba,gydF4y2Ba仪器gydF4y2Ba矩阵和函数句柄(gydF4y2BaLambdafungydF4y2Ba),包含罚函数。gydF4y2Ba

可选参数类似gydF4y2BafitNelsonSiegelgydF4y2Ba而且gydF4y2BafitSvenssongydF4y2Ba.gydF4y2Ba

%选择的参数大致类似于下面的[4]。gydF4y2BaL = 9.2;S = 1;μ= 1;lambdafun = @(t) exp(L - (L- s)*exp(-t/mu));gydF4y2Ba%构造罚函数gydF4y2Bat = 0: .1:25;gydF4y2Ba构造数据来绘制惩罚函数gydF4y2Bay = lambdafun (t);图semilogy (t、y);标题(gydF4y2Ba“VRP方法的惩罚函数”gydF4y2Ba) ylabel (gydF4y2Ba“惩罚”gydF4y2Ba)包含(gydF4y2Ba“时间”gydF4y2Ba)gydF4y2Ba

图中包含一个axes对象。标题为罚金函数的轴线对象包含一个类型为line的对象。gydF4y2Ba

VRPModel = IRFunctionCurve.fitSmoothingSpline (gydF4y2Ba“前进”gydF4y2BaCurveSettle,gydF4y2Ba...gydF4y2Ba乐器,lambdafungydF4y2Ba“复合”gydF4y2Ba, 1gydF4y2Ba...gydF4y2Ba“InstrumentPeriod”gydF4y2Ba, InstrumentPeriod);gydF4y2Ba

使用拟合曲线和绘图结果gydF4y2Ba

一旦创建了一条曲线,就可以使用函数来提取远期利率、零利率和贴现因子。这条曲线也可以转换成agydF4y2BaRateSpecgydF4y2Ba结构使用gydF4y2BatoRateSpecgydF4y2Ba函数。的gydF4y2BaRateSpecgydF4y2Ba可以与金融工具工具箱™中的许多其他功能一起使用gydF4y2Ba

: PlottingDates = CurveSettle + 20:30 CurveSettle + 365 * 25;TimeToMaturity = yearfrac (CurveSettle PlottingDates);NSForwardRates = NSModel.getForwardRates (PlottingDates);SvenssonForwardRates = SvenssonModel.getForwardRates (PlottingDates);VRPForwardRates = VRPModel.getForwardRates (PlottingDates);图保存gydF4y2Ba在gydF4y2Ba情节(TimeToMaturity NSForwardRates,gydF4y2Ba“r”gydF4y2Ba)情节(TimeToMaturity SvenssonForwardRates,gydF4y2Ba‘g’gydF4y2Ba)情节(TimeToMaturity VRPForwardRates,gydF4y2Ba“b”gydF4y2Ba)标题(gydF4y2Ba“英国瞬时名义远期曲线”gydF4y2Ba)包含(gydF4y2Ba“几年”gydF4y2Ba)({传奇gydF4y2Ba“纳尔逊·西格尔”gydF4y2Ba,gydF4y2Ba“Svensson”gydF4y2Ba,gydF4y2Ba“与”gydF4y2Ba})gydF4y2Ba

图中包含一个axes对象。标题为UK的axis对象包含3个类型为line的对象。这些东西代表尼尔森·西格尔,斯文森,VRP。gydF4y2Ba

与此链接比较gydF4y2Ba

该链接提供了英国发布的衍生收益率曲线的实时查看gydF4y2Ba

https://www.bankofengland.co.ukgydF4y2Ba

参考书目gydF4y2Ba

本例基于以下论文和期刊文章:gydF4y2Ba

[1]纳尔逊,c.r.,西格尔,A.F.“收益率曲线的简约模型。”gydF4y2Ba商业杂志》上。gydF4y2Ba60,第473-89页,1987。gydF4y2Ba

[2] Svensson L.E.O.估算和解释远期利率:瑞典1992-4。国际货币基金组织,货币基金组织工作文件,1994/114,1994。gydF4y2Ba

[3]费雪,M,尼奇卡,D,泽沃斯,D。用平滑样条曲线拟合利率期限结构联邦储备系统理事会,联邦储备委员会工作文件,95-1,1995。gydF4y2Ba

[4]安德森,N;斯利斯,J。《英国实际和名义收益率曲线的新估计》gydF4y2Ba英格兰银行季刊。gydF4y2Ba1999年11月,384-92页。gydF4y2Ba

[5]御夫座,D。从券息债券价格中提取利率曲线的样条方法。联邦储备委员会工作文件,97-10,1997。gydF4y2Ba

[6]“零息收益率曲线:技术文档。”BIS文件第25号,2005年10月。gydF4y2Ba

[7]博尔德,d.j.,古斯巴,S。指数、多项式和傅立叶级数:加拿大银行更多的收益率曲线建模。工作文件02-29,加拿大银行,2002。gydF4y2Ba

[8]博尔德,d.j.,斯特雷里斯基,D。“加拿大银行的收益率曲线建模。”技术报告84,加拿大银行,1999年。gydF4y2Ba

相关的话题gydF4y2Ba