这篇文章的目的是指导读者逐步使用R编程语言实现Nelson-Siegel模型的步骤。您可能已经知道,估计利率期限结构是任何资产定价的关键,因此对投资者和政策制定者起着重要的作用。想法是使一条连续曲线适合现有数据。就是说,给定可获取的利率和相应的到期日(通过彭博社或任何其他数据提供商),可以使用Nelson-Siegel方法得出利率的期限结构。
在开始执行模型之前,让我们回顾一下基础知识。
Nelson-Siegel零息债券的到期收益率:
零息债券价格:
优化问题:
这个想法是两个价格应该相等。因此,我们想找到使两个价格之间的平方差平方和最小的Nelson-Siegel因素。
并
使用50年和1个月的YTM。
可以用50年的YTM来近似。
可以通过50年期和1个月YTM之间的差异来近似估算。
此时获得完美契合的机会非常渺茫。必须重复步骤3和4调整模型。进一步来说:
现在,我们有了Nelson-Siegel因子,可以估算出收益率曲线:
下图以红色显示了所获得的LIBOR收益率曲线。彭博LIBOR / OIS汇率以绿色显示。
尽管曲线可以很好地拟合数据点,但是我们可以看到拟合并不完美。Nelson-Siegel模型的替代方案是Svensson模型,该模型增加了两个参数以实现更好的拟合。
Svensson模型–零票息收益率:
实施Svensson模型的步骤与实施Nelson-Siegel模型的步骤相同。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。