【簡単】MT4でEAのバックテスト(検証)をする方法

  • 2019.09.02
  • 2021.03.12
  • EA
【簡単】MT4でEAのバックテスト(検証)をする方法

【簡単】MT4でEAのバックテスト(検証)をする方法

バックテストとは、EA(自動売買プログラム)を過去のデータを元に、どのような取引を行っているのか、損益や勝率はどうなのかといったことをテスト稼働させ、検証することです。

EAを入手する際、バックテスト結果のデータなども載っていると思いますが、使いたいEAを自分で検証してみて使用するかどうかを判断する方が賢明です。

本記事では、MT4でバックテスト(検証)をする方法を紹介します。最初は少し複雑に感じるかもしれませんが、慣れればそう難しい作業ではありません。順番に見ていきましょう。

1. FXDDでヒストリカルデータをダウンロードする

まずはバックテストで使うヒストリカルデータをダウンロードします。

ヒストリカルデータはMT4からでもダウンロードできるのですが、正確性に欠けているといわれています。

そのため今回は「FXDD」のヒストリカルデータを使用します。

FXDDでヒストリカルデータをダウンロードする

こちらでバックテストに使用したい通貨ペアのヒストリカルデータをダウンロードします。

ここでは例として「EUR/USD」をダウンロードします。

ヒストリカルデータ

ダウンロードしたフォルダ中にhstファイルが入っています。このデータをMT4にインポート(データ取り込み)していきます。

 注意点

バックテストでは膨大なヒストリカルデータを使用します。PCのスペックが足りない場合、MT4が重くなる原因にもなるので、バックテスト用のデモ口座などを準備しておくことを推奨します。

2. MT4のヒストリカルデータを削除しておく

先程のデータをインポートする前に、MT4内の余分なヒストリカルデータは削除しておきましょう。(前述したようにMT4のヒストリカルデータは正確性に欠けるため)

また今回の作業時には、チャートを閉じて何も表示しないようにしておきましょう。(余計なヒストリカルデータが作成されるのを避けるため)

2-1「ファイル」タブの「データフォルダを開く」をクリックします。

「ファイル」タブの「データフォルダを開く」をクリックする

 

2-2「history」をクリックして開きます。中に「downloads」、「GemTrade-Demo」というフォルダがあります。(「GemTrade-Demo」のフォルダは自身の使っているFX会社の名前です。ライブ口座ならDemoの部分はLiveになっています。)

「history」をクリックして開く

「downloads」と「GemTrade-Demo」

 

2-3 この2つの中の「.hst」の拡張子がついた、該当通貨ペアのヒストリカルデータファイルをそれぞれ削除します。

この2つの中の「.hst」の拡張子がついた該当通貨ペアのヒストリカルデータファイルをそれぞれ削除する

削除したら一度MT4を閉じて、再起動させましょう。

3. ダウンロードしたヒストリカルデータをインポートする

余計なヒストリカルデータを削除したら、いよいよダウンロードしたヒストリカルデータをインポート(データ取り込み)していきます。

3-1「ツール」タブの「ヒストリーセンター」をクリックします。

「ツール」タブの「ヒストリーセンター」をクリックする

 

3-2「FOREX」タブの「該当通貨ペア」(この例ではEURUSD)の「1分足」選択し「インポート」をクリックします。

「FOREX」タブの「該当通貨ペア」(この例ではEURUSD)の「一本足」選択し「インポート」をクリックする

 

3-3「参照」をクリックしダウンロードしたヒストリカルデータ(.hstファイル)を選択しOKをクリックします。

「参照」をクリックしダウンロードしたヒストリカルデータ(.hstファイル)を選択しOKをクリックする

 ダウンロードした.hstファイルが保存した場所にない場合は、表示する拡張子を「全て」にします。

 

3-4 表示されるまで少しタイムラグがあるかもしれませんが、データベースに2005年1月からのレコードが追加されていれば「閉じる」をクリックします。

ヒストリーセンター

ここで再度データを反映させるために、MT4を再起動します。

これでインポートは完了です。

4. オプションのバー数の設定を変更する

デフォルトの設定では、バックテストができる期間は1年5ヵ月ほどです。長期間でバックテストを行うために設定を変更しておきます。

4-1 まず「ツール」タブの「オプション」をクリックします。

まず「ツール」タブの「オプション」をクリックする

 

4-2 オプションを開きましたら、「チャート」を選択し、「ヒストリ内の最大バー数」チャートの最大バー数」99999999999999と全ての桁を9で入力してOKをクリックします。

オプションの「チャート」タブ

 

4-3  再度オプションを開いて「ヒストリ内の最大バー数」「チャートの最大バー数」を確認すると「2147483647」になっていれば設定はOKです。

5. スクリプト「period_converter_ALL」を使って各時間足を作成

次に先程インポートした1分足のヒストリカルデータを元に、スクリプト「period_converter_ALL」を使って各時間足のヒストリカルデータも併せて作成していきます。

各時間足を一括で作成するスクリプト

>>period_converter_ALL

まずこれを上記リンクからダウンロードします。

5-1 「ファイル」タブの「データフォルダを開く」をクリックします。

「ファイル」タブの「データフォルダを開く」をクリックする

 

5-2 「MQL4」Scripts」とクリックして、その中に先程ダウンロードした「period_converter_ALL」ファイルをコピーまたはドラック&ドロップで貼り付けます。

「MQL4」をクリックする

「Scripts」をクリックする

