本文へスキップ
検証・バックテスト

可変スプレッドでバックテストする方法|固定スプレッドの何が問題か

固定スプレッドのバックテストが実運用とずれる理由、MT4とMT5それぞれで可変スプレッドを再現する方法、そしてスプレッド倍率テストの具体的な手順と判定の目安を、数値例つきで解説します。

執筆: Redington 公開: 最終更新:

PR当ページにはプロモーション(アフィリエイト広告)が含まれます。順位・評価は公開の評価基準に基づき編集部が独立して決定しています。EAの成績はすべて過去の検証結果であり、将来の利益を保証するものではありません。海外FX業者は金融庁未登録です。

この記事の目次
  1. 結論:固定スプレッドは比較用、判断には倍率テストが要る
  2. 固定スプレッドの何が問題なのか
    1. 問題1:コストの過小評価が累積する
    2. 問題2:スプレッドは一定ではない
    3. 問題3:どちらに歪むかは事前に分からない
  3. MT5で可変スプレッドを使う方法
  4. MT4で可変スプレッドを使う方法
  5. スプレッド倍率テストの手順
    1. 判定の目安
  6. スプレッドの影響が大きいEA・小さいEA
  7. スプレッド以外のコストも同時に見る
  8. よくある失敗
  9. まとめ

バックテストで最も結果を歪めるのはスプレッドの設定です。MT4の標準テスターは固定スプレッドしか扱えず、そこに実運用より狭い値を入れると、コストを構造的に過小評価します。この記事では、固定スプレッドの何が問題なのか、可変スプレッドをどう再現するのか、そして「スプレッドが変わったときに壊れないか」をどう確認するのかを整理します。

結論:固定スプレッドは比較用、判断には倍率テストが要る

✅ 結論

固定スプレッドのバックテストは、EA同士を同じ条件で並べるベンチマークとしては有用です。しかし実運用の期待値としては使えません。判断に使うなら、①可変スプレッドで1本、②想定平均値の固定で1本、③その1.5倍で1本、④2倍で1本、の合計4本を並べて、どこで損益が反転するかを見てください。2倍で壊れるEAは、指標時やロールオーバー時に実運用でも同じことが起きます。

固定スプレッドの何が問題なのか

問題1:コストの過小評価が累積する

具体的な数字で見ます。EURUSDで平均スプレッドを0.5pips過小評価しているとします。年間1,000トレードのEAなら、誤差は「1,000回 × 0.5pips = 500pips」です。1ロット運用で1pipsあたり約1,000円とすると、年間約50万円の誤差になります。

これは多くのEAの年間利益そのものと同じオーダーです。つまり、スプレッド設定を0.5pips間違えるだけで、勝っているEAが負けているEAに変わり得ます。

問題2:スプレッドは一定ではない

実際のスプレッドは時間帯とイベントで大きく変動します。

局面

実際のスプレッドの傾向

東京時間の日中

比較的安定。メジャー通貨は狭い

ロンドン・NY時間の重なり

最も狭くなりやすい

日本時間の早朝(ロールオーバー前後)

大きく拡大する。数倍になる業者もある

経済指標発表の直後

一時的に数倍〜十数倍になることがある

年末年始・連休

流動性低下により拡大

固定スプレッドのテストは、このすべてを平均1つの値で置き換えます。早朝やロールオーバー時に取引するEA、指標を狙うEAでは、この置き換えが結果を根本的に変えます。

問題3:どちらに歪むかは事前に分からない

「固定スプレッドのほうが甘い結果が出る」とは限りません。取引が広いスプレッドの時間帯に集中しているEAなら、可変スプレッドのほうが著しく悪化します。逆に、狭い時間帯にしか取引しないEAなら、可変のほうが良く出ます。

MQL5フォーラムでも、同一条件で可変スプレッドの結果が固定・現行スプレッドより「何倍も良く」出るケースが報告されています(参考: MQL5 Forum 339839 、2026年9月24日確認)。どちらに歪むかが事前に分からないからこそ、両方回す必要があります。

MT5で可変スプレッドを使う方法

MT5は標準で可変スプレッドを扱います。公式ヘルプには次のように記載されています。

