為替オプションデータからボラティリティ・スマイルを構築

概要

・為替オプションのボラティリティデータからボラティリティ・スマイルをキャリブレーションする
・Polynominal in deltaとSABRの2種類を計算

背景

・ボラティリティスマイルの存在
一般的にインプライド・ボラティリティは行使価格により異なる値がマークされており、行使価格とインプライド・ボラティリティを繋げる\( \sigma \left( K \right) \)という関数を見つけることがプライシング、またリスク管理上重要です。
ATMのボラティリティだけ見て、OTMを評価しようとすると痛い目を見ますよということですな。

株式オプションの場合などには、いくつかの行使価格ごとにオプションが存在することから容易に\( \sigma \left( K \right) \)を推定することができる一方、為替オプションの場合には、
・ATMインプライド・ボラティリティ
・リスクリバーサル(10デルタ、25デルタ)
→ コールとプットの差に相当し、スマイルのスキューを表す
・ストラングル(10デルタ、25デルタ)
→ コール + プット – ATMに相当し、スマイルの曲率を表す
の情報のみがマーケットに与えられています。したがって、これらの情報と整合的なようにボラティリティ・スマイル\( \sigma \left( K \right) \)を推定しなければなりません。

今回は参考文献にも記載されているPolynominal in deltaという方法と、SABRの2種類を実際にRを使って計算してみたいと思います。
今回はその中でも、ATMと25デルタの3点の情報を使ってスマイルを構築してみたいと思います。

マーケットには10デルタの情報もあるので、この5点を使ってスマイルを構築するという方法もありますが、それはまた別のお話ということで

前準備、データなど

基本的には参考文献3章に記載されているデータを使用しています。
対象はユーロドルの1年のオプションデータです。
為替オプションの場合、一口にデルタと言っても様々な表現方法があります。ユーロドルの1年の場合にはPip spotという方式になります。この方式に関しては通貨ペアの種類や、年限にも依存するので詳細は参考文献参照ということで汗

pip spotの方式に従う場合、ATMの行使価格はgetATMStrike()関数に記載されているような式で計算することが出来ます。
また、Polynominal in delta、SABRの両手法で共通する部分関してはCalibrationと書いてある以下の部分で計算しています。
具体的にはATMの行使価格、マーケットストラングルの行使価格、オプション価値の総和ですね。

Polynominal in delta

さて上記の情報を元に、キャリブレーションをするわけです。
Polynominal in deltaに関しては名前の通り多項式関数でスマイルを構築します。2次関数でキャリブレーションしますので推定するパラメータはc0, c1, c2となります。
この3つのパラメータと同時に、スマイルストラングルというパラメータ(2つの行使価格)も推定します。

さらに、マーケットでクオートされているATM、リスクリバーサルの情報も満たすように制約条件を加えてあげますと以下の様な感じでしょうか。whileループの中に式番号が振ってありますがこれは参考文献の中で記載されている制約条件に対応しています。

推定結果を見てみますと、

となり、左から、c0, c1, c2, k_25c, k_25pとなります。
c0, c1, c2に関しては参考文献の推定結果と異なりますが、k_25c, k_25pに関してはそれらしい値が推定されていることが分かります。

また、リスクリバーサル、及びストラングルの制約を満たしていることが分かります。
推定されたパラメータからボラティリティ・スマイルを構築してみると以下。

141116_1

SABR

ここで、polynominal in deltaと別の方法である、SABRという方法も試してみます。
あとで分かることですが、polynominal in deltaはdeep out of the moneyで十分なインプライドボラティリティを持たせることが出来ないという欠点があります。
そこを克服する方法がSABRとなるわけですな。
求めるパラメータはalpha, volvol, rho, betaの4つとなります。この中のbetaに関しては外生的に固定値を与えるやり方がオシャレなようでして、参考文献でもbeta = 1で固定しています。今回のコードもそれを踏襲。
また、alpha, volvolは非負制約、rhoは相関係数で[-1, 1]の制約があります。それを満たすように、前者はexpを、後者はtanhをかませています。

で、推定されたパラメータがこちら

ということで、こちらも全く参考文献と同じというわけではありませんが、似たような値が出てきます。

また、結果は割愛しますがSABRでの推定結果もリスクリバーサル、ストラングルの条件を満たしています。
スマイルの形状は以下。

141116_2

両手法の比較

141116_3

ということで、前述しましたように、polynoinal in deltaでは特に行使価格が非常に小さくなった領域におけるインプライド・ボラティリティを十分に与えられていないことが分かります。

参考文献

Foreign Exchange Option Pricing: A Practitioners Guide (The Wiley Finance Series)
http://www.amazon.co.jp/dp/B005YX4VYE