【開発録】バックテストの「幻の約定」。テスト環境とリアル口座で生じる決定的な乖離
システムトレードの開発において、バックテストのレポート上で非の打ち所がない資産曲線を描いたシステムが、フォワードテストやリアル口座での実稼働に移行した途端、全く機能しなくなりドローダウンを引き起こす。 この事象に直面した際、多くの開発者は「最適化が足りなかった」「相場のボラティリティが変化した」とロジックの内部に原因を求める傾向がある。
しかし、プロセスデザインエンジニアの視点から言えば、この致命的な乖離の根本原因はロジックのパラメーターにあるのではない。システムが「テスト環境という仮想空間においてのみ成立する、物理的に実行不可能なアーキテクチャ」で構築されているという、構造的な欠陥に起因しているのである。
本稿では、バックテストツール特有の仕様がもたらす「幻の約定」のメカニズムと、実行環境の物理的制約を無視した「机上の空論」を見抜くための視座について論理的に解剖する。
1. 「ティック補間」が生成する幻の約定履歴
バックテストとリアル口座の結果が乖離する最大の要因の一つが、テスト環境における価格データの生成メカニズム、すなわち「ティック補間」である。
一般的なバックテストツールは、処理の軽量化を目的として、1分足などのヒストリカルデータが持つ「始値・高値・安値・終値」の4つの価格情報のみを基準点とする。そして、その4点間を埋める微細な値動き(ティック)については、ツール内部のアルゴリズムが「仮想的な価格の軌跡」としてランダム、あるいは一定の法則に基づいて補間・生成しているに過ぎない。
この仕様は、システム設計において極めて重大なバグを誘発する。 撤退ライン(ストップロス)と利益確定ライン(テイクプロフィット)の設定幅が極端に狭いシステムの場合、テスト環境内部では「生成された架空の値動き」の中で、先に利益確定ラインに到達したと判定されるケースが多発する。現実の相場においては、先に撤退ラインを刈り取ってから反転していたはずの局面であっても、テストツール上では「見事な勝利」として記録されてしまうのである。
これが「幻の約定」である。この仮想の約定履歴によって不自然に底上げされた勝率やプロフィットファクターは、現実の相場構造(エッジ)を捉えたものではなく、単なるテストツールの「計算上のバグ」を抽出しているに過ぎない。
2. 実行環境における「物理的遅延」の忘却
テスト環境が抱えるもう一つの致命的な欺瞞は、「物理的遅延(レイテンシ)と約定拒否の不在」である。
バックテストの空間においては、ロジックが発火した瞬間、遅延ゼロ・スリッページ(滑り)ゼロで、希望した価格のまま完璧に注文が処理される。しかし、現実の取引インフラにおいて、これは物理的にあり得ない現象である。 ローカルPCやVPSからブローカーのサーバーへ注文パケットが到達し、それがリクイディティプロバイダー(LP)を通じて市場でマッチングされるまでには、不可避の通信時間と処理時間が存在する。
特に流動性が低下しスプレッドが拡大する局面や、突発的な価格変動が起きている最中においては、この物理的遅延がスリッページという明確な「損失」となって牙を剥く。遅延ゼロを前提としてミリ秒単位の優位性を競うようなアーキテクチャは、現実のインフラ環境に実装された瞬間、スプレッドとスリッページの摩擦係数によってその優位性を完全に削り取られる。 これはプログラミングコードの美しさの問題ではない。「インフラの物理的制約に対する設計上の敗北」である。
3. 乖離を前提としたプロセスデザインの原則
私はプログラマーではない。言語の記述スキルや、仮想空間でのみ成立するスコアメイクには一切の価値を見出していない。プロセスデザインエンジニアとして追及するのは、そのシステムが現実の過酷なインフラ環境と不確実な相場において「物理的に生存可能か」という堅牢性(ロバストネス)のみである。
真に実行可能なシステムをデザインするためには、ティック補間による幻の約定や、通信遅延によるスリッページといった「テストと現実の乖離(ノイズ)」が必ず発生することを前提条件として組み込まなければならない。 そのためには、まず「ナンピン」や「マーチンゲール」といった、含み損に耐えることを前提とした設計思想をアーキテクチャから完全に排斥する。現実の乖離によって発生した想定外の損失を、さらなるリスクの増大(ポジションの追加)で相殺しようとする行為は、破綻リスクを未来へ先送りする最も愚かな欠陥構造である。
絶対的な生存性を担保するための原則は、単一ポジションの保有と、システムレベルでの明確な撤退ライン(SL)の義務化である。そして、スプレッド拡大期などの実行環境が不利な状況下においては、構造的にエントリーを見送るフィルターを厳格に機能させる。現実の物理的制約というノイズを吸収し、それでもなお残る強固な優位性のみを刈り取るプロセスが必要なのである。
結論:机上の空論を排し、物理的生存性を担保せよ
バックテストという温室の中で、架空のティックと遅延ゼロの環境下で最適化されたシステムは、実戦の相場においては何の防御力も持たない「机上の空論」である。
システムトレードの真の目的は、仮想空間で完璧なレポートを作成することではない。物理的な通信遅延やスリッページが交錯する過酷な現実環境において、自らの資金を守り抜き、確実な優位性を抽出することである。 我々Semura Lab.は、机上の空論で構築されたブラックボックスの稼働を断固として推奨しない。常にトレードロジックの誠実性を厳格に監査し、現実環境で生き残るためのプロセスデザインを最優先に追求し続ける。
幻の約定に依存した脆弱なロジックを捨て、感情を排除し、単一ポジションと徹底した撤退管理を前提とした堅牢な構造へと、システムそのものを根本からデザインし直さなければならない。