Pythonで学ぶ債券の評価と分析
Joshua Mayhew
Options Trader
年3%のクーポン、額面USD 100、利回り4%の3年債を考える:

【注意】クーポンは固定で変わらない!
この債券をゼロクーポン債の集合に分解して価格を出す:
年3%のクーポン、額面USD 100、利回り4%の3年債
前章の複利公式を用いる:
$ \text{1年ZCB価格: } \frac{3}{(1 + 0.04)^1} = 2.88$
$ \text{2年ZCB価格: } \ \frac{3}{(1 + 0.04)^2} = 2.77$
$ \text{3年ZCB価格: } \ \frac{103}{(1 + 0.04)^3} = 91.57$
$\text{クーポン債価格: } 2.88 + 2.77 + 91.57 = 97.22$
一般に、クーポン債の価格は次式:
$ Price = 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}$
年3%のクーポン、満期利回り4%の3年債を同様に考える:
import numpy_financial as npf
-npf.pv(rate=0.04, nper=3, pmt=3, fv=100)
97.22
pmtは正の値に設定。
関数の前にマイナス記号を付ける。
fvは103ではなく100に設定。
Pythonで学ぶ債券の評価と分析