mcpField
F
fixed-income-sovereign

fixed-income-sovereign

github.com/joellewis数据与数据库218685 次安装15 周前更新
代码仓库

关于 fixed-income-sovereign

面向分析美国国债与利率的金融从业者,介绍主权固定收益估值和利率风险概念,并附计算示例与可运行脚本。范围不包括新兴市场债务等主权信用风险。

主要功能

  1. 01债券定价与收益率计算
  2. 02收益率曲线及即期利率引导
  3. 03久期、DV01 与凸性分析
  4. 04TIPS 与关键利率久期
  5. 05计算示例及验证脚本

适用场景

  1. 01按收益率估算债券价格
  2. 02评估利率变动对价格的影响
  3. 03分析曲线不同期限的敏感度
  4. 04运行示例并核对计算结果

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/joellewis/finance_skills --skill fixed-income-sovereign

安装后在 Claude Code 中输入/fixed-income-sovereign确认已加载。

附带文件scripts/fixed_income_sovereign.py

详细介绍

固定收益 — 主权债券

范围:美国国债和利率分析。本技能不涵盖主权信用风险——新兴市场债务、违约分析、国家风险利差。

核心概念

债券定价

债券价格是其未来现金流的现值:

P = sum(t=1 to n) [C / (1+y)^t] + F / (1+y)^n

其中,C = 每期票息,y = 每期到期收益率,F = 面值,n = 总期数。对于半年付息债券,将年票息除以 2,年收益率除以 2,并将年数乘以 2,得到 n。

到期收益率(YTM)

使债券定价方程成立的贴现率 y——也就是使债券市场价格等于所有未来现金流现值的单一利率。假设票息按 YTM 利率再投资。这是债券的标准收益率指标。

当前收益率

当前收益率 = 年票息 / 价格。这是一种简单的收入指标,不考虑资本利得/损失和货币的时间价值。

收益率曲线:即期利率、远期利率、平价曲线

即期曲线给出各期限的零息收益率。平价曲线给出债券以面值定价时对应的票息率。远期利率是根据即期利率推导出的隐含未来利率。这三种曲线包含等价信息,可以相互推导。

即期曲线的自举法

从最短期限开始,逐步向外推导,从平价收益率中提取即期(零息)利率。每一步都利用先前推导出的即期利率来求解下一个即期利率。

远期利率

根据即期利率推导出的两个未来日期之间的隐含利率:

f(t1,t2) = [(1+s_t2)^t2 / (1+s_t1)^t1]^(1/(t2-t1)) - 1

其中,s_t1 和 s_t2 分别是期限为 t1 和 t2 的即期利率。

久期(麦考利久期)

收到现金流所需时间的加权平均值,权重为各笔现金流现值占债券价格的比例:

D_mac = (1/P) × sum(t × CF_t / (1+y)^t)

以年为单位。期限越长、票息越低、收益率越低,久期越大。

修正久期

D_mod = D_mac / (1 + y/m)

其中,m = 每年的付息期数。用于估算收益率变动 1 个百分点时的价格百分比变化:dP/P ≈ -D_mod × dy。

美元久期(DV01)

收益率变动 1 个基点时的价格美元变动:

DV01 ≈ -D_mod × P × 0.0001

用于对冲——匹配 DV01 风险敞口,使投资组合免受平行利率变动的影响。

凸性

衡量价格与收益率关系的曲率(二阶导数):

C = (1/P) × sum(t(t+1) × CF_t / (1+y)^(t+2))

对于不含期权的债券,凸性始终为正——仅使用久期会高估损失、低估收益。

价格变动近似值

ΔP/P ≈ -D_mod × Δy + 0.5 × Convexity × (Δy)²

凸性项用于修正,在收益率变动较大时尤为重要。

TIPS(美国通胀保值国债)

本金随 CPI 调整。票息率固定,但按经通胀调整后的本金计算。实际收益率 = TIPS 收益率。盈亏平衡通胀率 = 名义美国国债收益率 - TIPS 实际收益率。TIPS 设有通缩下限,可在到期时保护面值。

