Beräkna avkastningen på en obligation

Obligationsvärdering och analys i R

Clifford Ang

Senior Vice President, Compass Lexecon

Hitta avkastningen med prövning och fel

  • För handlade obligationer kan vi härleda avkastningen
  • Om du känner till priset och obligationens kassaflöden kan du "gissa" avkastningen
  • Den "rätta" avkastningen gör att obligationspriset stämmer överens med nuvärdet av kassaflödena
Obligationsvärdering och analys i R

Iterera genom olika gissningar

  • Obligation med nominellt värde $100, kupongränta 5%, löptid 10 år och pris $92,64
  • Gissning 1: 5% → Pris är $100 (för högt)
  • Gissning 2: 7% → Pris är $85,95 (för lågt)
  • Gissning 3: 6% → Pris är $92,64 (korrekt)
Obligationsvärdering och analys i R

Automatisera processen

  • Prövning och fel är ineffektivt
  • Lyckligtvis kan vi använda funktionen uniroot() i R för att automatisera processen
Obligationsvärdering och analys i R

Skapa funktion med uniroot()

ytm <- function(cf) {
    uniroot(bval, c(0, 1), cf = cf)$root
}
  • Skapa funktionen ytm() med hjälp av uniroot()
  • Funktionen tar en modifierad kassaflödesvektor (cf) och använder en modifierad obligationsvärderingsfunktion (bval)
  • c(0,1) begränsar sökintervallet till en avkastning mellan 0 % och 100 %
Obligationsvärdering och analys i R

Modifierad kassaflödesvektor

cf <- c(-92.64, 5, 5, 5, 5, 5, 5, 5, 5, 5, 105)
  • Det första elementet är obligationspriset angivet som ett negativt tal
  • Från och med det andra elementet anges obligationens kassaflöden – kuponger plus nominellt värde
  • Samma obligation: pris är $-\$92.64$, nominellt värde är $\$100$, kupongränta 5 % och löptid 10 år
Obligationsvärdering och analys i R

Modifierad obligationsvärderingsfunktion

bval <- function(i, cf, t = seq(along = cf))  sum(cf / (1 + i)^t)
  • Vi behöver skapa en obligationsvärderingsfunktion bval() som använder den modifierade kassaflödesvektorn (cf)
  • Samma logik som vår funktion bondprc()
  • Skapa en tidsindikator (t)
  • Diskontera kassaflödet med räntan (i)
Obligationsvärdering och analys i R

Nu kör vi en övning!

Obligationsvärdering och analys i R

Preparing Video For Download...