MT4でバックテストを行うやり方は?できない場合の対処方法も紹介
MT4では、デフォルト機能であるストラテジーテスターを使い自動売買プログラム(EA)のバックテストを行うことができます。EAのバックテスト機能を行うことで、そのEAで利益が出せるのかを検証することが可能です。本記事では、MT4でバックテストを行うやり方について詳しく紹介します。
MT4でバックテストを行う前の準備
MT4でバックテストを行うためには、MT4へのログインやEAの設定、ヒストリカルデータ(価格データ)のダウンロードなどを準備する必要があります。それぞれのやり方を詳しく紹介します。
MT4にログイン
まず、MT4にログインを行います。ログインのやり方は、MT4を起動させ、「ファイル」→「取引口座にログイン」を選択します。
ログインID、パスワードを入力し、サーバーを選択後、ログインを選択します。
アカウントをお持ちでない方は、以下の記事を参考にしてください。
MT4(メタトレーダー4)アカウントの作成・ダウンロードおよびログイン
MT4に自動売買プログラム(EA)を設定
続いてMT4にEAを設定します。設定方法は、「ナビゲーター」→「エキスパートアドバイザー」→「使用するEAをドラッグ&ドロップ」→「自動売買を許可するにチェック」→「OK」です。
チャート上の右上にインジケーター名とニコニコマークが表示されれば自動売買が稼働している状態です。
ニコニコマークではなく、怒っているマークが表示されるとEAは停止中です。
以下の記事では、MT4にEAを設定する方法やEAの開始や停止を行う方法などを詳しく紹介しているため、参考にしてください。
MT4(Meta Trader4)自動売買プログラムの設定方法を紹介
ヒストリカルデータ(価格データ)のダウンロード
デフォルトのMT4内に蓄積されている価格のデータはそれほど多くはなく、バックテストをするのに十分な価格のデータをダウンロードする必要があります。価格の取得方法はいくつかありますが、ここでは一番単純なメタクォーツ社のデータをダウンロードする方法を紹介します。
まず、データをダウンロードする前にMT4内に蓄積できる価格データの量を最大にしておきます。MT4のメニューバーの「ツール」から「オプション」を選択します。「オプション」のウィンドウの中の「チャート」を選択すると、「ヒストリー内の最大バー数」、チャートの最大バー数」という項目があるので、そこに「999999999…」と9を打ち込めれるだけ打ち込み、OKボタンを押します。
オプション画面を拡大した画像です。
次に、MT4に価格データを取り込みます。メニューバーの「ツール」から「ヒストリカルデータ」を選択します。「ヒストリカルデータ」のウィンドウが表示されます。そこで欲しい通貨ペアの時間軸を選択し、その下の「ダウンロード」ボタンを押します。
ヒストリカルデータ画面を拡大した画像です。
このダウンロードには数分かかることもあるため、時間的に余裕を持って行いましょう。これでバックテストの前の準備が完了です。
MT4でバックテストを行うやり方
ここでは実際に、バックテストを行うやり方を紹介します。バックテストを行うには、MT4のデフォルト機能である「ストラテジーテスター」というツールを使用します。ストラテジーテスターの表示方法は、「表示」→「ストラテジーテスター」を選択します。
以下の画像は拡大した画像です。
ストラテジーテスターの画像です。
設定項目がいくつかあるので、それぞれ詳しく紹介します。
エキスパートアドバイザ
エキスパートアドバイザでは、バックテストで使用するEAを選択します。使用するEAが表示されない場合は、MT4を再起動してから再度行って下さい。
通貨ペア
通貨ペアでは、バックテストを行う通貨ペアを選択します。ここで選ぶ通貨ペアは、先ほどヒストリカルデータで取得した通貨を選ぶようにしましょう。
期間
期間では、バックテストを行う時間足を選択します。ここでの注意点として、EAによっては時間足が決められているものがあります。その場合は、EAと同じ時間足に設定してください。
モデル
モデルでは、バックテストを行う方法を選択します。
- 全ティックは時間がかかるが最も正確な方法
- コントロールポイントは結果の信頼性はあまりないが時間があまりかからない方法
- 始値のみは信頼性はあまりないが最も早い方法
パラメータの変更や様々なEAのバックテストを多く行いたいのであれば、始値のみやコントロールポイントなどでよいでしょう。じっくりと正確に行いたいのであれば、時間はかかりますが全ティックで行いましょう。
スプレッド
スプレッドでは、実際に取引する通貨ペアのスプレッドを選択します。スプレッドが2は、0.2pipsという意味です。
期間を指定
期間を指定では、バックテストを行う期間を入力します。開始日と終了日を入力すれば、その期間のバックテストを行うことができます。
最適化
最適化では、過去のデータを元にパラメータをどの数値にしたら利益が出やすいのかを検証してくれます。通常のバックテストを行う際はチェックをいれる必要はないので、チェックを外しておきましょう。
バックテストの最適化について詳しく知りたい方は、以下の記事を御覧ください。
ビジュアルモード
ビジュアルモードでは、EAがチャート上のどこで注文を行ったのかを確認することができます。ただし、時間がかかるため、基本的にはチェックを外して問題はありません。
エキスパート設定
エキスパート設定では、証拠金の設定や買いや売りどちらで取引を行うかなど様々な設定を行うことができます。
テスト設定タブでは、初期証拠金の金額を設定し、買い(Long)と売り(Short)の双方で行うか売買どちらか一方のみを行うかを選択します。下部の最適化の部分は最適化を行う場合のみ使用します。
パラメーターの入力タブでは、バックテストを行うパラメーターを設定します。 その他の欄は最適化を行う際に使う項目となります。設定が完了したらOKボタンを押して閉じます。
最適化タブでは、一定の条件になったらテストを止めるという制限を加えることができます。特にここは入力しないでも問題ありません。
これでバックテストの設定は完了です。ストラテジーテスターに戻り、スタートボタンを押すとバックテストが開始します。
MT4でバックテストの結果を検証する方法
バックテストが完了したらバックテストの結果をチェックします。バックテストの結果はストラテジーテスターの「結果」タブ、「グラフ」タブ、「レポート」タブにてチェックすることが可能です。各項目の表示するものは以下の通りとなります。
「結果」タブ
「結果」タブでは取引の結果が順番に表示されます。どのような取引をしたかの詳細が確認できます。
「グラフ」タブ
「グラフ」タブでは資産の推移のグラフが確認できます。理想は波の大きくない緩やかな右肩上がりの曲線です。
「レポート」タブ
「レポート」タブではバックテストのまとめが表示されます。この「レポート」タブでテストの結果の概要が確認できます。
レポートタブの主な項目は、以下の通りです。
項目 | 意味 |
---|---|
テストバー数 | テストをしたバーの数 |
モデルティック数 | テストに用いたティック数 |
モデリング品質 | バックテストの品質 |
不整合チャートエラー | チャートのデータに抜けなどがある場合 |
スプレッド | テストをした時のスプレッド |
初期証拠金 | テスト開始時の金額 |
純益 | 損益金額 |
総利益 | 利益の合計 |
総損失 | 損失の合計 |
プロフィットファクタ | 総利益÷総損失 |
期待利益 | 損益÷トレード回数 |
絶対ドローダウン | 開始資金に対して最大のドローダウン |
最大ドローダウン | テスト期間での最大のドローダウン |
相対ドローダウン | 最大ドローダウンの比率 |
総取引数 | 取引を行った回数 |
売りポジション、買いポジション | 売りで入った回数と買いで入った回数 |
最大勝トレード、最大負トレード | 勝ちトレードの最高利益、負けトレードの最高損失 |
平均勝トレード、最大負トレード | 勝ちトレードの平均利益、負けトレードの平均損失 |
レポートタブで重視したい項目は諸説ありますが、最大ドローダウン、プロフィットファクタ、期待利益、最大勝ちトレードと最大負けトレードの差などが挙げられます。これらの数字が悪い場合は将来の運用に不安が残ります。
MT4でバックテストが上手くできない場合の対処方法
MT4でEAのバックテストを行おうとしても上手くできない場合があります。ここでは、上手くいかないときの対処法について紹介します。
EAとMT4は同じアカウントであるか確認する
EAによってはアカウントの制限がかけられている場合があります。その場合は、EAを取得する際に登録したアカウントと同じアカウントでなければ使用することは出来ません。アカウントが同じであるかをしっかりと確認しましょう。
ヒストリカルデータを正しくダウンロードできているかを確認する
ヒストリカルデータを上手くダウンロードできていないと、EAが上手く稼働しない可能性があります。ヒストリカルデータの確認方法は、レポートタブのモデリング品質を確認します。90%になっていれば、正確にダウンロードができています。
万が一、90%以下の数値である場合は再度ヒストリカルデータのダウンロードをやり直しましょう。
EAによっては通貨ペアや時間足が決められている場合がある
EAによっては、稼働する通貨ペアや時間足が決まっている場合があります。そのため、使用するEAの設定を確認しあっているかどうかを確かめましょう。
OANDAのMT5ならより高精度なヒストリカルデータを利用しバックテストが可能
MT4を使ったバックテストのやり方を紹介しましたが、MT5(Meta Trader5)でもバックテストを行うことが可能です。MT4でバックテストを行う場合、OANDAのヒストリカルデータを提供していないため、MetaQuotes社のヒストリカルデータを使ってバックテストを行います。MetaQuotes社はMT4を開発している会社ですので、どうしても精緻ではありません。
また、OANDAのデータではないので、サポートをすることができません。しかしながら、OANDAのMT5なら実際にOANDAで配信したティック単位の高精度なヒストリカルデータを使い、バックテストを行うことができます。MT5のバックテストのやり方は、以下の通りです。
「MT5用ティックデータのダウンロード」からデータのダウンロードを行います。OANDAの本番口座にログインした状態でアクセスしてください。
ダウンロードしたティックデータをMT5にインポートする手順を紹介します。
【手順①】MT5を起動し「①表示」→「②銘柄」を選択
「銘柄」ダイアログが表示されるので、「①カスタム銘柄を作成する」を選択
「カスタム銘柄を作成する」ダイアログが表示されたら、「①銘柄」をダブルクリックしお好みの名前を設定して下さい。完了後、「②YES」を選択
「銘柄」ダイアログに戻り、「①一覧」から作成した「②カスタム銘柄」→「③銘柄を表示する」を選択
続いて、「①ティック」を選択
右上の「①選択ボックス」で先ほど作成したカスタム銘柄を選択し、「②ティックをインポートする」を選択
「ティックポートをインポートします」ダイアログが表示されるので、「①選択」をクリックし、ダウンロードしたZIPアーカイブの中にあるCSVファイルを選択
「①インポートするデータが表示される」ので確認し、「②YES」を選択
これでティックデータのインポートが完了です。作成した銘柄をチャート画面に「ドラッグ&ドロップ」すれば過去のチャートを確認できます。また、バックテスト時の対象銘柄として選択することもできます。
これでティックデータのインポートが完了です。作成した銘柄をチャート画面に「ドラッグ&ドロップ」すれば過去のチャートを確認できます。また、バックテスト時の対象銘柄として選択することもできます。
MT4を学びたい方へオススメコンテンツ

OANDA証券ではMT4(メタトレーダー4)の基本的な使い方を、画像や動画を用いて詳しく解説します。OANDA証券が独自開発したオリジナルインジケーターや自動売買(EA)なども豊富に提供しています。OANDA証券の口座をお持ちであれば無料で使えるので、ぜひ口座開設をご検討ください。
本ホームページに掲載されている事項は、投資判断の参考となる情報の提供を目的としたものであり、投資の勧誘を目的としたものではありません。投資方針、投資タイミング等は、ご自身の責任において判断してください。本サービスの情報に基づいて行った取引のいかなる損失についても、当社は一切の責を負いかねますのでご了承ください。また、当社は、当該情報の正確性および完全性を保証または約束するものでなく、今後、予告なしに内容を変更または廃止する場合があります。なお、当該情報の欠落・誤謬等につきましてもその責を負いかねますのでご了承ください。