2つのブローカーを使ったヘッジ・アービトラージ構成では、検出された乖離の60〜80%はレイテンシ起因のアーティファクトであり、実際のLP価格差ではありません。こうしたシグナルで執行すると、各取引で損失が発生し、ブローカーが分類・制限する有害なオーダーフローを生み出します。このガイドでは、シンプルな difference-to-open しきい値と、レイテンシ汚染をほぼ完全に排除する高度な fast feed 参照アーキテクチャという、両方のフィルタレベルを扱います。
ヘッジ・アービトラージのソフトウェアが2つのブローカーのクオート間の乖離を検出したとき、その乖離は根本的に異なる2つの原因のいずれかから生じます。1つ目は、ブローカーの流動性プロバイダー間に存在する本物の価格差で、取引可能な機会です。2つ目はフィードのレイテンシによるアーティファクトで、あるブローカーがグローバルな市場イベントをもう一方より速く受信し、遅いブローカーのクオートがまだ更新されていないために見かけ上の乖離が生じている状態です。この2つは、生のクオート比較だけでは区別できませんが、執行結果は正反対になります。
| シグナル種別 | 原因 | 持続時間 | 執行時の結果 |
|---|---|---|---|
| 本物のLP乖離 | Broker A のLPが Broker B のLPとは異なる価格を提示している。市場イベントのタイミングとは無関係 | 200ms〜2,000ms | 提示価格で約定し、想定どおりの純利益になる |
| レイテンシ起因のアーティファクト | Broker A のフィードが市場イベントをより速く受信した。見かけ上の乖離 = 価格変動であり、LP差ではない | 30ms〜150ms | 約定時には Broker B がすでに更新済みで、損失またはリクオートになる |
フィルタなしでは、典型的な2ブローカー構成において、レイテンシ起因のシグナルと本物のLP乖離シグナルの比率は、60〜80%がレイテンシアーティファクトになります。価格ティック、経済指標の発表、流動性の変化といった市場イベントは絶えず発生し、そのたびに、速いブローカーのフィードが先に更新されることで一時的なレイテンシ起因の乖離が作られます。この比率は2つのブローカー間のフィード速度差に大きく依存します。一方のフィードが他方より常に100ms速いブローカーペアでは、差が10ms以内のペアよりもはるかに多くのアーティファクトが発生します。
レイテンシアーティファクトに基づく執行は、個々の取引レベルで利益になりません。しかし問題はそれだけではなく、ブローカーが技術的に有害と分類する特有のオーダーフローパターンを生みます。
レイテンシ起因のシグナルは、価格イベントが起きたまさにその瞬間に発火します。なぜなら、そのとき速いブローカーのフィードは更新され、遅いブローカーのフィードはまだ更新されていないからです。未フィルタのヘッジアーブは、価格変動イベントの正確な瞬間に不釣り合いな割合で注文を出します。注文のタイムスタンプと価格イベントのタイムスタンプを相関させるブローカーのリスクシステムは、この集中を技術的フローとして識別します。
レイテンシ起因の取引は、一貫して数百ミリ秒後の市場価格と比較して不利な価格で約定します。ブローカーのリスクシステムは、各約定後の短期的な価格推移を追跡します。約定直後に不利な価格変動が続くケースが高比率で発生すること、つまり市場が約定方向に対して不利に動いたその瞬間に注文が到着したことのシグネチャは、逆選択レビューの対象として口座をフラグします。
レイテンシアーティファクトで執行するシステムは、低ボラティリティ期には利益が出ます(本物のLP乖離が優勢なため)が、高ボラティリティ期には利益が出ません(レイテンシアーティファクトが増えるため)。この P&L とボラティリティの逆相関は、正当なテクニカルトレーディングとは整合せず、有害なフローの認識可能なシグネチャです。
レイテンシ起因の取引が不利な価格で約定すると、システムは数秒以内に手仕舞います。このパターン、つまり利益のある取引は長く保有し、損失のある取引はすぐ閉じるという動きは、非対称な保有時間分布を生み、リスクシステムが自動化された技術的エクスプロイトとしてフラグします。
有害なフローと分類されると、その口座は劣化した執行を受けます。たとえばリクオート、スプレッド拡大、またはブローカー自身のブックへの内部ルーティングです。これは利益の出る本物のLP乖離トレードまで劣化させます。フィルタの問題は、個々の取引の収益性だけではなく、その口座がそもそもアービトラージに適した状態を維持できるかどうかを左右します。
最もシンプルなフィルタは、difference-to-open という最小価格乖離しきい値で、これを下回る場合は注文を出しません。レイテンシ起因の乖離は、本物のLP乖離より平均的に小さい傾向があります。フィードのレイテンシアーティファクトは、同じイベントを受けた2つのフィードの速度差だけを反映する一方、本物のLP乖離は実際のLPレベルの価格差を反映し、より大きく長く続くことがあります。最小しきい値を設定すると、小さなレイテンシ起因シグナルを切り落としつつ、大きな本物のシグナルを残せます。
| ステップ | アクション | 出力 |
|---|---|---|
| Step 1 | 5〜10営業日、監視専用モードで実行する。検出されたすべての乖離について、タイムスタンプ、大きさ(pips)、解消までの持続時間、検出後200msの価格変動を記録する。 | 生シグナルデータセット |
| Step 2 | 各シグナルを事後分類する。本物(150ms以上持続し、参照フィードが静穏)か、レイテンシ起因(100ms未満で解消し、方向性のある価格イベントが先行)か。 | 分類済みデータセット |
| Step 3 | 本物のシグナルとレイテンシシグナルの大きさ分布を可視化する。その上で、しきい値を超えるシグナルの80%以上が本物のLP乖離になるポイントを見つける。 | 最適なしきい値 |
| Step 4 | 特定したしきい値に difference-to-open を設定する。四半期ごとに再調整する。最適なしきい値は、ブローカーのLP関係や市場のボラティリティレジームの変化に応じて動くため。 | デプロイ済みフィルタパラメータ |
高ボラティリティ期には大きな価格変動が起こります。10 pip の動きの最中に発生したフィードレイテンシアーティファクトは、ブローカー間で4〜5 pip の乖離として見えることがあります。3 pip のしきい値ではこれを捕まえられません。大きなレイテンシイベントは最も有害で、損失も最大であり、有害フローのパターンとしても最も目立ちます。
最適なしきい値は市場環境によって変わります。アジア時間の静かな局面では、1.5 pip のしきい値で十分にフィルタできるかもしれません。一方、ロンドンオープンでは、同じしきい値だと高い割合のレイテンシアーティファクトが通ってしまいます。固定しきい値は常に妥協です。
シンプルなフィルタは、シグナル検出時点の市場文脈に関係なく、しきい値を超えたすべての乖離を同一に扱います。急速な価格イベントによって生じた3 pip のレイテンシアーティファクトと、本物の3 pip のLP乖離を区別できません。
fast feed filter は、執行ブローカー2社よりも速い第三の独立データソースを導入し、検出された各乖離の分類機構として使います。大きさだけでフィルタするのではなく、検出された乖離が参照フィード上の価格変動イベントと一致しているかを fast feed で判定します。一致していればそのシグナルはレイテンシ起因として破棄され、一方で参照フィードが静穏であれば、本物のLP差として分類され、執行が進みます。
各シグナル検出イベントにおける分類ロジック:
以下の条件をすべて満たす場合、シグナルは本物のLP乖離と分類される:
(1) FastFeed.RateOfChange(last 100ms) < MovementThreshold
— 直前のウィンドウで参照フィードが大きく動いていない
— 方向性のある価格イベントが現在市場を伝播していない
(2) FastFeed.LastTickAge < StalenessThreshold
— 参照フィードがアクティブに更新されている(古い状態でも切断でもない)
— 分類チェックがライブデータに基づいていることを保証する
(3) Discrepancy.Persistence > MinPersistenceWindow
— 乖離が少なくとも N ミリ秒存在している
— 本物のLP乖離は持続し、レイテンシアーティファクトは30〜100msで解消する
いずれかの条件を満たさない場合、シグナルはレイテンシ起因と分類され、注文は破棄される。
これは主要な分類条件です。高速な参照フィードは、両執行ブローカーよりも速く、どちらのブローカーのクオートが更新される前にグローバル市場イベントを受信します。シグナル検出前のウィンドウで参照フィードに大きな価格変動が見られる場合、その変動が見かけ上の乖離の原因である可能性が高いです。つまり、一方の執行ブローカーのフィードはそのイベントで更新され、もう一方はまだ更新されていないということです。
| パラメータ | 典型値 | 注記 |
|---|---|---|
| MovementThreshold | 主要通貨ペアでは100msあたり0.5〜1.5 pips、ボラティリティの高いペアでは1.5〜3.0 pips | 対象銘柄について、通常時とイベント時における100msあたりの典型的なpip変動を測定して設定する |
| Lookback window | 50〜200ms | 変動イベントを捉えつつ、遅れて続く本物の乖離をマスクしない必要がある。測定したフィード間レイテンシ差から調整する。 |
| Staleness threshold | 500ms〜2,000ms | このウィンドウ内で参照フィードが更新されていない場合、停止している可能性がある。そうした古さの発生中のシグナルは保守的に扱い、破棄するか、フィード再開まで保留する。 |
大きな価格イベント中の5 pip のレイテンシアーティファクトは、その大きさに関係なく fast feed filter によってレイテンシ起因と分類されます。単純なしきい値方式では、しきい値が5 pips未満なら通過してしまいます。fast feed filter は乖離の大きさではなく、市場状態に基づいて分類します。
静かな局面では、参照フィードの変化率は低く、分類はほとんど発火しません。ボラティリティが高い局面では、参照フィードが活発になり、レイテンシアーティファクトを継続的に分類します。このフィルタは、手動調整なしで高リスク局面に自動的に厳しくなります。
単純なしきい値ならブロックされる0.8 pip の本物のLP乖離も、参照フィードが静穏なら fast feed filter を通過します。このフィルタは、小さなレイテンシシグナルを避けるために小さな本物のシグナルを犠牲にしません。各シグナルを市場文脈に基づいて独立に分類します。
十分に調整された導入環境では、fast feed filter はレイテンシ起因の汚染を、未フィルタシグナルの60〜80%から5%未満まで下げます。残る汚染は、価格イベントが変化率しきい値を発火させない程度には遅い一方で、フィード差を生むには十分速いようなエッジケースです。
| フィルタ | レイテンシ拒否率 | 本物シグナル保持率 | 複雑性 | 最適な用途 |
|---|---|---|---|---|
| フィルタなし | 0% — すべて通過 | 100% | なし | 実用不可 — 有害フローは不可避 |
| Difference-to-open のみ | 40–60% | 80–90% | 低 | 初期構成、フィード速度が近いブローカーペア |
| Difference-to-open + persistence | 60–75% | 75–85% | 低 | 改善されたベースラインだが、大きなレイテンシイベントは依然として取り逃す |
| Fast feed filter(完全版) | 90–97% | 85–95% | 高 | 本番アービトラージ、敵対的なブローカー環境 |
本物のLP乖離は、2つのブローカーの流動性プロバイダーが同じ銘柄を異なる価格で提示しているために生じます。これは、各LPが市場をどうモデル化し、在庫をどう管理するかという構造的な違いです。レイテンシ起因の乖離は、一方のブローカーのフィードが市場イベントをより速く受信したために生じます。本物の乖離は取引可能で、200ms〜2,000ms持続します。レイテンシアーティファクトは、遅いフィードが追いつくことで30〜150ms以内に解消し、通常は注文が遅いブローカーに到達する前に消えます。
difference-to-open は、2つのブローカーのクオート間に存在しなければ注文を出さない最小価格乖離しきい値で、単位は pips です。これは、フィードレイテンシアーティファクトが本物のLP乖離より平均して小さい傾向を利用して、レイテンシ起因シグナルをフィルタします。小さなレイテンシシグナルを除去するには有効ですが、高ボラティリティ期には急速な価格変動によって、更新速度の異なるフィード間に大きな見かけ上の乖離が生じるため、大きなレイテンシイベントは捉えられません。
fast feed filter は、両執行ブローカーより速い第三の参照価格フィードを使って、検出された各乖離を注文前に分類します。参照フィードがシグナル検出前のウィンドウで大きな価格変動を示していれば、その乖離はレイテンシ起因と分類されて破棄されます。参照フィードが静穏なら、その乖離は本物のLP差の可能性があると分類され、執行が進みます。これにより、乖離の大きさだけでなく市場状態に基づいて分類できるため、単純なしきい値が見逃す大きなレイテンシイベントも捉えられます。
レイテンシ起因のシグナルは、価格変動イベントのまさにその瞬間に注文を発生させます。ブローカーのリスクシステムは、この集中を技術的フローパターンとして検出します。さらに、レイテンシ起因の取引は一貫して不利な約定と小さな損失での即時撤退を生み、非対称な保有時間分布と P&L 分布を作るため、その口座は技術的エクスプロイトとしてさらに識別されます。いったん分類されると、その口座は劣化した執行を受け、本物の利益が出るLP乖離トレードにも影響が及びます。
グローバル市場イベントの受信速度が、両執行ブローカーよりも実証的に速い第三の価格データソースです。専用のマーケットデータプロバイダー、コロケーションされた価格フィードサービス、または参照フィード専用として使う第三のブローカー口座(ここでは注文を出さない)などが該当します。参照フィードは、ソケット受信時のハードウェアレベルのタイムスタンプを持つ独立した監視スレッドで動作します。参照フィード経由で注文を出すことはなく、分類入力としてのみ使います。
最低でも四半期ごとです。ブローカーのLP関係の変化、フィードインフラの変更、市場ボラティリティレジームの変化に伴って、最適パラメータは変わります。次のような場合は即時の再調整が妥当です: ブローカーがLPまたは価格エンジンを変更したとき、VPSプロバイダーまたはネットワークルーティングの変更がフィードレイテンシに影響したとき、または銘柄のボラティリティに持続的変化が起きたとき。SharpTrader のシグナル単位アトリビューションロギングは、別のオフラインモードなしで継続的な調整に必要なデータを提供します。
Difference-to-open · 高速参照フィードフィルタ · シグナル単位のアトリビューションロギング · FIX API 対応 · 25年にわたるアービトラージ開発