专栏首页王的机器Python 进阶视频课 - 12. Nelson-Siegel 构建债券收益率曲线

Python 进阶视频课 - 12. Nelson-Siegel 构建债券收益率曲线

这是 Python 进阶课的第十二节 - 负油价和负利率模型,进阶课的目录如下:

  1. NumPy 上
  2. NumPy 下
  3. Pandas 上
  4. Pandas 下
  5. SciPy 上
  6. SciPy 下
  7. Pandas 时间序列
  8. Pandas 高频数据采样
  9. 默顿模型计量经济资本
  10. LSMC 定价美式和百慕大期权
  11. 负油价和负利率模型

之前基础版的 11 节的目录如下:

  1. 编程概览
  2. 元素型数据
  3. 容器型数据
  4. 流程控制:条件-循环-异常处理
  5. 函数上:低阶函数
  6. 函数下:高阶函数
  7. 类和对象:封装-继承-多态-组合
  8. 字符串专场:格式化和正则化
  9. 解析表达式:简约也简单
  10. 生成器和迭代器:简约不简单
  11. 装饰器:高端不简单

在固定收益 (fixed-income) 世界中,收益率曲线毫无疑问是最重要的概念。它表示给定发行人和给定时间点,投资收益率 (yield) 和期限 (tenor) 之间的关系。市场中没有单一的收益率曲线,在不同的时间点 (time),对不同的货币 (currency),对不同的发行人 (issuer) 和不同的信贷水平 (rating) 有一系列不同的收益率曲线。

本次课程目录如下:

1. 基本概念

  • 收益率曲线 101
  • 债券 101

2. Nelson Siegel 模型

  • 瞬时远期利率
  • 即期利率
  • Svensson 模型

3. Nelson Siegel 实现

  • 数据处理
  • 模型优化
  • 结果分析

当我们谈论收益曲线模型时,有两种情况:

  1. 在给定时间点的收益率曲线的形式 (at a point of time)
  2. 收益率曲线随时间变化的动态 (through time)

首先 NS 模型制定了瞬时远期利率(instantaneous forward rates)的形式:

该模型有四个参数 β0, β1, β2, λ,其中 τ = T - t 是到期年限,λ > 0。

瞬时远期利率 f(t, T) 里面有三项:

  • 第一项 β0 是当 τ 趋近无穷大时的远期利率,因此 β0= f(∞)。
  • 第二项是个单调函数,当 β1> 0 时递减,当 β1 < 0 时递增。
  • 第三项是个非单调函数,可以产生 hump。

当 τ 趋近零时,第二项趋近于 β1,第三项趋近于 0,因此 f(0) = β0 + β1。

从上图这样容易看出:

  • β0 的因子载荷是常数,对于对所有期限利率的影响是相同的,因此 β0 可控制利率水平(level),它的变动会使得收益率曲线发生水平上下移动。
  • β1 的因子载荷是单调递减,从1 很快的衰减到 0,这表明 β1 对短端利率的影响较大,因此 β1 可控制曲线斜率(slope),影响着利率曲线的斜率程度。
  • β2 的因子载荷先增后减,从 0 增到 1 再减到 0,这表明 β2 对利率曲线的短端和长端影响较弱,对中端的影响较大,因此 β2 控制曲线曲率(curvature)。
  • τ 是 β1 和 β2 的因子载荷的衰减速度,该值越大衰减越快。

核心代码如下:

拟合结果如下:

对比债券市场和模型价格:

对比债券市场和模型收益率:

本节内容绝对硬核,就等你来学!

付费用户(付 1 赠 1)可以获得:

  • 观看课程视频 (98 分钟)
  • Python 代码 (Jupyter Notebook)

Jupyter Notebook