「スプレッドはモデル化されず、ヒストリカルデータから取得される」
「ヒストリカルデータにスプレッドが無い、または不正な場合は、(生成時点で)最後に判明していたスプレッドが使われる」
「ストラテジーテスターでは、スプレッドは常に変動(floating)として扱われる」

出典: MT5 Help - Testing Features (2026年9月24日確認)

手順は単純です。

  1. 「表示」→「ストラテジーテスター」(Ctrl+R)でテスターを開きます。
  2. 「モデル」で「Every tick based on real ticks(実ティックに基づく全ティック)」を選びます。
  3. 期間と銘柄を指定して実行します。

⚠️ 注意

公式の説明にある通り、ティックデータにスプレッド情報が無い期間は「最後に判明していたスプレッド」が引き伸ばされます。つまりデータ欠損区間では実態とずれます。長期のバックテストでは、業者のティックが実際に存在する期間がどこまでかを確認してください。モードごとの違いはMT5のリアルティックと疑似ティックの違いで解説しています。

MT4で可変スプレッドを使う方法

MT4の標準テスターは固定スプレッドのみです。公式ヘルプでも「『Spread』フィールドでテスト用のカスタムスプレッドを設定できる」(デフォルトは現在のシンボルのスプレッド)と説明されており、変動させる仕組みはありません。

可変スプレッドを再現するには、次のいずれかが必要です。

  1. Tickstoryの「可変スプレッドの埋め込み(Embed variable Spread)」を使う。 Dukascopyのティックデータに記録されたスプレッドを.fxtに埋め込んでエクスポートします。無料のLite版でも基本的なエクスポートは可能です。手順は Tickstoryの使い方 にあります。
  2. Tick Data Suite(TDS)を導入する。 MT4本体にパッチを当て、テスターで「実スプレッド(Real Spreads)」を有効にします。スリッページと手数料も同時に設定できます。詳細は Tick Data Suiteの使い方と価格 へ。

💡 ポイント

どちらを使う場合も、データ元は自分の業者ではありません(多くの場合Dukascopy)。スプレッドの水準そのものが自分の口座とは違います。可変スプレッドを再現する目的は「絶対値を当てること」ではなく、「スプレッドが変動する環境でロジックが耐えるかを見ること」だと理解してください。

スプレッド倍率テストの手順

最も費用対効果が高いストレステストです。外部ツールがなくても実行できます。

  1. 実口座の平均スプレッドを調べる。 業者の公表値ではなく、自分の口座タイプの実測平均が望ましいです。業者によっては平均スプレッドを公開しています。
  2. その値を固定スプレッドとして1本目を回す。 これが基準です。
  3. 1.5倍で2本目を回す。 例:平均1.0pipsなら1.5pips。
  4. 2.0倍で3本目を回す。 例:2.0pips。
  5. 往復手数料を追加して4本目を回す。 RAW/ECN口座想定なら必須です。$6/ロットなら0.6pips相当を上乗せします。
  6. 4本の結果を並べ、どこで損益が反転するかを確認する。

判定の目安

結果

読み方

2倍でもプロフィットファクター1.2以上を保つ

コスト耐性が高い。優先的に検討できる

2倍でPFが1.0前後まで落ちる

実運用ではスプレッド拡大局面で負ける可能性が高い

1.5倍で損益が反転する

スプレッドに依存したロジック。実運用は困難

期待利得がスプレッド+手数料と同程度

コストが少し変わるだけで破綻する。要注意

期待利得(1トレードあたり平均損益)がスプレッド+手数料と同じオーダーのEAは、コスト変動に対して構造的に脆弱です。 指標の見方は EA成績指標チェッカー 、 プロフィットファクターの目安 も参考にしてください。

スプレッドの影響が大きいEA・小さいEA

EAのタイプ

スプレッドの影響

必要な対応

スキャルピング(数pips狙い)

極めて大きい。損益と同じオーダー

可変スプレッド必須。倍率テストも必須

早朝・ロールオーバー時に取引

極めて大きい。拡大局面に直撃する

可変スプレッド必須

指標発表を狙う

極めて大きい。スリッページも併発

可変スプレッド+スリッページ想定が必須

デイトレ(数十pips狙い)

中程度

倍率テストで確認

スイング(数百pips狙い)

相対的に小さい

