始める無料で始める

既知の利回りで債券キャッシュフローを割引する

債券のキャッシュフローを整理したので、各キャッシュフローの現在価値を計算し、債券価格を求める手順に進みます。債券の価値は、キャッシュフローの現在価値の合計であることを思い出してください。

この演習では、各キャッシュフローに対する適切な現在価値係数 pv_factor を計算し、各キャッシュフローの現在価値 pv を求めます。最後に pv を合計して、債券の価値を算出します。

この債券の利回りは 6% で、これが割引率として用いられます。前の演習で作成したデータフレーム cf は、ワークスペースに用意されています。

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

Rで学ぶ債券の評価と分析

コースを見る

演習の手順

  • データフレーム cf に新しい列 t を作成し、キャッシュフローを受け取る年を示します。ここでは、年はデータフレームの行名(123 など)に相当します。そのため、rownames() を使って t を設定できます。値が数値になるように as.numeric() を使用してください。
  • もう一つの新しい列 pv_factorcf に作成し、各年の現在価値係数を保存します。各年の現在価値係数は、1 を利回り(この場合は 6%、つまり 0.06)に 1 を加え、それを時間変数(t)のべき乗にしたもので割って計算します。
  • cfpv 列を作成し、各年のキャッシュフローの現在価値を保存します。現在価値は、キャッシュフロー(cf)にその年の現在価値係数(pv_factor)を掛けて計算します。
  • 最後に、sum() を使って pv の値を合計し、債券の価値を求めます。

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

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

# Add column t to cf
cf$t <- as.numeric(___(___))

# Calculate pv_factor
cf$pv_factor <- 1 / (1 + ___)^___

# Calculate pv
cf$pv <- ___ * ___

# Calculate the bond price
sum(___$___)
コードを編集して実行