MT5ストラテジーテスターのモデルの選び方|5種類の違い

MT5のストラテジーテスターは Ctrl+R で開き、EA・銘柄・時間足・期間・モデルを選んで「開始」を押すと、過去のデータでEAを動かせます。

結果を大きく左右するのがモデル(ティックの作り方)です。MT5には5種類あり、速いモデルほど値動きを粗く再現します。「始値のみ」で良い結果が出ても、本番で同じになるとは限りません。この記事では、5つのモデルの違いと、時間で動くEAを検証する時の注意点を説明します。

(確認環境:MetaTrader 5 / Windows 11。画面の表記は MT5 本体に含まれる文字列、モデルの動きは MetaTrader 5 公式ヘルプと MQL5 公式リファレンスで確認しています)

ストラテジーテスターの開き方と基本の手順

  1. Ctrl+R(MT5本体の表記「ストラテジーテスターの表示切り替え, Ctrl+R」)でテスターを開きます
  2. 検証するEAを選びます
  3. 銘柄と時間足、期間を選びます
  4. 「モデル:」を選びます(次の章)
  5. 必要ならEAのパラメータを入れ、「開始」を押します
  6. 終わったら、結果・グラフ・レポートのタブで成績を見ます

売買の様子をチャートで見たい時は、「チャート、指標、取引を表示するビジュアルモード」にチェックを入れます。

検証に使うヒストリカルデータが足りないと、期間の途中から結果が始まります。データの上限についてはMT5のヒストリカルデータが足りない時を確認してください。

5つのモデルの違い

モデル(MT5本体の表記) ティックの作り方(公式ヘルプ) 向いている使い方
全ティック 1分足をもとに、始値・高値・安値・終値と途中のティックも作る 細かい値動きに反応するEAの検証
リアルティックに基づいたすべてのティック 業者のサーバーに残っている実際のティックを使う 最も本番に近い検証(データがある期間だけ)
1 分足 OHLC 1分ごとに始値・高値・安値・終値の4つだけを作る 1分より細かい動きを使わないEAの、速い検証
始値のみ 選んだ時間足の足の始値でだけ OnTick が動く 足が確定してから判断するEAの、ごく速い検証
数学的計算 ティックを作らない。OnInit・OnTester・OnDeinit だけが呼ばれる 相場データを使わない計算の最適化

公式ヘルプでは、1時間足を「1 分足 OHLC」で検証すると、OnTick が1分間に4回(始値・高値・安値・終値の時)呼ばれると説明されています。1分の中で「高値を付けてから安値」か「安値を付けてから高値」かは再現されないため、損切りと利確が同じ1分の中に入る取引では、結果が実際と逆になることがあります。

「始値のみ」は、選んだ時間足より短い時間足のデータを使えず、「ランダム遅延」の設定も使えません(公式ヘルプ)。足の途中で決済・損切りをするEAを「始値のみ」で検証すると、足の途中の値動きが無いことになり、成績が良く見えやすくなります。

モデルの選び方

  1. まず「始値のみ」か「1 分足 OHLC」で、大まかに動くかを確認する
  2. 良さそうな設定が見つかったら、「全ティック」か「リアルティックに基づいたすべてのティック」で同じ期間をもう一度検証する
  3. 速いモデルと細かいモデルで成績が大きく違う時は、細かい方を信じる

時間で動くEAを検証する時の注意

決まった時刻や、一定時間ごとに動くEAは、テスターの中での時計の進み方に注意が必要です。MQL5の公式リファレンスに次の説明があります。

  • OnTimer は、モデルに関係なく呼ばれる。例として、4時間足を「始値のみ」で検証し、1秒ごとのタイマーを使うと、OnTick は足ごとに1回、OnTimer は14,400回呼ばれる
  • TimeCurrent は最後のティックの時刻を返す。サーバーの現在時刻が必要なら TimeTradeServer を使う
  • Sleep を呼んでも、テストは止まらない
  • Alert・SendNotification・SendMail などは、テスターでは実行されない

時刻の関数の違いはMT5の時刻がずれる理由、タイマーの仕組みはMQL5で一定時間ごとに処理する方法で詳しく説明しています。

また、手動のポジションだけを決済するEA(エントリーは人がする)は、テスターの中に人が出した注文が存在しないため、そのままでは決済の動きを検証できません。決済対象のポジションを作る仕組みを別に用意するか、デモ口座で実際に動かして確かめます。

当サイトのTimerClose_EA(手動ポジションを指定した秒数で決済するEA)も、この種類のEAです。動作は、デモ口座で手動の注文を入れて確かめるのが確実です。

結果を見る時のポイント

  • 取引の回数:数回だけの結果は偶然の影響が大きい
  • 最大ドローダウン:途中で資金がどこまで減ったか。利益の大きさより先に見る
  • 期間を分けた結果:最適化した期間とは別の期間(フォワード)でも成績が残るか

同じ期間で最適化と評価をすると、その期間にだけ合った設定(過剰最適化)を選びやすくなります。テスターの「フォワード」の設定を使うと、期間の後ろの部分を評価用に取っておけます。

まとめ

  • Ctrl+Rで開き、EA・銘柄・時間足・期間・モデルを選んで開始する
  • モデルは5種類。速いモデルの結果は、細かいモデルで確かめ直す
  • 「始値のみ」「1 分足 OHLC」は足の中の値動きを再現しない
  • OnTimerはモデルに関係なく呼ばれ、通知の関数はテスターでは動かない

本記事は操作手順を説明したものであり、特定の売買や業者を推奨するものではありません。過去の検証結果は将来の成績を保証しません。投資判断はご自身の責任で行ってください。