存續期間

使用 Python 進行債券評價與分析

Joshua Mayhew

Options Trader

存續期間的背景

  • 價格與殖利率反向變動
  • 我們不知道債券對利率有多敏感
  • 存續期間量化利率敏感度
使用 Python 進行債券評價與分析

動機範例

  • 取 5 年與 10 年債券,票息皆為 5%
  • 在 5% 殖利率下,兩者價格皆為 USD 100:
-npf.pv(rate=0.05, nper=5, pmt=5, fv=100)
-npf.pv(rate=0.05, nper=10, pmt=5, fv=100)
100.00
100.00
使用 Python 進行債券評價與分析

動機範例

若利率升至 6%:

-npf.pv(rate=0.06, nper=5, pmt=5, fv=100)
-npf.pv(rate=0.06, nper=10, pmt=5, fv=100)
95.79
92.64
  • 5 年債下跌 4.21%,10 年債下跌 7.36%

  • 10 年債對利率變動更敏感

使用 Python 進行債券評價與分析

什麼是存續期間?

  • 存續期間是殖利率(利率)變動 1% 時,價格的百分比變化。
  • 存續期間越高,利率風險越高
  • 常見用途:
    • 衡量利率風險
    • 對沖利率風險
    • 預估利率變動下的損益
使用 Python 進行債券評價與分析

計算存續期間

我們將使用簡化公式計算存續期間:

${\large Duration = \frac{P_{down}\ -\ P_{up} }{2\ \times\ P\ \times\ \Delta y}}$

  • $P_{down}$ = 殖利率低 1% 時的債券價格
  • $P_{up}$ = 殖利率高 1% 時的債券價格
  • $P$ = 目前殖利率下的債券價格
  • $\Delta y$ = 殖利率變動(此處用 1%)
使用 Python 進行債券評價與分析

存續期間範例

10 年期債券,年票息 5%,到期殖利率 4%,其存續期間為何?

${ Duration = \frac{P_{down}\ -\ P_{up} }{2\ \times\ P\ \times\ \Delta y}}$

price = -npf.pv(rate=0.05, nper=10, pmt=5, fv=100)

price_up = -npf.pv(rate=0.06, nper=10, pmt=5, fv=100) price_down = -npf.pv(rate=0.04, nper=10, pmt=5, fv=100)
duration = (price_down - price_up) / (2 * price * 0.01) print(duration)
7.74

利率變動 1% 會使債券價格變動 7.74%。

使用 Python 進行債券評價與分析

重點整理

  • 同樣的殖利率變動,不同債券反應可能不同
  • 存續期間是殖利率變動 1% 時,債券價格的百分比變化
  • 存續期間量化利率敏感度
使用 Python 進行債券評價與分析

一起來練習吧!

使用 Python 進行債券評價與分析

Preparing Video For Download...