Оцінювання та аналіз облігацій у Python
Joshua Mayhew
Options Trader
-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
Якщо ставки зростуть до 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-річна облігація була більш чутливою до змін ставок
Скористаємось спрощеною формулою тривалості:
${\large Duration = \frac{P_{down}\ -\ P_{up} }{2\ \times\ P\ \times\ \Delta y}}$
Облігація на 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