本文分享自微信公众号 - 王的机器(MeanMachine1031),作者:王圣元

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-04-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Python 进阶视频课 - 15. 量化交易之向量化回测

    这是 Python 进阶课的第十五节 - 量化交易之向量化回测 ,进阶课的目录如下:

    用户5753894
  • R语言中的Nelson-Siegel模型在汇率预测的应用

    这篇文章的目的是指导读者逐步使用R编程语言实现Nelson-Siegel模型的步骤。您可能已经知道,估计利率期限结构是任何资产定价的关键,因此对投资者和政策制定...

    拓端
  • 债券收益率曲线构建

    在构建掉期曲线(swap curve)时,每个标准年限都对应着一个市场报价,这样我们通常可以完美拟合出市场上它们的价格,但在构建债券曲线(bond curve)...

    用户5753894
  • R语言和QuantLib中Nelson-Siegel模型收益曲线建模分析

    Nelson-Siegel- [Svensson]模型是拟合收益曲线的常用方法。它的优点是其参数的经济可解释性,被银行广泛使用。但它不一定在所有情况下都有效:模...

    拓端
  • Python 可视化视频课 - 1. Matplotlib 上

    本节开始一个全新的系列,是整套 Python 第三阶段的课。我把整套知识体系分成四个模块:

    用户5753894
  • Python 进阶视频课 - 14. FR007 利率掉期定价和曲线拔靴

    这是 Python 进阶课的第十四节 - FR007 利率掉期定价和曲线拔靴,进阶课的目录如下:

    用户5753894
  • Python 可视化视频课 - 4. Seaborn 中

    统计分析就是去理解一个数据集中变量之间的关系,以及这些关系如何受到其他变量的影响。Seaborn 的主要用处就是可视化这个过程。当数据以恰当的方式展示出来时,读...

    用户5753894
  • R语言和QuantLib中Nelson-Siegel模型收益曲线建模分析

    Nelson-Siegel- [Svensson]模型是拟合收益曲线的常用方法。可以用其参数的经济可解释性来解释其受欢迎程度,但这很可能是因为欧洲中央银行使用了...

    拓端
  • Python 可视化视频课 - 3. Seaborn 上

    Seaborn 是基于 matplotlib 开发而用于统计可视化的高阶工具包。它可无缝相接的在 Pandas 的 DataFrame 上直接画图,而且代码量不...

    用户5753894
  • R语言中的广义线性模型(GLM)和广义相加模型(GAM):多元(平滑)回归分析保险资金投资组合信用风险敞口

    我不能在广义线性模型中使用双变量样条,但是考虑到广义可加模型(现在绝对不是可加模型),它确实可以工作。更准确地说,投资组合的分布是这两个协变量的函数,如下所示

    拓端
  • sas神经网络:构建人工神经网络模型来识别垃圾邮件

    现实世界中的一些业务应用示例包括图像处理,医疗诊断,金融服务和欺诈检测。此样本说明如何使用SAS®In-Memory Statistics中的NEURAL语句来...

    拓端
  • sas神经网络:构建人工神经网络模型来识别垃圾邮件

    现实世界中的一些业务应用示例包括图像处理,医疗诊断,金融服务和欺诈检测。此样本说明如何使用SAS®In-Memory Statistics中的NEURAL语句来...

    拓端
  • 【Matlab量化投资】基于神经网络的利率债16国开10收益率预测模型

    以往大家接触的量化投资与机器学习在股票和期货上运用的较多,然而大家却忽略了一个重要的金融市场,那就是债券市场。今天小编就告诉大家机器学习在债券市场上的运用。在机...

    量化投资与机器学习微信公众号
  • 译文 | 量化投资教程:投资组合优化与R实践

    本文由CDA作者库成员HarryZhu翻译,并授权发布。 CDA作者库凝聚原创力量,只做更有价值的分享。 ? Harry Zhu,擅长用Python和R进行数据...

    CDA数据分析师
  • 4.3债券估值

    discount factor:就是用来把一个FV给折现的factor,d(t), 代表年份

    rocket
  • 【译】走进Two Sigma,科学家帮你挑选股票

    大数据文摘
  • 年收入100万以内的家庭理财心得01:理念篇

    小时候经常听到这样几句话,“钱是世界上最肮脏的,千人摸万人拿!”“要过上好日子,必须要学会节俭持家,省着花钱!“”财富是靠劳动的双手创造出来,劳动使人致富!”“...

    用户2559057
  • R语言使用随机技术差分进化算法优化的Nelson

    在本教程中,我们将研究如何将Nelson-Siegel-Svensson(NSS)模型拟合到数据。由于我们将使用随机技术进行优化,因此我们应该重新运行几次。变量...

    拓端
  • 盘一盘 Python 系列 3 - SciPy

    SciPy 是 Python 里处理科学计算 (scientific computing) 的包,使用它遇到问题可访问它的官网 (https://www.sci...

    用户5753894

扫码关注云+社区

领取腾讯云代金券