倍率テストは行う。スワップの影響のほうが大きい

スキャルピング型の検証は特に難易度が高く、 スキャルピングEAの特徴とリスク も併せて確認してください。

スプレッド以外のコストも同時に見る

スプレッドだけを正確にしても、実質コストの全体像にはなりません。EAが1トレードで支払うコストは、少なくとも次の3つの合計です。

コスト要素

標準テスターでの扱い

実務上の織り込み方

スプレッド

MT4は固定のみ、MT5は可変

平均値+1.5倍・2倍でテスト

往復手数料

MT4は入力欄なし、MT5は口座設定から反映

pips換算して上乗せ($6/ロット = 0.6pips)

スリッページ

MT4/MT5とも一切再現しない

成行主体なら片道0.2〜1.0pipsを別途想定

往復手数料のpips換算は「往復手数料 ÷ 1pipsの価値」で求まります。1pip=$10の通貨ペアなら、$6の往復手数料は0.6pips相当です。

実務的な確認方法は単純です。「1トレードあたりXpipsのコストを追加した場合に、期待利得がプラスを保てるか」を X = 0.5 / 1.0 / 2.0 で確認する。 これで壊れるEAは、スプレッドを可変にしても結論は変わりません。ロットと必要証拠金の関係は ロット・必要証拠金計算機 でも確認できます。

よくある失敗

  • 業者の「最小スプレッド」をそのまま入れる。 最小値は最良の瞬間の値であり、平均ではありません。
  • 可変スプレッドにして成績が良くなったことだけを根拠にする。 倍率テストとセットで見なければ、コスト過小評価と区別できません。
  • 手数料を入れ忘れる。 RAW/ECN口座では往復0.2〜1.0pips相当のコストが発生します。
  • スプレッドだけ直してスリッページを無視する。 MT4/MT5の標準テスターはスリッページを一切シミュレートしません。成行エントリー主体のEAなら片道0.2〜1.0pips程度の悪化を別途織り込んで考える必要があります。
  • 固定スプレッドの結果を販売ページの数字と比較する。 条件が違うものを並べても比較になりません。条件が書かれていないバックテストの扱いは バックテストしか公開していないEAの注意点 を参照してください。

まとめ

固定スプレッドのバックテストは、比較のためのベンチマークとしては意味があります。しかし実運用の期待値としては使えません。MT5なら実ティックモードで自動的に可変になり、MT4ならTickstoryかTick Data Suiteが必要です。

そして、ツールを入れるより先にできることがあります。スプレッドを1.5倍・2倍にして回すだけで、そのEAのコスト耐性は分かります。 ここで壊れるEAは、可変スプレッドで検証しても結論は変わりません。

次は モデリング品質90%と99.9%の違い でデータ品質の意味を確認し、 バックテストとリアルが乖離する7つの原因 で残りの差を把握してください。全体の手順は MT4/MT5バックテストのやり方 にまとめています。

よくある質問

Q.MT4で可変スプレッドのバックテストはできますか?
標準のストラテジーテスターでは固定スプレッドしか使えません。Tick Data Suite でMT4にパッチを当てるか、Tickstoryの「可変スプレッドの埋め込み」オプションでエクスポートした.fxtを使う必要があります。どちらも外部ツールが前提になります。
Q.MT5は可変スプレッドに対応していますか?
対応しています。MT5公式ヘルプには「スプレッドはモデル化されず、ヒストリカルデータから取得される」「ストラテジーテスターでは、スプレッドは常に変動として扱われる」と記載されています。実ティックモードで検証すれば可変スプレッドは自動的に反映されます。
Q.バックテストのスプレッドは何pipsに設定すべきですか?
単一の正解はありません。最低でも実口座の平均スプレッド以上を入れ、さらに1.5倍・2倍でも回して損益がどう変わるかを確認します。固定値でのテストは比較用のベンチマークであり、それ単独で実運用の期待値とみなすことはできません。
Q.可変スプレッドにしたら成績が良くなりました。信じていいですか?
慎重に見てください。平均スプレッドが設定していた固定値より狭い時間帯が多ければ、結果は良くなります。それが実力なのか、コスト過小評価なのかを切り分けるために、スプレッド2倍のストレステストを必ず併せて実行してください。

関連記事