ÎncepețiÎncepe gratuit

Calculează durata aproximativă a unei obligațiuni

O aproximare utilă a formulei duratei se numește durata aproximativă și este dată de $$(P(down) - P(up)) / (2 * P * \Delta y)$$

unde \(P\) este prețul obligațiunii, \(P(down)\) este prețul obligațiunii dacă randamentul scade, \(P(up)\) este prețul obligațiunii dacă randamentul crește, iar \(\Delta y\) este modificarea anticipată a randamentului.

Formula completă a duratei este mai complexă. Dacă ești curios, poți consulta capitolul „Fixed Income" din cartea mea ca referință pentru acea formulă.

În acest exercițiu, vei calcula durata aproximativă a unei obligațiuni cu valoare nominală de $100, rată a cuponului de 10%, scadență de 20 de ani, randament la scadență de 10% și o modificare anticipată a randamentului de 1%. Pentru acest calcul, folosește funcția bondprc() cu care ești deja familiarizat — aceasta a fost preîncărcată în spațiul de lucru.

Acest exercițiu face parte din cursul

Evaluarea și analiza obligațiunilor în R

Vezi cursul

Instrucțiuni pentru exercițiu

  • Folosește bondprc() pentru a calcula prețul curent al obligațiunii la un randament de 10%. Salvează rezultatul în px, apoi afișează px.
  • Apelează din nou bondprc() pentru a calcula prețul obligațiunii (px_up) dacă randamentul crește cu 1%.
  • Apelează bondprc() a treia oară pentru a calcula prețul obligațiunii (px_down) dacă randamentul scade cu 1%.
  • Folosește cele trei obiecte (px, px_up, px_down) pentru a calcula durata aproximativă, presupunând o modificare a randamentului de 1%.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Calculate bond price today
px <- bondprc(p = ___, r = ___, ttm = ___, y = ___)
px

# Calculate bond price if yields increase by 1%
px_up <- 
px_up

# Calculate bond price if yields decrease by 1%
px_down <- 
px_down

# Calculate approximate duration
duration <- (___ - ___) / (___ * ___ * ___)
duration
Editează și rulează codul