基礎編 2. 金利の期間構造 

2.6 イールドカーブの構築方法(2)

2.6.6 データソースとしてLIBORを使用する

イールドカーブの短期ゾーンは、LIBORを使って構築するのが一般的でした。LIBORの分断化が起こって以降、短期ゾーンのデータの取り方も変わってきていますが、その点については、別の所で説明したいと思います。ここではイールドカーブ構築のアルゴリズムにフォーカスして、かつて一般的であった方法でイールドカーブを作ってみます。 

まず、データソースとして、市場から次のデータを選択したとします。 

  • Overnight: 1%
  • Tomorrow Next: 1%
  • 1 week: 1%
  • 1 month: 1.25%
  • 3 month: 1.35%

また、各商品のキャッシュフロー額と時期、すなわち \(CF_n (T_i)\) を求めるには、取引慣行や規則、契約を確認する必要があります。ユーロのマネーマーケット市場の市場慣行は、概ね下記のようなものになります。 

  • 金利は単利ベースの年率表示
  • 日数計算方法: Actual / 360
  • カレンダー: London + 取引通貨の国のカレンダー
  • 休日の取扱い: Modified Following
  • Effective Date: 2 営業日後

以上の情報から、まずPillarを固めます。Pillarは本日を\(T_0\) として、下記の5つの時点を設定します。 

\( T_1=1 day,\ T_2=2 day, T_3=2 day+1 week,\ T_4=2 day+1 month,\ T_5=2 day+3 month\ \) 

\(T_1\) はOvernightのエンド日、\(T_2\) はTomorrow Nextのエンド日です。\(T_3\) は1weekのエンド日ですが、通常取引であればスタート日は2営業日後なので、そこから1週間になります。\(T_4,T_5\) はそれぞれ1month 3monthのエンド日ですが、同じく2営業日後からの該当日になります。仮に休日と重なった場合は、Modified Followingのルールが適用されます。 

次に、各商品の各PillarにおけるCashFlowを求めます。Overnightについては、明確です。本日1(=PV)で投資した資金が、翌営業日に 1+金利×実日数÷360で返ってきます。後は、翌営業日(T_1)のDiscount Factorを未知数として方程式を立てるだけです。 

\[ \begin{array} \ PV_1-CF_1(T_1)\times DF(T_1)&=& 1-(1+0.01 \times 1/360) \times DF(T_1) \\ &=& 1-1.0000278 \times DF(T_1) = 0 \end{array} \]

このまま解けば、\(DF(T_1)\) はすぐ求まりますが、後回しにして次の商品に進みます。 

TomorrowNextとそれ以降のLIBORについては、スタート日が1,2営業日後なので、本日を基準にすると、実際にはフォワード金利になります。そうすると PV=1 はスタート日を基準とした価格になり、本日基準に換算すると、さらにスタート日のDFで割引く必要があります。方程式の形にすると次の様になります。 

\[ \begin{array}  0+PV_2\times DF(T_1) -CF_2 (T_2)\times DF(T_2)&=& 0+1\times DF(T_1)-(1+0.01\times 1/360)\times DF(T_2) \\ &=& 0+1\times DF(T_1)-1.000028\times DF(T_2)\ = 0 \end{array} \]

本日、すなわち\(T_0\) 時のキャッシュフローは 0 です。しかしあえて項として残しているのは、後で行列表現にした時の列位置として残す為です。 

1Weekは、2営業日後スタートなのでPVは\(DF(T_2)\) を使ってさらに本日基準の現在価値に割引く必要があります。式にすると、次の様になります。ここでも\(T_0\) と\(T_1\) のCashFlowは0 ですが、列位置として項を残しています。 

\[ \begin{array} \ 0+0+PV_3\times DF(T_2) -CF_3 (T_3)\times DF(T_3)&=& 0+0+1\times DF(T_2)-(1+0.01\times 7/360)\times DF(T_3) \\ &=& 0+0+1\times DF(T_2)-1.000194\times DF(T_3)\ = 0 \end{array} \]

同様に1Monthと3Monthの式を立てます。それぞれ実日数は31、92日であったとします。 

1 month

\[ \begin{array} \ 0+0+PV_4\times DF(T_2) -CF_4 (T_4)\times DF(T_4)&=& 0+0+1\times DF(T_2)-(1+0.0125\times 31/360)\times DF(T_4) \\ &=& 0+0+1\times DF(T_2)-1.001076\times DF(T_4)\ = 0 \end{array} \]

3 month

\[ \begin{array} \ 0+0+PV_5\times DF(T_2) -CF_5 (T_5)\times DF(T_5)&=& 0+0+1\times DF(T_2)-(1+0.0135\times 92/360)\times DF(T_5) \\ &=& 0+0+1\times DF(T_2)-1.003450\times DF(T_5)\ = 0 \end{array} \]

以上を、行列表現で連立方程式の形にするとすっきりします。 

\[ \left( \begin{array}{rrrrrr} 1 & -1.000028 & 0 & 0 & 0 & 0\\ 0 & 1 & -1.000028 & 0 & 0 & 0\\ 0 & 0 & 1 & -1.000194 & 0 & 0 \\ 0 & 0 & 1 & 0 & -1.001076 & 0 \\ 0 & 0 & 1 & 0 & 0 & -1.00345 \\ \end{array} \right) \left( \begin{array}{c} 1\\ DF(T_1)\\ DF(T_2)\\ DF(T_3)\\ DF(T_4)\\ DF(T_5)\\ \end{array} \right) = \left( \begin{array}{c} 0\\ 0\\ 0\\ 0\\ 0\\ 0\\ \end{array} \right) \]

解くのは、一番上の行から逐次計算すれば良いので簡単です。計算結果は、 

\[ \left( \begin{array}{c} 1\\ DF(T_1)\\ DF(T_2)\\ DF(T_3)\\ DF(T_4)\\ DF(T_5)\\ \end{array} \right) = \left( \begin{array}{c} 1\\0.999972\\0.999944\\0.999750\\0.998869\\0.996506 \end{array} \right) \]

さらに、Discount FactorからZero Coupon Rateを計算すると 

\[ \left( \begin{array}{c} 1\\ DF(T_1)\\ DF(T_2)\\ DF(T_3)\\ DF(T_4)\\ DF(T_5)\\ \end{array} \right) = \left( \begin{array}{c} 1\\0.999972\\0.999944\\0.999750\\0.998869\\0.996506 \end{array} \right) \Rightarrow \left( \begin{array}{c} -\\1.022\% \\1.022\%\\1.014\%\\1.252\%\\1.359\% \end{array} \right) \]

さらに、Discount Factorから\(T_i\) から\(T_(i+1)\) 間のForward Rateを計算すると 

\[ \left( \begin{array}{c} F(T_1,T_2)\\ F(T_2,T_3)\\ F(T_3,T_4)\\ F(T_4,T_5)\\ \end{array} \right) = \left( \begin{array}{c} 1.014\% \\1.014\% \\1.34\% \\1.417\% \end{array} \right) \]

とりあえず、ここまでは簡単に求まりました。

 

目次

Page Top に戻る

// // //