Eine Funktion zur Bewertung einer Leibrente
Cynthias Praktikumsbetreuer hat nicht viel Erfahrung mit R. Er bittet sie, eine R-Funktion zu schreiben, die den erwarteten Barwert (EPV) einer (zeitlich unbegrenzten) vorschüssigen Leibrente auf \((x)\) für einen gegebenen konstanten Zinssatz \(i\) und eine Sterbetafel berechnet.
Da die Leistung konstant 1 EUR beträgt, muss sie in den Berechnungen nicht explizit berücksichtigt werden.
Diese Übung ist Teil des Kurses
<Kurs>Bewertung von Lebensversicherungsprodukten in R</Kurs>Übungsanweisungen
- Schreib eine Funktion
life_annuity_due(), die den EPV einer zeitlich unbegrenzten vorschüssigen Leibrente für die Eingabeargumenteage, Zinssatziundlife_tableberechnet. - Wende
life_annuity_due()an, um den EPV einer vorschüssigen Leibrente für (20) bei 2 % zu berechnen. Verwende die belgische Periodensterbetafel von 1999 für Frauen, die alslife_tablevorab geladen ist. - Finde heraus, wie sich der EPV ändert, wenn der Zinssatz auf 5 % steigt (bei gleichbleibendem Alter 20). Und was passiert, wenn das Alter auf 65 steigt (bei gleichbleibendem Zinssatz von 2 %?)
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Function to compute the EPV of a whole life annuity due for a given age, interest rate i and life table
life_annuity_due <- function(age, i, life_table) {
px <- ___
kpx <- c(___, ___(px[(___):length(px)]))
discount_factors <- (___) ^ - (0:(___))
sum(discount_factors * kpx)
}
# EPV of a whole life annuity due for (20) at interest rate 2% using life_table
life_annuity_due(___, ___, ___)
# EPV of a whole life annuity due for (20) at interest rate 5% and for (65) at interest rate 2% using life_table
life_annuity_due(___, ___, ___)
life_annuity_due(___, ___, ___)