計算債券殖利率

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

Joshua Mayhew

Options Trader

為何要計算殖利率

  • 到期殖利率表示你對投資的預期報酬
  • 有助於比較不同特性的債券
使用 Python 進行債券評價與分析

零息債殖利率公式

回想零息債的定價公式:

$PV = \frac{FV}{(1 + r)^n}$

可重整方程求得殖利率 $(r)$:

$FV = PV \times (1 + r)^n$

$ \frac{FV}{PV} = (1 + r)^n$

$ \sqrt[n]\frac{FV}{PV} = (1 + r)$

$ \sqrt[n]\frac{FV}{PV} -1 = r$

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

零息債殖利率範例

用先前同一檔零息債,反推殖利率:

  • 期限 3 年
  • 面額 USD 100
  • 價格 USD 90.19

 

此債券的殖利率是多少?

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

零息債殖利率計算

3 年期零息債,價格 USD 90.19,面額 USD 100:

$r = \sqrt[n]\frac{FV}{PV} -1$

ytm = (100 / 90.19) ** (1/3) - 1
print(ytm)
0.035

 

我們用 ytm 表示「到期殖利率」。

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

附息債有殖利率公式嗎?

附息債公式:

$ PV = \frac{C}{(1 + r)^1} + \frac{C}{(1 + r)^2} + ... +\frac{C}{(1 + r)^n} + \frac{P}{(1 + r)^n}$

$ = \sum_{i=1}^n \frac{C}{(1 + r)^i} + \frac{P}{(1 + r)^n}$

此方程無法直接以 $r$ 表示解出。

我們用試算法尋找 $r$。

這也是 npf.rate() 函式的作法。

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

附息債殖利率範例

回到先前的附息債,條件如下:

  • 到期 3 年
  • 年息 3%
  • 價格 USD 97.22

 

它的到期殖利率是多少?

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

附息債殖利率計算

3 年期附息債,年息 3%,價格 USD 97.22:

import numpy_financial as npf
npf.rate(nper=3, pmt=3, pv=-97.22, fv=100)
0.04

記得把 PV 設為負數。

因為買債券的價格是我們付出的現金流(負號)。

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

一起來練習吧!

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

Preparing Video For Download...