実現カーネル推定量:市場マイクロ構造ノイズ下でボラティリティを測る
実現カーネルがリターンの自己共分散に重みを付け、高頻度価格の変動を推定する仕組みを、Parzenカーネルの例、帯域幅の選び方、実務上の限界とともに解説します。
このガイドの内容サンプリングを細かくするとノイズが増える場面でカーネルが役立つ理由
短い要約
実現カーネル推定量は、価格観測に含まれるノイズが生む系列依存を考慮しながら、高頻度リターンから価格変動を推定します。複数のラグでリターンの自己共分散を求め、滑らかなカーネル重みで合成します。帯域幅は含めるラグ数を決めます。これはサンプル区間の変動をモデルに基づいて測るもので、ボラティリティ予測でも、市場データの誤差がすべて除かれたという保証でもありません。
サンプリングを細かくするとノイズが増える場面でカーネルが役立つ理由
ノイズがない場合、日中リターンの二乗和は観測区間の変動を推定する自然な方法です。しかし実際の約定価格や気配値には、bid–ask bounce、価格の離散性、遅延、記録誤差などが含まれることがあります。ノイズのある価格を差分すると、両方の観測誤差がリターンに入ります。隣り合うリターンは一つの誤差を反対符号で共有するため、リターンの系列自己共分散には観測ノイズの情報が現れます。
通常の実現分散はラグ0の積、つまり各リターンの二乗だけを合計します。非常に細かい頻度では、潜在価格の新たな動きを捉えるより速くノイズが累積することがあります。実現カーネルはラグ0の項に、正負のラグの自己共分散を重み付けして加えます。適切な仮定と帯域幅の増加条件の下では、0以外のラグ項が主要なノイズ効果を相殺し、効率価格の変動を保つ助けになります。
Barndorff-Nielsen、Hansen、Lunde、Shephardは、市場摩擦がある場合の事後的な変動を測る実現カーネルを原著のEconometrica論文で開発しました。これは、利用可能なすべてのティックをデータ確認なしに使う指示ではなく、長期分散の形を慎重に重み付けして計算する方法です。高頻度の基本的な比較対象は実現ボラティリティの計算ガイドを参照してください。ここではカーネル補正とその選択を扱います。
効率価格と記録価格を分ける
\(X_t\)を潜在的な効率対数価格、時刻 \(t_i\) の記録対数価格を \[ Y_{t_i}=X_{t_i}+\epsilon_{t_i} \] とします。ここで \(\epsilon_{t_i}\) は市場マイクロ構造ノイズです。基本モデルでは、潜在価格は局所分散率 \(\sigma_t^2\) の連続過程で、固定区間 \([0,T]\) の目標は \[ IV_T=\int_0^T \sigma_t^2\,dt \] です。
最も単純な導出では、ノイズの平均を0、時間方向に独立、効率価格過程から独立、分散は安定していると仮定します。こうすると補正が必要な理由が分かりやすくなります。実際の取引や気配値はこの仮定を外れることがあります。ノイズは系列依存や時間変化を持つ場合があり、効率価格に関連したり、観測時刻の選び方に左右されたりします。
潜在過程にジャンプがあれば、二次変分にはジャンプの二乗も含まれます。それを目標に含めるかはモデルと研究目的によります。連続価格の導出は積分分散を対象とします。ジャンプ頑健な構成を追加しない限り、実現カーネルが連続分散とジャンプを分離すると説明してはいけません。二次変分ガイドで、積分分散と経路全体の変動の違いを説明しています。
この設定で得るのは、すでに終了した区間の推定値です。潜在価格を正確に復元したり、次の区間を予測したり、取引が約定できた価格を示したりするものではありません。高頻度入力の価格定義も記録してください。約定価格、気配値の仲値、その他の価格代理変数では、リターン系列とノイズ特性が異なります。
リターンの自己共分散にノイズのパターンが現れる
観測リターン \(r_i=Y_{t_i}-Y_{t_{i-1}}\) が \(n\) 個あるとき、ラグ \(h\) の非正規化自己共分散和を \[ \Gamma_h=\sum_{i=h+1}^{n} r_i r_{i-h}, \qquad \Gamma_{-h}=\Gamma_h \] と定義します。ラグ0では \(\Gamma_0=\sum_{i=1}^n r_i^2\) となり、通常の実現分散です。ラグ1では隣り合うリターンを掛け合わせます。価格ノイズが独立に加わる基本モデルでは、隣接リターンのノイズ成分は逆符号になります。ある観測誤差が一方のリターンを上げると、次のリターンを下げるため、ラグ1の自己共分散が負になることがあります。複数ラグにわたるパターンから、ノイズがリターン系列に及ぼす影響が見える場合もあります。
ラグ和は積の個数で割りません。実現カーネルが実現分散和と同じ尺度で組み合わせるためです。この推定量は異分散・自己相関頑健な長期分散推定量と関係しますが、正規化した標本自己相関を任意に足したものではありません。端点処理と正確な合計規約も推定量の定義に含まれます。
自己共分散は、個々のティックのどれが「ノイズ」でどれが「シグナル」かを示しません。区間全体の交差積を集約します。負の \(\Gamma_1\) はbid–ask bounceと整合的ですが、それだけで特定の仕組みを証明するものではありません。真のリターンに系列依存がある場合や、別のノイズ構造がある場合、同じ自己共分散が複数の効果を反映しえます。ラグごとに市場原因を直接診断するのではなく、明示したモデルとカーネル重みに基づいて推定します。
滑らかなカーネル重みで近いラグと遠いラグを合成する
最大ラグを \(H\) とする一般的な有限標本規約の一つは \[ \widehat{IV}_{RK}(H)=\Gamma_0+2\sum_{h=1}^{H} k\!\left(\frac{h}{H}\right)\Gamma_h \] です。係数2は対称な負のラグ項を含めます。\(k(x)\) は \(0\le x\le1\) 上のカーネル重みで、\(k(0)=1\)、帯域幅の端に近づくほど滑らかに0へ減衰します。論文やソフトウェアによっては、分母を \(H+1\) にするなど端点や添字の規約が少し異なります。結果を再現するには規約を明記し、一貫して使ってください。
一般的な非負の選択肢にParzenカーネルがあります。 \[ k(x)= \begin{cases} 1-6x^2+6x^3, & 0\le x\le \tfrac12,\\ 2(1-x)^3, & \tfrac12 < x\le1,\\ 0, & x>1. \end{cases} \] 短いラグに大きな重みを与え、長いラグの重みを滑らかに下げます。高頻度ノイズはリターン間に依存を生み、遠いラグの推定ほどばらつきが大きくなるため、この滑らかな減衰が役立ちます。非負のParzen構成は、明示した実装の単変量実現カーネル推定値が非負となるよう設計されています。他のカーネルに同じ性質があるとは限りません。flat-topカーネルはバイアス面で有利な場合がありますが、有限標本で負の推定値を出すことがあります。
図はこの減衰のたとえです。近いラグの寄与が強調され、遠いラグほど薄れていきます。実測リターンのグラフでも、特定サンプルの実証重みでも、ボラティリティ推定の出力でもありません。
<!-- learn:illustration -->

