MT5でEA(自動売買プログラム)のバックテストを始めようとしたとき、「スプレッドってどう設定すればいいの?」と迷った経験はありませんか?スプレッドの設定一つで、バックテスト結果が大きく変わってしまうことがあります。実際、固定スプレッドで検証したら素晴らしい成績だったのに、リアルトレードでは全く利益が出ない…という悲しい経験をされた方も少なくありません。
この記事では、MT5のバックテストにおけるスプレッド設定について、初心者の方でも理解できるように丁寧に解説します。スプレッドとは何か、どのように設定すればよいのか、そしてリアルトレードとの乖離を最小限に抑えるためのコツまで、実践的なノウハウをお届けします。この記事を読めば、バックテスト結果をより信頼できるものにし、EAの真の実力を正しく評価できるようになります。
目次
目次
- スプレッドとは何か?バックテストに与える影響
- MT5バックテストにおけるスプレッド設定の仕組み
- 固定スプレッドと変動スプレッドの違い
- 固定スプレッド設定の問題点とリアルとの乖離
- 実践的なスプレッド設定の目安と推奨値
- スプレッド設定以外で注意すべきバックテストのポイント
- バックテストからフォワードテストへの移行方法
- まとめ
スプレッドとは何か?バックテストに与える影響
まず、スプレッドという言葉について確認しておきましょう。スプレッドとは、FXや株式取引において、買値(Ask)と売値(Bid)の差額のことです。この差額は、取引にかかるコストとして、トレーダーが負担する必要があります。
例えば、ドル円の買値が110.00円、売値が109.98円だった場合、スプレッドは0.02円、つまり2銭(2pips)となります。この2pipsが、取引ごとに発生する実質的な手数料のようなものです。
バックテストとは、過去の価格データを使ってEAの性能を検証する作業です。このとき、スプレッドをどう設定するかによって、バックテスト結果は大きく変わります。
- スプレッドを狭く設定しすぎた場合:バックテスト上では利益が出ているように見えても、実際のトレードでは取引コストが高くて利益が出ない可能性があります。
- スプレッドを広く設定しすぎた場合:実際にはもっと良い成績が出せるEAなのに、バックテストでは過小評価されてしまいます。
つまり、バックテストでスプレッドを適切に設定することは、EAの真の実力を正しく評価し、リアルトレードでの成功確率を高めるために不可欠なのです。
MT5バックテストにおけるスプレッド設定の仕組み
MT5のストラテジーテスターでバックテストを行う際、スプレッド設定には主に2つの方法があります。それぞれの特徴を理解しておきましょう。
①固定スプレッドで設定する
固定スプレッドとは、バックテスト期間中、常に同じスプレッド値を適用する方法です。ストラテジーテスターの設定画面で、「スプレッド」の項目に任意の数値(pips単位)を入力することで設定できます。
固定スプレッドのメリットは、設定が簡単で分かりやすいことです。「このEAは3pipsのスプレッドでどのくらいの成績になるか」といった、条件を統一した検証がしやすくなります。
一方で、デメリットもあります。現実の市場では、スプレッドは時間帯や市場の流動性によって常に変動しています。固定スプレッドでは、この変動を再現できないため、リアルトレードとの乖離が生じやすくなります。
②変動スプレッド(カスタムシンボル)を使う
MT5では、ヒストリカルデータに変動スプレッドの情報を含めることも可能です。外部から取得したティックデータや、カスタムシンボルとして作成したデータに、時間ごとのスプレッド変動情報を組み込んでおけば、バックテストでもリアルに近いスプレッド環境を再現できます。
この方法のメリットは、リアルな市場環境に近い検証ができることです。早朝や指標発表時などスプレッドが広がりやすい時間帯の影響も、正確に反映されます。
ただし、データの準備に手間がかかる点がデメリットです。また、MT5のストラテジーテスター上でスプレッド値を設定できなくなるため、複数のスプレッド条件で比較検証したい場合には不向きです。
MT5でのスプレッド設定手順
実際に固定スプレッドを設定する手順を確認しておきましょう。
- MT5を起動し、「表示」メニューから「ストラテジーテスター」を選択します。画面下部にストラテジーテスターのパネルが表示されます。
- 「設定」タブで、テストしたいEA、通貨ペア、時間足、期間などを設定します。これらの基本設定については、別の項目で詳しく解説します。
- 「スプレッド」の項目で、「現在値」または任意の数値を選択します。「現在値」を選ぶと、その時点で接続しているサーバーの現在のスプレッドが使用されます。任意の数値を入力すると、固定スプレッドでのバックテストになります。
- その他の設定を確認し、「スタート」ボタンを押してバックテストを実行します。
スプレッドの入力単位は「ポイント」です。多くのブローカーでは1pips=10ポイントなので、3pipsのスプレッドを設定したい場合は「30」と入力します。ただし、ブローカーや通貨ペアによって異なる場合があるので、事前に確認しておきましょう。
固定スプレッドと変動スプレッドの違い
ここで、固定スプレッドと変動スプレッドの違いを、もう少し詳しく整理しておきましょう。
固定スプレッドの特徴
固定スプレッドは、以下のような特徴があります。
- 設定が簡単:ストラテジーテスターで数値を入力するだけで、すぐにバックテストを開始できます。
- 条件統一が容易:複数のEAや設定を比較する際、スプレッドという条件を揃えやすいため、公平な比較ができます。
- シンプルな検証:「このスプレッドなら勝てる、このスプレッドでは勝てない」といった閾値を見つけやすくなります。
- リアルとの乖離リスク:実際の市場では、スプレッドは時間帯や流動性によって変動するため、固定スプレッドでは現実を正確に反映できません。
変動スプレッドの特徴
変動スプレッド(カスタムシンボルやティックデータ使用)の特徴は次の通りです。
- リアルに近い検証:時間帯ごとのスプレッド変動を反映できるため、実際のトレード環境に近い検証が可能です。
- 早朝・指標時の影響を把握:スプレッドが広がりやすい時間帯でのEAの挙動を正確にシミュレーションできます。
- データ準備が必要:外部からティックデータを取得し、MT5にインポートする手間がかかります。
- 比較検証が難しい:スプレッド条件を統一した複数パターンのテストがしにくくなります。
どちらを選ぶべきか
初心者の方や、まずは手軽にEAの性能を確認したい場合は、固定スプレッドから始めるのがおすすめです。ただし、その際は実際のスプレッドより少し広めに設定することがポイントです。
一方、EAの開発者や、より厳密な検証を行いたい中級者以上の方は、変動スプレッドを使った検証も併用することで、リアルトレードとの乖離をさらに減らすことができます。
固定スプレッド設定の問題点とリアルとの乖離
固定スプレッドでバックテストを行う際に陥りがちな問題について、具体的に見ていきましょう。
平均スプレッドの罠
多くの方が、「平均スプレッドを設定すればリアルに近い結果が得られるだろう」と考えます。確かに、一見合理的に思えますが、ここに落とし穴があります。
例えば、ある通貨ペアの平均スプレッドが1.5pipsだとしましょう。しかし実際には、以下のような変動があります。
- 東京時間:1.0〜1.2pips
- ロンドン・ニューヨーク時間:0.8〜1.0pips
- 早朝(流動性が低い時間):3.0〜5.0pips
- 重要指標発表時:5.0〜10.0pips以上
平均スプレッド1.5pipsで固定してバックテストを行うと、早朝や指標発表時のスプレッド拡大の影響を過小評価してしまいます。特にスキャルピングEAや短期トレードを行うEAの場合、スプレッド拡大時の損失が大きく、バックテストとリアルトレードで結果が大きく乖離する原因になります。
スプレッドゼロでのバックテスト
外部から取得したヒストリカルデータをそのままインポートした場合、スプレッド情報が含まれていないことがあります。この場合、MT5のストラテジーテスター上でスプレッド値を設定できず、スプレッドゼロでバックテストが実行されます。
スプレッドゼロでは、取引コストが一切考慮されないため、バックテスト結果は極めて楽観的なものになります。このような結果を信じてリアルトレードを始めると、全く利益が出ないどころか、大きな損失を被る可能性があります。
ヒストリカルデータをインポートする際は、必ずスプレッド情報が含まれているか、またはストラテジーテスターでスプレッド設定が可能かを確認しましょう。
MT4とMT5でのバックテスト結果の違い
MT4とMT5では、バックテストのアルゴリズムやデータの扱い方が異なるため、同じEAでも結果が異なることがあります。特にスプレッド設定の仕組みに違いがあり、MT4では変動スプレッドの再現が難しかった一方、MT5ではティックデータを活用することで、よりリアルに近い検証が可能になりました。
ただし、MT5の方が必ずしも優れているというわけではなく、データの品質や設定方法によって結果は左右されます。どちらを使う場合でも、スプレッド設定には十分な注意が必要です。
実践的なスプレッド設定の目安と推奨値
では、実際にバックテストを行う際、スプレッドはどのように設定すればよいのでしょうか。ここでは、実践的な目安と推奨値をご紹介します。
基本方針:実測値より広めに設定する
固定スプレッドでバックテストを行う場合の基本方針は、実際のスプレッドより1〜2pips広めに設定することです。これにより、早朝や指標発表時のスプレッド拡大、スリッページ(注文価格と約定価格のズレ)など、実際のトレード環境で発生する不利な要因を、ある程度カバーできます。
例えば、あなたが使用するブローカーのドル円の平均スプレッドが1.0pipsだとします。この場合、バックテストでは2.0〜3.0pipsで設定することをおすすめします。
通貨ペア別の推奨スプレッド値
通貨ペアによって、標準的なスプレッドは異なります。以下は一般的な目安です(海外の標準的なブローカーを想定)。
| 通貨ペア | 一般的な平均スプレッド | バックテスト推奨値 |
|---|---|---|
| USD/JPY(ドル円) | 0.3〜1.0pips | 2.0〜3.0pips |
| EUR/USD(ユーロドル) | 0.2〜1.0pips | 2.0〜3.0pips |
| GBP/USD(ポンドドル) | 1.0〜2.0pips | 3.0〜4.0pips |
| AUD/USD(豪ドル米ドル) | 0.5〜1.5pips | 2.5〜3.5pips |
| USD/CAD(ドルカナダドル) | 1.0〜2.0pips | 3.0〜4.0pips |
| EUR/JPY(ユーロ円) | 1.0〜2.0pips | 3.0〜4.0pips |
| GBP/JPY(ポンド円) | 2.0〜3.0pips | 4.0〜5.0pips |
これらの値はあくまで目安です。あなたが実際に使用するブローカーのスプレッドを確認し、それをベースに調整してください。
スプレッドの実測方法
ブローカーの公式サイトには平均スプレッドが掲載されていますが、実際のスプレッドは時間帯によって変動します。より正確な値を知るためには、以下の方法で実測することをおすすめします。
- MT5のチャート画面で、気配値表示を開きます。「表示」メニューから「気配値表示」を選択しましょう。
- 確認したい通貨ペアの「Ask」と「Bid」の差を計算します。この差がスプレッドです。
- 数日間、異なる時間帯(東京時間、ロンドン時間、ニューヨーク時間、早朝など)でスプレッドを記録します。エクセルなどにメモしておくと便利です。
- 記録したデータから、平均値、最小値、最大値を算出します。
この実測データをもとに、バックテストのスプレッド設定を決めることで、よりリアルな検証が可能になります。
複数のスプレッド値でテストする
一つのスプレッド値だけでなく、複数のスプレッド条件でバックテストを行うことも重要です。例えば、以下のようなパターンでテストしてみましょう。
- 楽観的なケース:平均スプレッド(例:1.0pips)
- 現実的なケース:平均+1pips(例:2.0pips)
- 悲観的なケース:平均+2pips(例:3.0pips)
すべてのケースで安定した利益が出るEAであれば、リアルトレードでも信頼できる可能性が高くなります。逆に、スプレッドが少し広がっただけで利益が消えてしまうEAは、実戦では使いにくいと判断できます。
長期バックテストで検証する
スプレッド設定の妥当性を確認するためには、長期間のバックテストが有効です。最低でも3年、できれば5年〜10年分のデータで検証することをおすすめします。
長期間のバックテストを行うことで、さまざまな市場環境(トレンド相場、レンジ相場、高ボラティリティ、低ボラティリティなど)での性能を確認できます。また、スプレッド設定が適切かどうかも、長期間の結果を見ることで判断しやすくなります。
スプレッド設定以外で注意すべきバックテストのポイント
バックテストでは、スプレッド設定だけでなく、他にも重要な設定項目があります。これらを適切に設定することで、より信頼性の高い検証が可能になります。
モデルの設定(ティックモデル)
MT5のストラテジーテスターには、「モデル」という設定項目があります。これは、バックテストでどの程度詳細にデータを再現するかを決めるものです。
- 全ティック:最も精度が高く、すべてのティックデータを使用します。時間はかかりますが、最も信頼性の高い結果が得られます。
- 1分足OHLC:1分足の4本値(始値・高値・安値・終値)を使用します。全ティックより高速ですが、精度はやや落ちます。
- 始値のみ:最も高速ですが、精度は低くなります。簡易的な検証にのみ使用すべきです。
スキャルピングEAや短期トレードのEAをテストする場合は、必ず「全ティック」を選択しましょう。長期トレードのEAであれば、「1分足OHLC」でも十分な場合があります。
初期証拠金(入金額)の設定
バックテストの初期証拠金は、あなたが実際にトレードで使う予定の金額に合わせましょう。初期証拠金が異なると、ロット数や資金管理の計算結果も変わってしまいます。
例えば、実際には10万円でトレードする予定なのに、バックテストを100万円で行うと、リスク設定やドローダウンの感覚が現実とズレてしまいます。
フォワード期間の設定
MT5のストラテジーテスターには、フォワード期間という設定があります。これは、バックテスト期間の最後の一部を、パラメータ最適化の検証用に残しておく機能です。
例えば、2015年〜2025年の10年間でバックテストを行う場合、フォワード期間を20%に設定すると、2015年〜2023年がバックテスト期間、2023年〜2025年がフォワード検証期間として扱われます。
パラメータ最適化を行う際は、最適化期間で良い結果が出ても、フォワード期間で同様に機能するかを確認することで、カーブフィッティング(過去データへの過剰適合)を防げます。
スリッページと約定品質
バックテストでは完璧に約定される前提になっていますが、リアルトレードではスリッページ(注文価格と実際の約定価格のズレ)や、約定拒否が発生することがあります。
残念ながら、MT5のストラテジーテスターではスリッページを直接シミュレーションする機能は限られています。そのため、スプレッドを広めに設定することで、間接的にスリッページのコストもカバーする考え方が一般的です。
また、リアルトレードに移行する際は、バックテスト結果だけでなく、ブローカーの約定品質(約定スピード、約定率、スリッページの発生頻度など)も事前に調査しておくことが大切です。
バックテスト結果の見方
バックテストが完了したら、結果を正しく評価する必要があります。特に注目すべき指標は以下の通りです。
- 総損益:最も分かりやすい指標ですが、これだけで判断するのは危険です。
- プロフィットファクター:総利益÷総損失で算出される値。1.5以上が目安とされています。
- 最大ドローダウン:資金が最も減少した割合。これが大きいと、リアルトレードで精神的に耐えられない可能性があります。
- 勝率:勝ちトレードの割合。ただし、勝率が高ければ良いというわけではありません。
- リスクリワード比:平均利益÷平均損失。この値が高いほど、少ない勝率でも利益を出せます。
- トレード回数:サンプル数が少なすぎると、統計的に信頼できません。最低でも100回以上のトレードがあることが望ましいです。
これらの指標を総合的に見て、EAの性能を判断しましょう。
バックテストからフォワードテストへの移行方法
バックテストで良好な結果が得られたとしても、すぐにリアルトレードに移行するのはリスクが高すぎます。ここでは、バックテストからリアルトレードへの段階的な移行方法をご紹介します。
デモ口座でのフォワードテスト
まず、デモ口座でフォワードテストを行いましょう。デモ口座は、仮想資金を使ってリアルタイムの市場で取引できる環境です。バックテストでは見えなかった問題点(約定の遅延、スリッページ、サーバーの不安定性など)を発見できます。
デモ口座でのフォワードテストは、最低でも1〜3ヶ月間は継続することをおすすめします。短期間では、たまたま良い結果になっただけという可能性があるためです。
少額リアル口座でのテスト
デモ口座で安定した結果が得られたら、次は少額のリアル口座でテストします。実際のお金を使うことで、心理的なプレッシャーや、デモ口座では気づかなかった細かい問題点が見えてきます。
最初は、失っても問題ない金額(例:数万円程度)から始めましょう。ロット数も、最終的に使いたいロット数の10分の1程度に抑えることをおすすめします。
継続的なモニタリング
リアルトレードを開始した後も、継続的なモニタリングが欠かせません。以下の点を定期的にチェックしましょう。
- バックテスト結果との乖離:プロフィットファクター、最大ドローダウン、勝率などが、バックテストと大きく乖離していないか確認します。
- 市場環境の変化:市場環境が変わると、EAの性能も変化することがあります。定期的にバックテストをやり直し、現在の市場環境でも機能するか検証しましょう。
- スプレッドの変化:ブローカーのスプレッドは、時期によって変動することがあります。スプレッドが広がっている場合は、EAの設定を見直す必要があるかもしれません。
バックテストとリアルの乖離を最小化するために
バックテストとリアルトレードの乖離を最小限に抑えるためのチェックリストをまとめておきます。
- スプレッドは実測値より1〜2pips広めに設定する
- 複数のスプレッド値でバックテストを行い、すべてのケースで利益が出るか確認する
- 長期間(3年以上)のバックテストを実施する
- モデルは「全ティック」を使用する(特にスキャルピングEA)
- 初期証拠金は実際にトレードする予定の金額に合わせる
- デモ口座で1〜3ヶ月フォワードテストを行う
- 少額リアル口座でさらにテストする
- リアルトレード開始後も継続的にモニタリングする
これらのステップを踏むことで、バックテストの信頼性を高め、リアルトレードでの成功確率を大きく向上させることができます。
まとめ
MT5のバックテストにおけるスプレッド設定について、基礎から実践的なノウハウまでを詳しく解説してきました。最後に、重要なポイントをおさらいしておきましょう。
- スプレッドはバックテスト結果に大きな影響を与える取引コストであり、適切な設定がEAの真の性能評価には不可欠です。
- MT5では固定スプレッドと変動スプレッドの2つの設定方法があり、初心者は固定スプレッドから始め、実測値より1〜2pips広めに設定することが推奨されます。
- 固定スプレッドの平均値だけでは不十分で、早朝や指標発表時のスプレッド拡大を考慮する必要があります。
- 複数のスプレッド条件でテストし、すべてのケースで安定した利益が出るかを確認することで、リアルトレードとの乖離を減らせます。
- バックテストからリアルトレードへは段階的に移行し、デモ口座・少額リアル口座でのフォワードテストを経てから本格運用することが成功への近道です。
スプレッド設定は地味な作業に思えるかもしれませんが、この部分を丁寧に行うかどうかで、EAの運用成績は大きく変わってきます。今回ご紹介した方法を実践して、信頼性の高いバックテストを行い、リアルトレードでの成功につなげてください。