Wandle deinen Code in eine Anleihe-Bewertungsfunktion um
In den vorherigen Übungen bist du Schritt für Schritt durchgegangen, wie man den Wert einer Anleihe berechnet. Diese vielen Schritte für viele Anleihen immer wieder auszuführen, ist jedoch mühsam. Zum Glück kannst du eine Funktion erstellen, die dieselben Berechnungen wiederholt für verschiedene Anleihen durchführt.
Die Funktion, die du erstellst, muss flexibel sein, damit du die wichtigsten Merkmale der Anleihe eingeben kannst. In Bezug auf unser vorheriges Beispiel soll die Funktion den Nennwert der Anleihe, den Kuponzinssatz, die Restlaufzeit und die Rendite verarbeiten können.
In dieser Übung erstellst du die Funktion bondprc, die diese vier Eingaben nutzt, um den Wert einer Anleihe zu berechnen. Zur Erinnerung: Eine Funktion erstellst du mit function(input 1, input 2, ...) { [lines of code] }.
Diese Übung ist Teil des Kurses
Anleihebewertung und -analyse in R
Anleitung zur Übung
- In deinem Workspace wurde eine teilweise aufgebaute Funktion
bondprcerzeugt. Vervollständige die Funktion, indem du denfunction()-Aufruf konstruierst und die Namen von vier Eingaben angibst:pfür den Nennwert (par value),rfür den Kuponzinssatz (coupon rate),ttmfür die Restlaufzeit (time to maturity) undyfür die Rendite (yield). - Überprüfe, dass die Funktion
bondprcuns einen Preis von 95,79 \( liefert für den Wert einer Anleihe mit 100 \) Nennwert, 5 % Kupon, 5 Jahren Restlaufzeit und 6 % Rendite bis zur Fälligkeit.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Create function
bondprc <- ___(___, ___, ___, ___) {
cf <- c(rep(p * r, ttm - 1), p * (1 + r))
cf <- data.frame(cf)
cf$t <- as.numeric(rownames(cf))
cf$pv_factor <- 1 / (1 + y)^cf$t
cf$pv <- cf$cf * cf$pv_factor
sum(cf$pv)
}
# Verify prior result
bondprc(___, ___, ___, ___)