Una función para valorar una renta vitalicia
El supervisor de prácticas de Cynthia no tiene mucha experiencia con R. Le pide que escriba una función en R que calcule el EPV de una renta vitalicia (entera) anticipada sobre \((x)\) para un tipo de interés constante \(i\) y una tabla de mortalidad.
Como la prestación es constante e igual a 1 EUR, no hace falta tenerla en cuenta explícitamente en los cálculos.
Este ejercicio forma parte del curso
Valoración de productos de seguros de vida en R
Instrucciones del ejercicio
- Escribe una función
life_annuity_due()que calcule el EPV de una renta vitalicia entera anticipada con argumentos de entradaage, tipo de interésiylife_table. - Aplica
life_annuity_due()para calcular el EPV de una renta vitalicia anticipada para (20) al 2%. Usa la tabla de mortalidad periódica belga de 1999 para mujeres, precargada comolife_table. - Averigua cómo cambia el EPV si el tipo de interés sube al 5% (manteniendo la edad en 20). ¿Y qué ocurre si la edad cambia a 65 (manteniendo el tipo de interés en 2%)?
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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(___, ___, ___)