Durată

Evaluarea și analiza obligațiunilor în Python

Joshua Mayhew

Options Trader

Contextul duratei

  • Prețurile și randamentele evoluează invers
  • Nu știm cât de sensibilă este o obligațiune la ratele dobânzii
  • Durata măsoară sensibilitatea la rata dobânzii
Evaluarea și analiza obligațiunilor în Python

Exemplu motivațional

  • Considerăm o obligațiune pe 5 ani și una pe 10 ani, ambele cu cupon de 5%
  • La un randament de 5%, ambele au un preț de 100 USD:
-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
Evaluarea și analiza obligațiunilor în Python

Exemplu motivațional

Dacă ratele dobânzii cresc la 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
  • Obligațiunea pe 5 ani a pierdut 4,21% din valoare, iar cea pe 10 ani a pierdut 7,36%

  • Obligațiunea pe 10 ani a fost mai sensibilă la variațiile ratei dobânzii

Evaluarea și analiza obligațiunilor în Python

Ce este durata?

  • Durata este variația procentuală a prețului la o modificare de 1% a randamentelor.
  • Durată mai mare = risc mai mare al ratei dobânzii
  • Utilizată de obicei pentru:
    • Măsurarea riscului ratei dobânzii
    • Acoperirea riscului ratei dobânzii
    • Estimarea profitului și pierderii la variații ale ratelor dobânzii
Evaluarea și analiza obligațiunilor în Python

Calculul duratei

Vom folosi o formulă simplificată pentru durată:

 

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

 

  • $P_{down}$ = Prețul obligațiunii la randament cu 1% mai mic
  • $P_{up}$ = Prețul obligațiunii la randament cu 1% mai mare
  • $P$ = Prețul obligațiunii la randamentul curent
  • $\Delta y$ = Variația randamentului (vom folosi 1%)
Evaluarea și analiza obligațiunilor în Python

Exemplu: durată

Obligațiune 10 ani, cupon 5% anual, randament 4%, care este durata?

${ 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

O variație de 1% a ratelor dobânzii determină o modificare de 7,74% a prețului obligațiunii.

Evaluarea și analiza obligațiunilor în Python

Rezumat

  • Obligațiunile pot reacționa diferit la aceeași variație a randamentelor
  • Durata reprezintă variația procentuală a prețului unei obligațiuni la o modificare de 1% a randamentelor
  • Durata măsoară sensibilitatea la rata dobânzii
Evaluarea și analiza obligațiunilor în Python

Să exersăm!

Evaluarea și analiza obligațiunilor în Python

Preparing Video For Download...