关键利率久期

衡量对收益率曲线特定点(如 2 年期、5 年期、10 年期、30 年期)的敏感度。可用于分析非平行收益率曲线变动,例如变陡、变平或蝶式变动。各关键利率久期之和等于有效久期。

关键公式

公式表达式用途
债券价格P = sum C/(1+y)^t + F/(1+y)^n根据收益率计算价格
当期收益率年票息 / 价格简单的收入指标
远期利率f(t1,t2) = [(1+s_t2)^t2 / (1+s_t1)^t1]^(1/(t2-t1)) - 1隐含的未来利率
麦考利久期(1/P) × sum(t × CF_t / (1+y)^t)现金流加权平均时间
修正久期D_mac / (1 + y/m)价格对收益率的敏感度(百分比)
DV01D_mod × P × 0.0001利率每变动 1 个基点引起的价格变动金额
凸性(1/P) × sum(t(t+1) × CF_t / (1+y)^(t+2))价格—收益率曲线的曲率
价格变动ΔP/P ≈ -D_mod×Δy + 0.5×Convexity×(Δy)²估算利率变动对价格的影响

计算示例

示例 1:计算一只 5 年期、票息率为 4% 的半年付息债券在到期收益率为 5% 时的价格

已知: 面值 = $1,000,票息率 = 4%(半年付息),到期收益率 = 5%,期限 = 5 年 计算: 债券价格 解答: 半年票息 = $1,000 × 4% / 2 = $20 半年收益率 = 5% / 2 = 2.5% 期数 = 5 × 2 = 10 P = $20 × [(1 - (1.025)^(-10)) / 0.025] + $1,000 / (1.025)^10 P = $20 × 8.7521 + $1,000 × 0.7812 P = $175.04 + $781.20 = $956.24

由于票息率(4%)低于市场收益率(5%),该债券以折价交易($956.24 < $1,000)。

示例 2:修正久期和价格变动估算

已知: 一只债券的麦考利久期 = 4.5 年,到期收益率 = 5%(半年付息),价格 = $956.24,凸性 = 22.5 计算: 利率上升 50 个基点时的估算价格变动 解答: D_mod = 4.5 / (1 + 0.05/2) = 4.5 / 1.025 = 4.39 年 ΔP/P ≈ -4.39 × 0.005 + 0.5 × 22.5 × (0.005)² ΔP/P ≈ -0.02195 + 0.000281 = -0.02167 = -2.167% ΔP ≈ -2.167% × $956.24 = -$20.72 新价格 ≈ $956.24 - $20.72 = $935.52

仅使用久期会估算为 -2.195%;凸性修正使估算亏损减少约 3 个基点。

常见误区

  • 混淆麦考利久期和修正久期——麦考利久期以年为单位,修正久期表示价格敏感度
  • 利率大幅变动时忽略凸性——仅使用久期会高估亏损、低估收益
  • 日计数惯例(30/360 与实际/实际)——美国国债采用实际/实际,公司债采用 30/360
  • 混淆净价和全价(应计利息)——报价不含应计利息,但结算时必须支付这部分利息

交叉引用

  • time-value-of-money(核心插件):折现和现值基础
  • fixed-income-corporate(财富管理插件):相对于主权债收益率曲线的信用利差
  • fixed-income-municipal(财富管理插件):市政债与美国国债收益率比率
  • asset-allocation(财富管理插件):债券作为资产类别在投资组合构建中的作用

运行脚本

uv run scripts/fixed_income_sovereign.py            # run the demo (uses PEP 723 inline deps)
uv run scripts/fixed_income_sovereign.py --verify   # check demo outputs against the worked examples (exit 1 on mismatch)
python3 scripts/fixed_income_sovereign.py            # alternative (requires: pip install numpy scipy)

演示会输出以上介绍的计算结果;其数值与本技能中的计算示例一致。运行 --help 可查看类和函数列表。若要以编程方式使用,请导入模块而不是运行脚本——仅当运行 python fixed_income_sovereign.py 时才会执行演示。

评论

支持 Markdown