始める無料で始める

生存年金を価格計算する関数

シンシアの指導担当者は R の経験があまりありません。そこで彼女は、与えられた一定利率 \(i\) と生命表をもとに、\((x)\) に対する期始払い(期首払い)終身生命年金の EPV(期待現在価値)を計算する R 関数を作成するよう依頼されました。

給付額は一定で 1 ユーロのため、計算式に明示的に組み込む必要はありません。

この演習はコースの一部です

R による生命保険商品の評価

コースを見る

演習の手順

  • 引数に age(年齢)、利率 ilife_table を取り、終身生命年金(期始払い)の EPV を計算する関数 life_annuity_due() を作成します。
  • life_annuity_due() を使って、利率 2%、年齢 20 歳の場合の EPV を計算します。生命表にはあらかじめ読み込まれている 1999 年ベルギー女性の期間生命表 life_table を使用します。
  • 利率を 5% に上げた場合(年齢は 20 歳のまま)に EPV がどう変わるか確認します。また、年齢を 65 歳に変えた場合(利率は 2% のまま)についても確認しましょう。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# 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(___, ___, ___)
コードを編集して実行