一般的なバックテストでは外部からヒストリカルデータを取り込み、数年単位で検証を行います。一方で「EAが正常に動作するか確認したい」「直近の値動きに対応できているか見たい」といった簡単な動作確認であれば、MT4に用意されているヒストリカルデータを使って検証することも可能です。このページでは、MT4標準のヒストリカルデータを使ったバックテストの方法について解説していきます。
※外部データを使った数年単位のバックテストの方法については、こちらをご覧ください。
→「MT4バックテストのやり方について」
バックテストの準備
1. 最大バー数を増やす
「ツール」→「オプション」→「チャート」と進み、「ヒストリー内の最大バー数」と「チャートの最大バー数」を最大にします(「9」を長押し)。
ヒストリー内の最大バー数 … MT4に保存できる最大のバー(ローソク足)数
チャートの最大バー数 … チャート画面に表示する最大のバー(ローソク足)数


「OK」を押下し、MT4を一旦閉じて再起動します。再度オプションを開き、自動的に最大値へ調整されていることを確認します。(一般的に「2147483647」になります。)

2. ヒストリカルデータのインポート
検証したい「通過ペア」「時間足」のチャートを開き、上部ツールバーで以下の設定を行ってください。(以降の説明では「USD/JPY」の「1分足」を例に説明していきます。)
- 「ズームアウト」ボタンを何度かクリックし、これ以上押せなくなる状態(最大縮小)にする
- 「自動スクロール」ボタンをクリックし、ボタンが押し込まれていない状態(OFF)にする

続いて、キーボードの「Home」キーを長押ししてください。
チャートが自動で過去方向へ移動していくので、これ以上動かなくなったところでキーを離します。(1分足の場合、2か月ほどで止まります。)
3. ヒストリカルデータの期間の確認
「ツール」→「ヒストリーセンター」と進み、「Forex」を開きます。


対象の通貨ペアと時間足を開きます。


右側にレコードが表示されるので、終了日と開始日の日付を確認します。


今回の場合、「2026/3/13~2026/5/15」の範囲でバックテストをすることになります。
バックテストの方法
1. ストラテジーテスターを開く
ストラテジーテスターを開き、下部にテスターウィンドウを表示させます。


2. 各種設定①
以下は設定例です。

- エキスアドバイザー
Deviation_scalping.ex4 → 検証に使用したいEAの名前を選択 - 通貨ペア
USD/JPY → 検証したい通貨ペアを選択 - 期間
M1 → 検証したい時間足を選択 - モデル
全ティック → 最も精度の高いバックテストの方法。その他の方法は非推奨。 - スプレッド
現在値 → 現在の市場でのスプレッドを使用してテストする。 - 期間を指定
チェック☑を入れて、ヒストリカルデータの開始日と終了日を入れる。
3. 各種設定②
右側のエキスパート設定を開きます。

「テスト設定」タブの「初期証拠金」で、バックテスト開始時の口座残高を設定します。
デフォルトでは通貨が「USD(ドル)」となっているため、日本円で検証したい場合は、通貨欄に「JPY」と入力して変更します。
画像の設定例では、「5万円の資金からバックテストを開始する」という意味になります。

設定が完了したら、「OK」を押して画面を閉じます。
4. バックテストの開始
ここまで設定できたら、いよいよバックテストの開始です。「スタート」を押して始めてみてください。
下のステータスバーが右までいったら完了です。「結果」や「グラフ」、「レポート」を参照し、成績を確認してみましょう。(レポートの見方についてはこちらの記事をご覧ください。)

<結果の例>

<グラフの例>

一方、EAに何かしらの欠陥があると、下画像のように結果やグラフが表示されません。


このような場合には、「操作履歴」を参照し、その原因を分析しましょう。

今回の場合は、「OrderSend error 130」というのが出ています。これはSL(損切り)やTP(利確)の設定が無効なときに発生するエラーで、注文価格に対して、SL/TPが近すぎるなどの原因が考えられます。MT4業者ごとに「ストップレベル」は異なりますので、EA内でSL/TPを設定する際は各業者のストップレベルを確認したうえで設定するようにしましょう。
(確認方法:気配値表示の対象通貨ペアの上で右クリックし、「仕様」から確認することができます。)

まとめ
いかがだったでしょうか。今回は簡易的なバックテストの方法について解説しました。外部からデータを持って来なくとも、バックテストはできます。EAの基本的な動作確認や、直近の値動きで素早く検証したいのであれば、今回の方法をぜひ活用してみてください。
さらに簡単に行う方法としては過去チャートを読み込まず、「ヒストリセンター」で保存されているデータの期間を確認するだけで、そのままバックテストを行うことも可能です。