反映させるために、MT4を再起動させます。

 

5-3「ファイル」タブの「オフラインチャート」をクリックします。

「ファイル」タブ「オフラインチャート」をクリックする

 

5-4 インポートしたヒストリーデータを選択して「開く」をクリックします。

インポートしたヒストリーデータを選択して「開く」をクリックする

 

5-5 開いたオンラインチャートに、ナビゲータウインドウから「period_converter_ALL」をダブルクリック、またはチャート上にドラック&ドロップします。

各時間足の作成が自動的に始まりますので、チャート左上の数字の表示がなくなるまで待ちます。

開いたオンラインチャートに、ナビゲータウインドウから「period_converter_ALL」をダブルクリック、またはチャート上にドラック&ドロップする

 

5-6 表示がなくなったら「ファイル」タブから「オフラインチャート」を開いてみましょう。

各時間足が追加されていれば成功です。

オフラインチャート

6. バックテスト内容の設定

まだもう少し準備をします。最後にバックテストの期間や数値などの設定を決めましょう。

6-1 「表示」タブの「ストラテジーテスター」をクリックします。

「表示」タブの「ストラテジーテスター」をクリックする

 

6-2 設定ウインドウが開きますので各項目を設定していきます。

エキスパートアドバイザー設定ウィンドウ

ストラテジーテスターの設定

①エキスパートアドバイザー バックテストをするEAを選択
② 通貨ペア 通貨ペアを選択(使用するEAに対応した通貨ペアを選択します)
③ モデル

使用するチャートデータのモデルを選択

④ 開始日終了日 期間を指定にチェックを入れ開始、終了日を設定
⑤ 期間

時間足を選択(各EAが推奨している時間足)

⑥ スプレッド テスト時に想定するスプレッドを選択※単位1point=0.1pips(2.5pipsなら25)
⑦ エキスパート設定 EAのパラメータの入力
⑧ チャートを開く 売買ポイントの確認などを行います

①~⑧までの各項目を選択または入力していきます。

③ モデルのタイプ

  • 「全ティック」 → 一番正確なデータが取ることができますが時間はかかります。
  • 「コントロールポイント」 → 時間が短いですが、簡易的なものになり、あまり使用しません。
  • 「始値のみ」 → 始値に基づくバックテストです。EAが始値で動くものであれば、全ティックより少ない時間で終わりつつ、正確性もあるのでこちらを選択してもいいです。

基本的には正確なデータが取れる「全ティック」で検証しましょう

また、⑥のスプレッドでは「現在値」を選択する事もできます。基本的に現在値で問題ないですが、土日や早朝など変動が激しい時は固定で設定しましょう。

⑦エキスパートの設定

エキスパート設定の「テスト設定」タブを開くと初期証拠金を設定できます。単位はプルダウンから選択できる他に、直接「JPY」と入力することで日本円でのテストも行えます。

今回はデフォルト設定のままで行います。

エキスパート設定

エキスパート設定の「パラメータの入力」タブを開くと、そのEAのパラメータを入力できます。

パラメーターを上手く設定する事でより、EAがパフォーマンスを発揮できるように「最適化」することができます。

ダウンロードしたEAには最適なパラメータを登録した.setファイルがついていることもあります。その場合はここで読み込みをクリックして、.setファイルを選ぶことで、パラメータを読み込むことができます。

今回はデフォルトのままバックテストを行ないます。

パラメータの入力

7. バックテストの開始

ここまで色々と設定してきましたが、いよいよバックテストを行ないます。

7-1 設定が完了しましたら「スタート」をクリックします。

設定が完了しましたら「スタート」をクリックします

7-2 テスト中は緑色のバーが進んでいきます。バーが右端までいき、「ストップ」の表示が「スタート」に戻っていれば完了です。

バックテスト完了するまでの時間は選択したモデルや期間、PCのスペックなどでも変わってきます。のんびり待ちましょう。

テスト中は緑色のバーが進んでいきます

7-3 完了しましたら。下部の「レポート」タブからテスト結果が確認できます。

不整合チャートエラーが0なら設定した項目での正しいテスト結果が出ています。

設定したスプレッドなどによってもテスト結果は大きく変わります。色々と試してみてください。

またテスト結果上を右クリックで「レポートの保存」を選択すると今回のテスト結果を保存することができます。再度テストするのは時間と手間がかかるのでわかりやすい名前で保存しておくことをおすすめします。

「レポート」タブからテスト結果が確認できます

7-4 レポートを保存するとブラウザでもレポート内容が表示されます。

レポート内容

またバックテストレポートの見方については以下の記事で詳しく紹介しています。

 

まとめ

今回は少し長くなりました。最初は面倒に感じると思いますが、使っていくうちに慣れていくかと思います。

また検証で良好な結果が出たからといって過信は禁物ですが、使用するか判断する指標にはなるかと思います。

是非バックテストを活用してみてください。

新規口座開設ボーナスでリスク0トレード

CTA-IMAGE 新規口座開設ボーナスで海外FXをリスク0で始めてみませんか?

入金不要で証拠金10,000円~20,000円、100%入金ボーナスなどFX業界トップクラスのボーナスキャンペーンを実施中。

口座開設数は40万口座と今人気急上昇のMT4対応海外FXブローカーGemForex。
ページトップへ
今ならGEMFOREX口座開設で20,000円ボーナス
詳細はこちら
今ならGEMFOREX口座開設で20,000円ボーナス
詳細はこちら