← 返回模块
1.3.1.2beta 可读 · 未来付费校验通过内容版本 2026-05-25

债券定价与到期收益率

1.3.1 · 债券基础 · 金融与量化投资

上海某 保险资管 固收交易台周二开盘,5 年期国债(CGB)二级买盘报「估值 -2bp」,卖盘挂「估值 +1bp」。所谓「估值」,是 中债估值中心 当日发布的官方到期收益率(yield to maturity, YTM)。同事问你:「估值 -2bp 是贵还是便宜?」要回答这个问题,你得先把现金流折现到价格、再从价格反解出 YTM——这两步是本课的全部内容。

把现金流折成价格

上一课里你已经把一张普通债券拆成「票息流 + 到期面值」。给定一个每期折现率 yy,价格就是把这些现金流逐期贴回今天:

P=t=1NC(1+y)t+F(1+y)NP = \sum_{t=1}^{N} \frac{C}{(1+y)^t} + \frac{F}{(1+y)^N}

其中 CC 为每期票息,FF 为面值(par value),NN 为总期数,yy 为每期折现率。CN 实务里多数 CGB 按年付息,所以 NN 就是年数;公司债 常见年付。零息债券(zero-coupon bond)是边界情况——无期间票息,公式里 C=0C = 0,价格退化为 F/(1+y)NF / (1+y)^N

把这套公式用在 5Y、1,000面值、半年付息、年化票息率41,000 面值、半年付息、年化票息率 4% 的债券上(每期票息 = 20,共 N=10N = 10 期),下面的 Markdown 表给出三个不同 YTM 下的价格:

情境每期票息率每期 YTM计算价格状态
12.0%1.5%$1,046.11溢价(premium)
22.0%2.0%$1,000.00平价(par)
32.0%2.5%$956.24折价(discount)

定性规律就一句话:票息率 > YTM → 溢价;票息率 = YTM → 平价;票息率 < YTM → 折价。直觉是这样的:投资者最终要赚到的是 YTM,如果票息已经付得比 YTM 高,那买入时就得多付一些(溢价)把超额票息「找回去」;反过来则要折价补偿。CN 端注脚:多数 CGB 按年付息,上表沿用合约的半年付参照以保持与 US 端字节一致;实际定价 CGB 替换为年口径即可。

反着来:从市场价反解 YTM

二级市场看到的是「价」,不是「率」。给定一个观察到的市场价格 PmarketP_{\text{market}},到期收益率(yield to maturity, YTM)是让现金流贴现总和恰好等于市价的那个唯一折现率:

Pmarket=t=1NC(1+yYTM)t+F(1+yYTM)NP_{\text{market}} = \sum_{t=1}^{N} \frac{C}{(1+y_{\text{YTM}})^t} + \frac{F}{(1+y_{\text{YTM}})^N}

对于一张 NN 期带息债,这等价于一个 NN 次多项式方程——没有解析解,只能数值求解。实务里就两条路:(a) Newton-Raphson 迭代,5 步以内收敛到 1bp;(b) 二分法,慢一点但永远不发散。中债估值中心的 YTM 内部就是这么算出来的。

Formula Explorer

coupon / (1+y)**t + face / (1+y)**N

yy 在 1%–10% 之间拖动,看价格如何随 yy 单调递减——这就是 price-yield 关系。两个性质先记下来,后续模块 1.3.2 才会量化:

  1. ​单调性​​:价格是 yy 的严格递减函数。原理:每个折现因子 (1+y)t(1+y)^{-t} 都随 yy 递减,求和也递减。这一性质支撑后续的久期(duration)。
  2. ​凸性​​:价格曲线是凸的(二阶导数为正)。直觉:YTM 上升 100bp 造成的价格下跌,比 YTM 下降 100bp 造成的价格上涨要小一些。这一性质对应凸性(convexity)。

净价、全价与应计利息

券商系统里同一张债券会显示三个数字:净价、全价、应计利息(accrued interest)。它们的关系一行就能说清:

AI=C×days since last coupondays in coupon period\text{AI} = C \times \frac{\text{days since last coupon}}{\text{days in coupon period}}

其中分子是「上次付息日到结算日之间的天数」,分母是「整个计息区间天数」,按照债券约定的日计数惯例(day-count convention)取值。全价 = 净价 + 应计利息。报价时一般给净价(卖方剥掉应计),但买方实际结算的资金是全价。

CN 市场两套主要日计数惯例并存:

  • ​国债(CGB)、政策性金融债(国开债)​​:实际/实际(Actual/Actual),按真实自然日计数。
  • ​多数公司债​​:30/360(具体多用 30E/360 欧式惯例),每月按 30 天、每年按 360 天近似。

举例:¥1,000 面值、票息 4% 年付的 CGB,上次付息 1 月 1 日,结算 7 月 1 日。Actual/Actual 下应计 = ¥40 × 181/365 ≈ ¥19.84;换成 30/360 则应计 = ¥40 × 180/360 = ¥20.00。CN 学生最容易忽略的就是 CGB 与 公司债 用不同日计数,结算盘的应计口径必须查清楚。

零售 A 股账户最常接触应计的场景是 国债逆回购(GC001/GC007 在 SSE 上挂牌)和 可转债——后者在交易所行情里直接显示全价。

中债估值中心的一行样例(仅文字示意)可以帮你把口径串起来:

字段数值
净价(clean price)¥100.1234
应计利息(accrued interest)¥0.7867
全价(dirty price)¥100.9101
中债估值 YTM2.7350%

这是 保险资管 每日盯市 CGB 头寸的参照口径。

YTM 的三条隐含假设

把 YTM 当作「持有到期能赚的年化收益率」是入门最常见的误解。YTM 之所以是干净的单一折现率,背后压了三条假设:

  1. ​持有到期(hold to maturity)​​:中途卖出会按当时的市价结算,与 YTM 无关。
  2. ​零违约(no default)​​:发行人按合约支付所有票息和本金。CGB 视同零违约;信用债则需要把违约概率单独建模。
  3. ​票息按 YTM 再投资(reinvestment at YTM)​​:每次收到的票息能以 YTM 这个利率再投出去——但实际利率环境在 5 年里通常会变。

实务里 银行金融市场部 把 CGB 持仓按 中债估值 YTM 逐日盯市,但持有到期实际兑现的收益率(realized yield)会与 YTM 偏离,差值等于实际再投资利率与 YTM 假设之差。如何对冲这一偏离,是模块 1.3.2 久期(duration)的核心。

练习

Exercise

一张 3 年期债券,年付票息 6%,面值 1,000。当前市场价格 974.69。(a) 写出求 YTM 的现值方程。(b) 通过直接代入验证 YTM = 7%。(c) 这只债券是溢价、平价还是折价?这与你求得的 YTM 一致吗?

提示
把 3 期票息和到期面值贴回今天,让贴现总和等于 974.69,未知数是 YTM;每期票息 = 1000 × 6%。
提示
把 y = 0.07 代回方程:60/1.07 + 60/1.07² + 1060/1.07³,三项相加看是否等于市价;票息率 vs YTM 的大小决定溢价/平价/折价。

通往下一课

到这里你能在给定 YTM 下算出债价、能从市价反解 YTM、并区分净价/全价/应计利息。下一课把视角从一张债扩到一条曲线:同一信用品质下不同期限债券对应不同 YTM,沿期限轴串起来就是收益率曲线(yield curve)。CN 端基准是 中债国债收益率曲线,10Y CGB 是宏观评论最常引用的无风险参照。下一课从曲线三种形状讲起,引入即期、远期与 bootstrapping。