Odhad výnosu dluhopisu

Oceňování a analýza dluhopisů v R

Clifford Ang

Senior Vice President, Compass Lexecon

Hledání výnosu metodou pokus-omyl

  • U obchodovaných dluhopisů lze výnos odvodit
  • Pokud znáte cenu a peněžní toky dluhopisu, lze výnos odhadnout pokusem
  • Správný výnos vyrovná cenu dluhopisu se současnou hodnotou jeho peněžních toků
Oceňování a analýza dluhopisů v R

Iterace přes různé odhady

  • Dluhopis s nominální hodnotou $100, kupónem 5 %, splatností 10 let a cenou $92,64
    1. odhad: 5 % → cena $100 (příliš vysoká)
    1. odhad: 7 % → cena $85,95 (příliš nízká)
    1. odhad: 6 % → cena $92,64 (správně)
Oceňování a analýza dluhopisů v R

Automatizace procesu

  • Metoda pokus-omyl je neefektivní
  • Proces lze automatizovat pomocí funkce uniroot() v R
Oceňování a analýza dluhopisů v R

Vytvoření funkce pomocí uniroot()

ytm <- function(cf) {
    uniroot(bval, c(0, 1), cf = cf)$root
}
  • Vytvoření funkce ytm() pomocí uniroot()
  • Funkce přijímá upravený vektor peněžních toků (cf) a využívá upravenou funkci bval
  • c(0,1) omezuje hledaný interval výnosu na 0 % až 100 %
Oceňování a analýza dluhopisů v R

Upravený vektor peněžních toků

cf <- c(-92.64, 5, 5, 5, 5, 5, 5, 5, 5, 5, 105)
  • První prvek je cena dluhopisu zadaná jako záporné číslo
  • Další prvky jsou peněžní toky dluhopisu – kupóny a nominální hodnota
  • Stejný dluhopis: cena $-\$92.64$, nominální hodnota $\$100$, kupón 5 %, splatnost 10 let
Oceňování a analýza dluhopisů v R

Upravená funkce pro ocenění dluhopisu

bval <- function(i, cf, t = seq(along = cf))  sum(cf / (1 + i)^t)
  • Je třeba vytvořit funkci bval() pro ocenění dluhopisu, která využívá upravený vektor peněžních toků (cf)
  • Stejná logika jako funkce bondprc()
  • Vytvoření časového indikátoru (t)
  • Diskontování peněžních toků pomocí úrokové sazby (i)
Oceňování a analýza dluhopisů v R

Pojďme procvičovat!

Oceňování a analýza dluhopisů v R

Preparing Video For Download...