FX
【初心者向け】MT4のバックテストのやり方を分かりやすく解説
2019.08.23
働きたくない人のために、アフィリエイトとプログラミング、投資のススメを配信中。
働きたくない人のために、アフィリエイトとプログラミング、投資のススメを配信中。
「FX自動売買ツールのバックテストをしたいけど、やり方がよくわからない。」「バックテストでMT4に表示される項目はなにを意味してるの?」←こういった疑問に答えます。
最近は自動売買ツールの利用者が増えてきたので、この機会に自動売買ツールでバックテストを行うまでの手順を分かりやすくまとめました。
自動売買ツールの利用については、こちらをご覧ください。
ねーねー、MT4のバックテストのやり方はわかる?
わかるよ!一度覚えてしまえば簡単だね!
聞きたいことがあったんだけど・・・
ゼロ口座で取引を推奨されているものは、ゼロ口座のMT4アカウントでバックテストを行えばいいんだよね?
違うよ!スタンダード口座とゼロ口座の主な違いはスプレッドだから、ゼロ口座のMT4アカウントでバックテストを行うのではなく、バックテスト時のスプレッドを変えてバックテストを行わないといけないんだ。
あと、バックテストでは計れないものも出てくるから、そういった注意点も知っておくといいよ!
あとで詳しく説明するよ!
ありがとう
MT4におけるバックテストとは、自動売買ツールの有効性を検証する際に、過去のデータを用いて、その期間でどのくらいのパフォーマンスが得られたかをシミュレーションすることです。
バックテストを行う上で気をつけないといけないことが、スプレッドの設定です。スプレッドはブローカーによって違うのはもちろん、XMの場合でもスタンダード口座やゼロ口座で違うため、注意が必要です。
僕が提供している自動売買ツールにおいても、スタンダード口座とゼロ口座を分けているのはこのスプレッドによる理由です。
それでは、バックテストのやり方を順番に解説していきましょう。
このページの目次
バックテストを行う際、どのMT4アカウントでバックテストを行うのかはとても重要です。
なぜなら、自動売買ツールにはデモ口座では稼働しないものや、提供しているブローカーが違うものでは稼働しないことがあるからです。
認証キーをもらって稼働するタイプのものなどは、必ず申請したMT4アカウントを利用してバックテストを行いましょう。
自動売買ツールがないと、もちろんバックテストはできません。
自動売買ツールを設置する方法については、こちらの記事をご覧ください。
バックテストを行う際、欠かしてはいけない準備として、ヒストリカルデータを取得しなければいけません。
ヒストリカルデータは各ブローカーによって提供されており、また、ヒストリカルデータの正確さに差があります。
ですが、今回は初心者向けということなので、もっとも簡単にヒストリカルデータを取得する方法として、MT4を開発した MetaQuats 社のヒストリーセンターからダウンロードする方法を紹介します。
まず、MT4のツールバーから、ツール → ヒストリーセンター(H)を選択します。
ヒストリーセンターのウィンドウが開くので、今回は通貨ペアEURAUDのヒストリーセンターを取得してみましょう。
画像のように、通貨ペアのグループを選択して、EURAUDの通貨ペアを開きます。
そして、1分足(M1)をダブルクリックしてください。
すると、最初空だったリストに、通貨ペアのチャート履歴が入ります。これは、MT4を実際に起動してからのリアルデータが、ダブルクリックした瞬間にヒストリーデータとして取り込まれたからです。これだけではヒストリーデータとして不十分なので、ウィンドウの左下にあるダウンロード(o)をクリックしましょう。
ダウンロード・アラートのウィンドウが出てきました。問題ないので、OKをクリックしましょう。
OKボタンを押すと、ダウンロードが始まります。
画像のように、ウィンドウ下部に緑色の進捗バーが表示されますが、しばらくかかるので放置しましょう。
取得が完了したら、チャート履歴の右側にあるスクロールバーをスクロールしてみてください。
画像のように、過去の履歴が表示されていれば取得は完了です。
これで、EURAUDのヒストリーデータの取得が完了しました。他の通貨ペアでバックテストを行いたい場合は、通貨ペアごとに同じ作業をしてヒストリーデータを取得してください。
それではいよいよバックテストを実行してきましょう!
バックテストを行うためには、ストラテジーテスターというツールを使います。
画像のように、ツールバーから表示 → ストラテジーテスター(R)をクリックしましょう。
ストラテジーテスターをクリックすると、このような画面が追加されます。
各項目を説明していきましょう。
MT4に設置した自動売買ツール(エキスパートアドバイザ)が表示されます。エキスパートフォルダに入れたのに、一覧に表示されない場合は、MT4を再起動してください。
設置方法がわからない場合は、こちらの記事を参考にしてください。
バックテストを行いたい対象の通貨ペアを選択してください。ヒストリカルデータをダウンロードしていない場合でも表示されますが、バックテストがうまく実行されないので必ずダウンロードをしましょう。
時間足を選択しましょう。1分足から日足まで選択できます。
モデルを「全ティック」「コントロールポイント」「始値のみ」の3つから選択できます。全ティックはもっとも正確にバックテストを行うことができますが、時間をかなり要します。
スプレッドを選択できます。また、1以上の整数を自分で入力することもできます。スプレッド「1」を入力した場合、pips換算では「0.1」pipsになるので注意しましょう。
期間を指定のチェックボックスにチェックを入れると、期間が指定できます。開始日と終了日をそれぞれ選択してバックテストを行いたい期間を指定しましょう。
ビジュアルモードを選択すると、バックテストを稼働したときに実際にチャートが動きながら自動売買ツールがエントリーする様子がリアルタイムで確認することができます。
最適なパラメータを探る時に最適化チェックボックスにチェックを入れます。バックテストだけを行いたい場合は不要なので必ずチェックを外してください。
バックテストの準備ももうすぐ完了です。
エキスパート設定で、実際に自動売買ツールに設定するパラメータを指定します。
ストラテジーテスターの右側にあるエキスパート設定をクリックしましょう。
ウィンドウが開くので、テスト設定タブを開きましょう。
こちらでは、アカウントの口座残高や通貨タイプを選択できます。
初期証拠金に金額を入力します。そして、通貨タイプを選択できるのですが、ここには日本円がないので、「JPY」と入力してください。「500000 JPY」と入力した場合は、50万円の残高でスタートすることが可能です。
ポジションは、ロングのみ、ショートのみ、ロングとショートの3パターンが選べます。
パラメーターの入力では、実際に自動売買ツールを設置した時と同じようにパラメーターの入力画面が表示されます。推奨のパラメーターを入力しましょう。
チェックボックスは、最適化の際に使うため、チェックをつけていてもはずしていても問題ありません。スタート、ステップ、ストップも最適化の際の項目なので、今回は無視しましょう。
バックテストを行うために必要なのは、値の箇所だけです。
最適化のタブは、最適化の際に使うので今回は無視しましょう。
さあ、準備が整ったらバックテストを実行してみましょう。
今回は、フォワードテストが好調なこちらの自動売買ツールでバックテストを実行してみます。
こちらの推奨パラメーターを指定の2015年1月から指定の期間で実行してみましょう。
EURUSDの通貨ペアで、ゼロ口座のEURUSD平均スプレッドは0.1pipsなので、スプレッドを1と入力して実行してみます。
ストラテジーテスターの右下にあるスタートを押していざ実行です。
※今回は、時間短縮のため、モデルは始値として実行しました。
このように、証拠金の推移状況が確認できます。単利設定の場合は50万円の証拠金が5年で88万円になりました。
それでは、パラメタを複利設定のロット0.04にしてみましょう。
さきほどは5年で38万円の利益だったのが、830万円ほどの利益となりました。
このように、バックテストを実行すると、どれくらいのロット数が必要なのか、どれくらいの利益が見込めるのかある程度指標として参考できます。
MT4のバックテストのやり方は分かったかい?
ありがとう!スプレッドが違うとパフォーマンスがかなり変わってくるね!
販売サイトなどで売られている自動売買ツールのバックテストも、スプレッドをよく見てそれと同じか、それより小さいもので運用しないといけないね!
その通りだね!
でも、バックテストは将来のパフォーマンスを約束しているものではないので、完璧に信じてはいけないよ!
もちろん、それは分かっているよ!
ありがとう!
バックテストで注意しないといけない点は、スワップポイントによる損益や手数料が計上できない点です。取引回数と取引ロット数に対して利益があまりにも低い場合は、勝率が同じでも同じ利益率にならないことに注意してください。
また、トラリピ系などの長期保有タイプの自動売買ツールを利用される場合が、スワップポイントが反映されないためマイナススワップのポジションを保有する場合は注意してください。反対に、スワップポイントがプラスのポジションの場合は、思わぬ利益となる場合もあります。
以上、バックテストのやり方と注意点でした。