基礎編 2. 金利の期間構造
2.6 イールドカーブの構築方法(2) Bootstrapping + Interpolation法
2.6.10 Interpolation
Par Curveから、Bootstrappingによって求まるDiscount FactorやZero Coupon Rateは、各Pillar上の値であり、Pillar間の任意の時点のDiscount FactorやZero Coupon Rateは、何等かの方法で推定する必要があります。また、Discount FactorからPillar間の区分Forward Rateは求まりますが、それをさらに細分化したForward Rateや、瞬間Forward Rateは、何等かの方法で推定する必要があります。
その何等かの方法が、Interpolation(補間)法になります。どれかひとつのカーブをInterpolationすれば、残りの2つのカーブの任意のPillar間の値も解析的に求まるので、カーブのInterpolationはひとつのカーブで行うだけで十分です。しかし、あるカーブのInterpolationが、別のカーブの形状にどのような影響を及ぼすかは、きちんと理解しておく必要があります。
Interpolationの方法はいくつもありますが、完全なものはひとつもありません。どの方法も、何等かの問題点を孕んでいます。また、そもそも市場データの方が、何等かの理由で滑らかでなく凸凹が発生している事も多く、そういった場合は特に慎重なInterpolationを行う必要があります。
実務で指摘される、Interpolation方法の選択から発生する問題点としては、以下のような事が上げられます。
- Forward Curveに、不自然な振動が発生。
- Forward Curveの一部が、マイナス金利の領域に入ってしまう。(この点は、今の金利環境では、マイナス金利が一般化しているので、問題では無くなってきています)
- Par Curve上の、ある一点の摂動の影響が、その近辺にとどまらず、Zero CurveやForward Curveの全体に影響を及ぼす(Bootstrappingのアルゴリズムからすると、本来ならPar CurveのPillarより短い期間のみ影響を受けるべきところ、より長期の金利まで影響を受ける)。
- 特にForward Curveについては、Par Curveの短期のゾーンの摂動が、Forward Curveの中長期のゾーンに増幅された振動として伝わる。
こうみてみると、すべてForward Curveの形状が問題になるようです。
Interpolationの方法の選択肢としては、
・まず、Discount Curve、Zero Rate Curve、Forward Rate Curveの内、どれをInterpolationするか?
その上で、各Pillar間を
・単純な線形補間、あるいは高次のSpline関数を使った線形補間(方法は多様です)のどれを選択するか?
に分かれます。前者は、各PillarにおけるZero RateやDiscount Factorを、そのまま一次関数で結ぶか、それらの対数を取って一次関数で結びます。通常、Par CurveをInterpolationする事はありません。理由は、上記の様な問題点が、最も如実に現れるからです。
この方法の内、各PillarにおけるDiscount Factorの対数を取り、それを直線で結ぶ方法や、Zero Coupon Rateの対数を取って、それを直線で結ぶ方法は、市販のシステムアプリケーションに組み込まれたInterpolationの方法として、よく使われているようです。前者の方法は、Discount Factorは\(e^{-rT}\) (r はZero Coupon Rate、T はPillarまでの期間)で表現されるので、これの対数、-rT を線形補間することになります。要はZero Coupon Rateにその期間を掛けた値をInterpolationしている事になります。
単純な線形補間の方法は、計算が簡単なうえ
- Pillar間のZero Coupon Rateの単調性を維持できる
- PillarにおけるZero Coupon Rateの摂動が、カーブの他のPillarに影響しない (局所性が維持できる)
というメリットがあります。 一方で、
- Zero Coupon Rateのカーブが滑らかでなく、不自然
- PillarをまたがるForward Rateの間で連続性を保てない
というデメリットを持ちます。
高次のSpline関数を使った場合、カーブの形状は滑らかさを表現でき、かつSpline関数の接続点(Pillar上)において、微分可能とする事ができます。一方で、Spline関数の次数を上げると、Pillar間で局所的な最大値や最小値が発生したり(Pillar間のRateの変化における、単調性の喪失)、不自然な波が出現したりする可能性があります。
それ以外にも
- あるPillarにおけるPar RateやZero Rateの摂動の影響が、局所的に留まらず、カーブ全体に伝搬する。
- その結果、ある商品の金利リスクを計測すると、リスク量がカーブ全体に発生し、ヘッジが難しくなる。
といった問題点があります。
Spline関数の中では、Cubic Spline関数を使うのが最も一般的です。そして、上記のような問題点に対処する為、Spline関数の係数に一定の制約をかけたりする様々な手法が提案されています。その内、Tension Splineと呼ばれている方法は、曲線の両端に張力をかけ、不自然な波を弱める方法です。たわんだロープを両端から引張るとたわみが減少し、より直線に近くなるのと同じイメージです。
様々なInterpolationの方法と、それらの問題点については、P. Hagan-G. Westによる論文“Interpolation Methods for Curve Construction”(2005)が、非常に詳しく、興味のある方は、そちらの方を読んで頂ければと思います。 その概要は上級編で説明する予定です。