qkit2: Implied Volatility Surface
BSMの逆問題からSVI裁定フリーパラメトリゼーション、ニューラルスムージングまで
pt.1ではBSMモデルを「順方向」に解いた。パラメータ からオプション価格 を計算するやつ。pt.2ではその逆問題を解く。市場で観測されたオプション価格 から を逆算する。この逆算された がインプライド・ボラティリティ(IV)で、ストライク と満期 の2次元グリッド上にプロットした3次元曲面がIVサーフェス。
IVサーフェスは「市場がどんなリスクを織り込んでいるか」の地図みたいなもの。ここでは古典的なニュートン法による逆算から、Gatheral & Jacquier (2014) の裁定フリーSSVI、Ackerer et al. (NeurIPS 2020) のニューラルスムージングまで整理していく。
1. インプライド・ボラティリティの定義と逆算
BSM価格関数 は に対して狭義単調増加。だから市場観測価格 が与えられたとき、以下を満たす が一意に存在する。
この がインプライド・ボラティリティ。BSMの仮定( 一定)が正しければ は に依存しないはずだけど、現実にはストライクと満期の両方に依存する。これがスマイル/スキューの起源。
ニュートン法(Vega利用)
BSM価格の に対する微分はVega。
が常に成立するから、ニュートン法の反復が定義できる。
収束は二次(quadratic)。初期値 くらいから出発して、普通4〜6回の反復で に達する。ただしDeep OTM/ITMでは になってニュートン法が発散するから、 になったらBrentqにフォールバックする。
Brentq法
二分法と逆二次補間のハイブリッド。 の区間で残差関数のゼロ点を求める。
収束は超線形(superlinear)。ニュートン法より遅いけど初期値に依存せず常に収束する。実用の第一選択。
プロダクション環境では、Peter Jaeckelの "Let's Be Rational" アルゴリズムが標準になっている。正規化されたBlack価格からIVへの合理関数近似を使って、 で機械精度のIVを返す。
手法の比較をざっくりまとめると、ニュートン法は収束が二次で速いけど初期値依存。Brentqは超線形で安定性が非常に高い。Jaeckelは で安定性も最高、プロダクション向き。
2. IVサーフェスの経験的事実
IVサーフェスの理論的分析では、以下の座標変換が標準。
これがトータルバリアンス。
これがログモネイネス。 はフォワード価格、 は残存期間。トータルバリアンスは裁定条件の記述に自然な座標で、SVI/SSVIもこの座標で定義される。
ボラティリティ・スマイル
固定 でのスライス は典型的にU字型。ATM()が最小で、OTM方向( が大きい)で上昇する。
数学的には、リターン分布のファットテール(BSMの正規分布よりも裾が重い)がスマイルを生む。Backus et al. (1997) の近似がわかりやすい。
はリスク中立歪度(skewness)、 はリスク中立尖度(kurtosis)。(ファットテール)がスマイルの曲率を生んで、(負の歪度)がスキューを生む。
ボラティリティ・スキュー
株式市場では (OTMプット)のIVが (OTMコール)より高い。スキューの勾配は、
S&P 500だと くらい。短い満期ほどスキューは急峻になって、
はハースト指数。BSMでは でスキューは定数だけど、ラフボラティリティモデルでは で (爆発する)。これはけっこう面白い。
タームストラクチャー
ATM IVの満期構造 について。通常はコンタンゴ( for )だけど、ストレス時にはバックワーデーション(短期IVが長期を上回る)になる。決算発表やFOMCの前後で短期IVが局所的に急上昇するのもよく見る。
3. 裁定フリー条件
IVサーフェスが経済学的に意味を持つには、静的裁定が排除されている必要がある。
バタフライ裁定
コール価格 がストライク の凸関数でなければならない。同値条件として、リスク中立確率密度 が非負。
トータルバリアンスの言葉だと、Gatheral (2006) の 関数が非負であること。
, , 。
カレンダースプレッド裁定
トータルバリアンスが満期に対して単調増加。
「長い満期のオプションは短い満期より高い(等しい)トータルバリアンスを持つ」という話。トータルバリアンスプロットで等線が交差してはいけない。
Roger Lee のモーメント公式
IVの漸近的挙動()に対する上界を求める。
トータルバリアンスのウイングの傾きは最大で2。これを超えるとリスク中立分布のモーメントが発散してしまう。
4. SVI / SSVI パラメトリックモデル
Raw SVI (Gatheral, 2004)
各スライス(固定 )のトータルバリアンスを5パラメータで表現する。
パラメータの意味をざっくり書くと、 はバリアンスのレベル()、 はウイングの傾き、()はスキューで ならプットスキュー、 はスマイルの中心位置、 はATM付近の曲率。
漸近的には、
右ウイングの傾きが 、左ウイングが 。Leeの上界から が必要。
SVI-JWパラメトリゼーション
ATMの観測量で表現した等価形式で、トレーダーにとって直感的。パラメータは 。(ATMトータルバリアンス)、(ATMスキュー)、(プット/コール・ウイングの傾き)、(最小バリアンス)。
SSVI: Surface SVI (Gatheral & Jacquier, 2014)
SVIをサーフェス全体に拡張して、裁定フリー条件を保証するやつ。
はATMトータルバリアンス。 はパワーロー関数で、
SSVIの決定的な利点は、3パラメータ だけでサーフェス全体を記述して、裁定フリー条件が閉形式で検証可能なこと。
SSVI裁定フリー定理 (Gatheral & Jacquier, Theorem 4.2)
SSVIサーフェスがバタフライ裁定フリーであるための十分条件。
条件1はRoger Leeの上界 に対応していて、必要条件でもある(Lemma 4.2)。条件2はほぼタイト(almost tight)。
パワーロー の場合、 のときSVI-JWパラメータが満期 に依存しない定数になるという特別な性質がある。
キャリブレーション
スライスごとのRaw SVIキャリブレーションの目的関数は、
制約付き最適化でフィットする。SSVIの場合は をまずATMオプションからフィットして、次に を全スライスに同時フィット。
5. Deep Smoothing: ニューラルIVサーフェス
Ackerer, Tagasovska & Vatter (NeurIPS 2020)
ニューラルネットワークを既存モデル(BSMやSSVI)の補正器として使うハイブリッドアプローチ。金融機関でプロダクション投入実績がある。
トータルバリアンスをこう分解する。
はBSMフラットボルやSSVIなど既存モデルで、サーフェスの大まかな形状を決定。 は多層パーセプトロンで、正値出力(Softplus活性化)、Priorからの乖離を学習する。
裁定ペナルティ付き損失関数
各項は、
はセクション3のGatheral関数。自動微分(PyTorch autograd)で , , を計算する。 はソフト制約の強度。ハード制約ではないから完全な裁定フリーは保証されないけど、実用上は十分。
その他のアプローチ
Kelly et al. (2023) はIVサーフェスを画像と見なしてCNNでファクターを抽出した。行がモネイネス区間、列が満期区間、ピクセル値がIVという構成で、VAEで10次元の潜在表現に圧縮してMLPでオプション価格を予測する。
Chen et al. (2019) はIVサーフェスの時間的ダイナミクスをLSTM-Attentionで予測。フォゲットゲートで長期記憶、アテンション機構で入力特徴量の重要度を自動学習して、タイムスプレッドやバタフライスプレッドのシャープレシオを改善した。
VolNP (2025) はメタ学習ニューラルプロセスで、日ごとに異なるスパースなオプションクオートから完全なIVサーフェスを再構成する。SABR誘導の事前分布を組み込むことで、データが少ない局面でも安定する。
6. ラフ・ボラティリティとIVサーフェス
Gatheral, Jaisson & Rosenbaum (2018) は、対数ボラティリティの増分が分数ブラウン運動(fBM)に従って、ハースト指数 であることを実証した。
は「ラフ」なパスを意味する。これによって、ATMスキューの短期爆発 が説明できるし、ボラティリティの自己相関構造がパワーロー減衰することもわかる。BSM(、スキュー一定)やHeston(、スキュー一定)では説明不可能。
Rough Bergomiモデル
はWick指数関数、。パラメータは の3つだけで、極めてパーシモニアス。
Romer (2022) はラフボラティリティモデルの特性関数をニューラルネットワークで近似して、1ミリ秒以内にサーフェス全体を計算可能にした。GPUなら数千のモデルをリアルタイムでキャリブレーションできる。
Pythonで書くとこうなる
IV逆算
from scipy.optimize import brentq
from quant.pricing.bsm import BSM
def implied_vol(C_mkt, S, K, T, r, option_type="call"):
def residual(sigma):
m = BSM(S=S, K=K, T=T, r=r, sigma=sigma)
price = m.call_price() if option_type == "call" else m.put_price()
return price - C_mkt
return brentq(residual, 1e-3, 5.0, xtol=1e-8)
3Dサーフェス描画
import plotly.graph_objects as go
fig = go.Figure(data=go.Surface(
z=iv_grid * 100, x=strikes, y=expiry_days,
colorscale="Plasma",
))
fig.update_layout(scene=dict(
xaxis_title="Strike ($)", yaxis_title="Days", zaxis_title="IV (%)"))
SVIフィッティング
from scipy.optimize import minimize
import numpy as np
def svi_raw(k, a, b, rho, m, sigma):
return a + b * (rho * (k - m) + np.sqrt((k - m)**2 + sigma**2))
def calibrate_svi(k_data, w_data):
def obj(p):
return np.sum((svi_raw(k_data, *p) - w_data)**2)
x0 = [0.04, 0.2, -0.3, 0.0, 0.1]
bounds = [(None,None), (1e-6,None), (-0.999,0.999), (None,None), (1e-6,None)]
return minimize(obj, x0, method="L-BFGS-B", bounds=bounds)
参考文献
- Gatheral, J. (2004). "A parsimonious arbitrage-free implied volatility parameterization." Global Derivatives & Risk
- Gatheral, J. & Jacquier, A. (2014). "Arbitrage-free SVI volatility surfaces." Quantitative Finance, 14(1), 59-71
- Corbetta, J. et al. (2019). "Robust calibration and arbitrage-free interpolation of SSVI slices."
- Lee, R. (2004). "The Moment Formula for Implied Volatility at Extreme Strikes." Mathematical Finance, 14(3), 469-480
- Ackerer, D., Tagasovska, N. & Vatter, T. (2020). "Deep Smoothing of the Implied Volatility Surface." NeurIPS 2020
- Kelly, B. et al. (2023). "Deep Learning from Implied Volatility Surfaces." SSRN:4531181
- Chen, S. et al. (2019). "Forecasting Implied Volatility Smile Surface via Deep Learning." arXiv:1912.11059
- Vuletic, M. & Cont, R. (2024). "VolGAN: A generative model for arbitrage-free IV surfaces." Applied Mathematical Finance, 31, 203-238
- Wiedemann, R. et al. (2025). "Operator deep smoothing for implied volatility." ICLR 2025
- Gatheral, J., Jaisson, T. & Rosenbaum, M. (2018). "Volatility is Rough." Quantitative Finance, 18(6), 933-949
- Bayer, C., Friz, P. & Gatheral, J. (2016). "Pricing under rough volatility." Quantitative Finance, 16(6), 887-904
- Romer, S.E. (2022). "Empirical analysis of rough and classical stochastic volatility models." Quantitative Finance
- Bures, O. et al. (2025). "Volatility Modeling with Rough Paths: A Signature-Based Alternative." arXiv:2507.23392
- Li, Y. et al. (2024). "Modeling IVS Using B-Splines with Time-Dependent Coefficients." Mathematics, 12(7), 1100
- Backus, D. et al. (1997). "Accounting for Biases in Black-Scholes." Working paper
- Jaeckel, P. (2015). "Let's Be Rational." Wilmott, 2015(75), 40-53