帯域幅がバイアスと分散のトレードオフを決める
帯域幅 \(H\) は和に含める最大ラグです。小さすぎると観測ノイズ由来の系列依存を十分に補正できない場合があります。大きすぎるとノイズの多いラグ積を追加し、標本分散を高めることがあります。したがって帯域幅は統計的な調整選択であり、捨てる観測数でも、すべての資産に普遍的に適する時間間隔でもありません。
Parzen実現カーネルの漸近理論では、最適帯域幅は \(n^{3/5}\) のオーダーで増加します。文献で使われる実用的な式の一つは \[ H^*=c^*\,\xi^{4/5}n^{3/5}, \qquad c^*_{\text{Parzen}}=3.5134 \] です。\(n\) は細かいグリッドのリターン数、\(\xi\) は相対的なノイズ水準と潜在価格のクォーティシティを要約します。尺度の一例は \[ \xi^2=\frac{\omega^2}{\sqrt{T\int_0^T\sigma_u^4\,du}} \] で、\(\omega^2\) は観測ノイズの分散です。実務ではこれらは未知なので、ノイズ分散や積分クォーティシティの予備推定などから推定します。この式は最適ラグ数がサンプル規模とノイズ・シグナル環境の両方に依存することを示すもので、固定の万能設定ではありません。
漸近設計では、帯域幅を増やしながらサンプル規模に比べて小さく保つ必要があり、通常 \(H\to\infty\)、\(H/n\to0\) と表されます。\(n^{3/5}\) 則は参照論文のモデルとカーネル条件で主要なバイアスと分散の均衡をとります。有限の一セッションでは、予備的なノイズやクォーティシティの推定が悪いとプラグイン帯域幅が不安定になることがあります。選んだ \(H\)、規約、予備推定の入力、妥当な代替設定に対する感度を報告してください。
4つのリターンを使った仮想計算
計算確認だけを目的に、基点単位の小さな仮想リターン列を考えます。 \[ (r_1,r_2,r_3,r_4)=(1,-1,1,-1)\ \mathrm{bp}. \] これは市場データではありません。リターン4個では漸近的な帯域幅選択を正当化できません。ラグ0の和は \[ \Gamma_0=1^2+(-1)^2+1^2+(-1)^2=4\ \mathrm{bp}^2 \] です。
ラグ1の積はすべて \(-1\) なので、\(\Gamma_1=-3\ \mathrm{bp}^2\) です。ラグ2では \(r_3r_1=1\)、\(r_4r_2=1\) のため、\(\Gamma_2=2\ \mathrm{bp}^2\) です。
式を示すためだけに \(H=2\) とします。Parzenカーネルでは \(k(1/2)=1-6(1/4)+6(1/8)=1/4\)、\(k(1)=0\) です。したがって \[ \widehat{IV}_{RK}=4+2\left(\tfrac14\right)(-3)+2(0)(2) =2.5\ \mathrm{bp}^2 \] となります。
通常の実現分散は \(4\ \mathrm{bp}^2\) で、この例では負の重み付きラグ1項がカーネル推定値を下げます。Parzen重みが境界で0のため、ラグ2和は寄与しません。結果は非負ですが、それだけで隠れた効率価格の変動と一致すると証明されるわけではありません。潜在経路は観測されず、不確実性区間も計算しておらず、予測や売買の結論も導けません。平方根の約 \(1.58\) bpは、この仮想区間における標準偏差の尺度にすぎません。
帯域幅と添字規則を推定値と併せて示す必要性も、この例から分かります。別の \(H\)、端点規約、リターン列を用いれば重みや対象積が変わります。各リターン、ラグ和、重み、単位を示しているため、数値を再現できます。
端点処理とデータクリーニングも方法の一部
非正規化のラグ和では、記録された最初または最後の価格に大きな誤差があると、端点観測が過度に影響することがあります。実現カーネルの実務論文では、端点効果を抑える局所平均化、いわゆるジッタリングが論じられています。一般的な実装では、リターンを計算する前に端点価格を近傍観測の局所平均に置き換えます。窓幅や片端・両端のどちらを平均するかは実装選択なので、暗黙にせず説明します。
データクリーニングも数式と同じほど重要です。誤約定、古い気配値、クロス市場、重複タイムスタンプ、価格スケール誤りが一つあるだけで、複数の和に入るリターンとラグ積が生じます。価格フィールド、タイムスタンプの整列、セッション境界、重複処理、フィルター、オークションや市場休止の扱いを記録してください。最終推定値がもっともらしく見えるかどうかとは独立に、クリーニング規則を定めます。
2009年の実現カーネル実務研究は、約定・気配データ、端点効果、局所トレンド、非負のParzenカーネルを扱っています。実務的な教訓は「ノイズに頑健」が「データに無関係」という意味ではないことです。短い窓で価格が緩やかに動く成分、変化する市場摩擦、気配値の作り方は、基本的な解釈に影響します。ジッタリングは一つの端点問題を軽減できますが、整列していない系列やサンプル中ほどの異常値は修正できません。
モデルの仮定と重要な限界
古典理論は潜在価格過程、サンプリング、ノイズ、カーネルの正則性、帯域幅について仮定します。実現カーネルの構成によっては、独立ノイズの単純な例より広い系列依存ノイズや内生的な観測時刻に頑健なものがあります。ただし、その頑健性は定理ごとの条件によります。関連条件を満たすカーネルと帯域幅を使う必要があります。Aït-Sahalia、Mykland、Zhangの依存する市場マイクロ構造ノイズの研究は、依存を明示的に扱う必要性を理解する助けになります。どの拡張も基本式から自動的に導かれると考えてはいけません。
カーネルの選択は重要です。Parzenは非負の単変量推定に広く使われます。flat-top重みは異なるバイアス特性を狙い、有限標本で負の推定値を生むことがあります。見た目が似ているからと任意のHACカーネルに置き換えてはいけません。分析された構成におけるBartlettなど、一見なじみのある選択肢が同じ一致性をもたらさないことを実現カーネルの文献は示しています。推定値が負ならカーネルと有限標本規則を明記します。黙って0に切り詰めたり、負の物理的分散と呼んだりしてはいけません。
結果は価格代理変数と目標の限界も引き継ぎます。ジャンプは二次変分に含まれうる一方、外れ値は積を支配し、観測の不規則性や非同期性は推定対象を変え、区間中にボラティリティやノイズが変わることもあります。単変量の実現カーネルだけで非同期な多変量サンプリングを解決したり、ジャンプを除いたり、bid–ask bounceと他のリターン依存要因すべてを区別したりはできません。頑健性は明示したモデルの範囲内に限られ、あらゆるデータ欠陥に対するものではありません。
区間推定として報告し、予測や執行気配値として示さない
再現可能な報告では、価格系列とサンプリング設計、観測区間、リターン単位、カーネル関数、最大ラグ \(H\)、端点規約、端点平均化規則、クリーニングを示します。プラグイン帯域幅を使うなら、ノイズとクォーティシティの推定入力か、再計算できるだけの詳細を報告します。結果が積分分散、ジャンプを含む二次変分、変換済みのボラティリティ尺度のどれかを明らかにしてください。
推定値が示すのはサンプル区間の変動です。過去の測定値を将来の期間に結び付ける別の予測モデルを作り、アウト・オブ・サンプルで評価しない限り、将来ボラティリティの推定値ではありません。気配スプレッドや執行コストの推定でもありません。Rollのbid–askスプレッドガイドはリターン自己共分散から別の量を推定します。二尺度実現ボラティリティのガイドは異なる補正構造を持つ別のノイズ頑健手法を説明します。
判断の中心は単に実現カーネルを使うかどうかではありません。価格データ、サンプリング方式、目標、カーネル、帯域幅が研究課題に十分適合し、報告する解釈を支えられるかどうかです。感度表と明示的なモデル限界があれば判断を検証しやすくなります。慎重な推定であっても、サンプリング不確実性を伴う過去の測定です。利益の出る取引規則を証明したり、市場マイクロ構造の影響がすべて消えたと保証したりはしません。
よくある質問
Q1実現カーネルは市場マイクロ構造ノイズをすべて除去しますか?
いいえ。明示した仮定、適切なカーネルと帯域幅の下でノイズの影響を抑えられますが、データ誤差、変化・依存するノイズ、サンプリング問題、モデルの誤指定は推定に影響します。
Q2Parzenカーネルと帯域幅は同じものですか?
いいえ。カーネルは各ラグに相対的な重みを割り当てる関数です。帯域幅は含める最大ラグであり、重みを減衰させる範囲を定めます。
Q3実装によって実現カーネルの報告値が異なるのはなぜですか?
帯域幅、端点の添字、ジッタリング窓、価格フィールド、クリーニング規則、カーネルの規約が異なる可能性があります。これらは自己共分散和を変えるため、報告が必要です。
Q4実現カーネル推定値はボラティリティ予測ですか?
それだけではありません。観測区間の変動を測定します。将来期間の予測には別のモデルとアウト・オブ・サンプル評価が必要です。
出典
問題を報告
この記事のリンクを含むメールを準備します。送信すると Mark に報告が届きます
クイックチェック
記事を読み終えたら、3問で確認しましょう
問題 01
実現カーネルは通常の実現分散和に何を加えますか?
答えを選ぶと解説を確認できます