MT4のバックテストで良い成績が出ても、リアル口座では同じ結果にならないことがあります。
これはEAのロジックが間違っているというより、検証環境とリアル環境の違い(スプレッド、スリッページ、約定条件、値動きの再現性など)が成績に影響するためです。
そこで本記事では、代表的な検証環境ごとに「リアル口座とのズレやすいポイント」を表にまとめました。
| リアル比の差分項目 | MT4標準テスター+一般的ヒストリカル | MT4+TDS | MT4デモ口座 |
|---|---|---|---|
| スプレッド | ×:スプレッドは固定(一定)として扱われ、リアルの「広がる/狭まる」は再現されない。そのため成績が良く見えやすい。 | △〜○:正しくTDS設定すれば、スプレッド変動を再現でき、リアル口座に近づけられる。 | ○:スプレッドは動くが、リアル口座と同じ条件とは限らない(サーバ/口座条件が異なる場合がある)。 |
| スリッページ | ×:スリッページは発生しない(0として扱われる)。そのためリアル口座より都合よく約定しやすい。 | △〜○:正しくTDS設定すれば、スリッページ(価格のズレ)を再現でき、リアル口座に近づけられる。 | ○:スリッページは起きるが、リアル口座と同じ挙動とは限らない(サーバ/約定条件が異なる場合がある)。 |
| 約定拒否 | ×:約定拒否は発生しない前提で処理される。そのためリアル口座の不利な条件が反映されない。 | △:正しくTDS設定すれば遅延や滑りはリアル口座に近づけられるが、約定拒否まで完全に同じにはしにくい。 | ○:本番に近い挙動になることもあるが、リアル口座と同じ約定条件とは限らない(デモ用に条件が異なる場合がある)。 |
| スワップ | ×:スワップはシミュレーションできない(標準レポートに表示されず、検証できない)。 | △:スワップはTDS設定可能であるが、過去スワップまで再現するものではない。 | △〜○:リアル口座と近いこともあるが、同一とは限らない(デモ用にスワップ条件が異なる場合がある)。 |
| 価格の再現性(値動き) | ×:細かい動きが再現されず、ヒゲや急変の出方がリアル口座とズレる。その結果、SL/TPの当たり方や勝ち負けが変わることがある。 | ○:ティックデータで細かい動きを再現でき、リアル口座に近い。 | ○:リアル口座に近い値動きになりやすいが、配信条件が同一とは限らない(サーバ等で差が出る)。 |
| ロット制約(最小/最大・同時保有/発注上限) | ×:口座固有の制約(同時保有数、発注上限、最大ロット上限など)が再現されない。そのため、複数ポジ・増し玉・複利でロットが膨らむEAは結果がズレる。 | △:ティック/約定は近づけられるが、ロット制約そのものはブローカー条件に依存する。リアル口座の制約に合わせてEA側で上限(最大ロット、最大ポジ数など)を設ける必要がある。 | ○:ロット制約はリアル口座と同様にかかる。 |
| 注文の距離制限(ストップレベル/フリーズレベル) | ×:リアル口座にある「価格から○pips以内にSL/TPを置けない」「発注/更新できない」などの距離制限が再現されないことがある。そのため、スキャルやトレーリング等(SL/TPを頻繁に動かすEA)は結果がズレる。 | △:約定面は近づけられるが、距離制限の厳しさはブローカー条件に依存する。リアル口座のストップレベル/フリーズレベルを前提にEA側の発注ロジックを作る必要がある。 | ○:距離制限はリアル口座と同様にかかる。 |
| 時間の再現性(サーバ時刻/夏時間DST) | ×:時間帯・曜日・指標時刻など「現地時間(ロンドン/NY等)基準の時間条件」を使うEAの場合、標準テスターではDSTを考慮した時刻再現ができず、エントリー時刻がズレる。必要に応じてEA側でDST補正が必要。 | △:時間帯・曜日・指標時刻など時間条件を使うEAの場合、サーバ時刻/DST前提やEA側ロジックが合っていないとズレる。TDS設定だけで解決しない。 | ○:DST(夏時間)の扱いはリアル口座と同一である。(サーバ時間の遅延など、秒単位の微小なズレは起こり得る) |
