バックテストの取り方を解説!

バックテストの取り方を解説! 自動売買

こんにちは、森下@the_trade_jp)です。

バックテストを行うことであなたが今後も勝てるかどうかが簡単に分かります。

そもそもバックテストとはその取引手法で今後も勝てるのかを調べるテストです。
こちらの記事でバックテストとは何かを説明してますので、よろしければ確認してください。

バックテストとは?

2018.10.13

今回はバックテストの取り方を説明していきます。

バックテストの3種類の取り方

バックテストの取り方としては以下の3種類があります。

・チャート目視でのバックテスト
・プログラムを使ったバックテスト
・エクセルを使ったバックテスト

それぞれの取り方とメリット、デメリットを説明していきます。

チャート目視でのバックテスト

チャート目視でのバックテストは自分でチャートを見て検証する方法です。
過去のチャートを見ることで取引の流れや大体の利益を知ることができます。また手動で何円利益がでたのかを計算することで正確なバックテストができます。

自分で一つずつ検証していくので、正確にバックテストをしようとすると時間と手間がかかります。
またこれまでの自分の取引を検証するので主観が入ってしまうという問題もあります。

一方で、パソコンやスマホがあればどこでも簡単にバックテストができます。
また長期のチャートを何度も見ることで相場観や価格の動きのイメージが鍛えられ、成長することもできます。

チャート目視でのバックテストは自分でチャートを見ながら検証する方法です。

◎相場観や株価の動きのイメージが鍛えられる
◎どこでも簡単にできる

×検証するのに時間と手間がかかる
×主観が入り、正確にバックテストできない可能性がある

プログラムを使ったバックテスト

プログラムを使ったバックテストはネット上などで配布、販売されているプログラムを使ってバックテストを行う方法です。プログラムには有料の物も無料の物もあります。

オススメのバックテストのプログラム

有料のものでいうと「FXトレードギア」、無料のものでいうと「MT4」がオススメです。
オススメする理由は設定が簡単で初心者でも簡単にバックテストができることです。

「FXトレードギア」は少し高いですが、初心者向けに手厚いサポートをしています。

MT4はバックテスト専用のプログラムではなく、様々な便利なツールのついたFX取引サイトです。
下の記事でダウンロード方法を説明しているのでご覧ください。

XMで使えるMT4のダウンロード方法を画像付きで解説

2018.09.15

プログラムを使ったバックテストのメリットとデメリット

プログラムを使ったバックテストは目視でのバックテストと比べて時間と手間が節約できます。
システムの設定だけしてしまえば、一瞬で何十年分ものバックテストが完了します。
また数値で検証されるので客観的かつ正確な検証ができます。

デメリットとしてはプログラムの設定が難しい場合があること。
そして取引手法のアレンジ、改善方法が思い浮かばないというのもデメリットの一つです。

目視でのバックテストの場合、チャートを見ながら、「もう少しここで買っておけばよかった」と改善ができます。一方でプログラムで検証すると数値だけが出てくるので、アレンジ方法が思い浮かびにくいです。

プログラムを使ったバックテストは出回っているプログラムを使ってバックテストを行う方法です。

◎時間と手間が節約できる
◎客観的かつ正確な検証が可能

×プログラムの設定が難しい場合がある
×取引手法のアレンジ、改善方法が思い浮かびにくい

エクセルを使ったバックテスト

エクセルを使ったバックテストは、計算はエクセルでしながらも、手動でバックテストをする方法です。
チャート目視でのバックテストの計算だけ機械でやるイメージです。

 

この方法のメリットは目視によるバックテストよりも時間と手間を削減できる。
また実際にチャートを見ながら自分で検証するので、取引手法のアレンジ、改善がしやすいです。

一方で、他のバックテストの方法よりも知識は必要です。
エクセルで計算する為に、計算式を自分で入力しないといけませんが、どのような計算式を設定すればいいのかは知識がないと分かりません。

エクセルを使ったバックテストは、エクセルを使用しながら手動でバックテストをする方法です。

◎時間と手間が短縮できる
◎取引手法のアレンジ、改善がしやすい

×知識が一番必要

 

MT4でのバックテストの取り方

バックテストの取り方には色々な方法がありますが、知識もいらずに簡単に取れる方法があればいいですよね。
実はMT4を使うことで簡単にバックテストが取れるので、その方法を紹介します。

以下3つの手順でMT4でバックテストを取る事ができます。

・バックテストできるようにMT4の設定を変える
ヒストリカルデータのインポートしセットする
・バックテストを行う

では、MT4でのバックテストの取り方を順番に説明していきます。

バックテストできるようにMT4の設定を変える

バックテストができるように以下2つの設定をあらかじめMT4で変えておく必要があります。

・バックテストできる期間を最大に伸ばす
・バックテストできるようにEAの設定を変える

順番に説明していきます。

バックテストできる期間を最大に伸ばす

元々の設定のままだとバックテストできる期間が1年5か月ほどだけなので、長期間の分析ができるように設定を変えていきましょう。

まずは「ツール」→「オプション」のタブから「チャート」を開きます。

MT4でのバックテストの取り方:下準備として「ツール」→「タブ」→「チャート」を確認する。

 

そして「チャート」の「ヒストリー内の最大バー」と「チャートの最大バー数」の数字を「99999999999999」とできる限り大きく入力して、「OK」を押してください。

MT4でのバックテストの取り方:下準備として「チャート」の「ヒストリー内の最大バー」と「チャートの最大バー数」の数字を「99999999999999」とできる限り大きく入力する。

「OK」を押すと設定が変更されます。

もう一度「オプション」から「チャート」タブを開くと変更しているか確認できます。
数字が恐らく2147483647となっていると思いますが、これでオッケーです。

これでバックテストが取れる期間が約1年5カ月から最長まで伸びましたので設定完了です。

バックテストできるようにEAの設定を変える

つづいて、バックテストできるようにEAの設定も変えておきましょう。
MT4の画面上の操作ですぐにできるので順番に説明していきます。

 

まずは「ツール」→「オプション」タブから「エキスパートアドバイザ」をクリックします。

MT4でのバックテストの取り方:下準備として「ツール」→「オプション」タブから「エキスパートアドバイザ」を選択します。

 

そうすると下のような画面が出てきますので、下の赤枠部分にチェックをして「OK」を押してください。

MT4でのバックテストの取り方:下準備として「ツール」→「オプション」タブから「エキスパートアドバイザ」をクリックし、チェックを入れる。

これで完了です。

ヒストリカルデータのインポートしセットする

ヒストリカルデータのインポートとセットをすることでテスト前の下準備をします。

以下の3つの作業をやってください。

・ヒストリカルデータのダウンロード
・ダウンロードしたデータをセットする
・セットしたデータを使用可能な状態にする

順番に説明していきます。

ヒストリカルデータのダウンロード

まずはヒストリカルデータをダウンロードしましょう。メニューボタン上部の「ツール」から「ヒストリーセンター」をクリックします。

MT4でのバックテストの取り方:ヒストリカルセンターから求める通貨ペアと時間足を選んで、ヒストリカルデータをダウンロードする

 

ダウンロードしたデータをセットする

今回は例としてUSDJPYの通貨ペアで、ダウンロードしたデータのセットの方法を説明します。

 

まずは下の図のように「ファイル」⇒「データフォルダを開く」をクリックします。

MT4でのバックテストの取り方:ダウンロードしたデータをセットするにはまず「データフォルダを開く」をクリックする。

そうするとデータフォルダが開くので、その開かれたフォルダ内の「history」フォルダ⇒「XMTrading-Demo3」フォルダを開きます。

「XMTrading-Demo3」はアクセスしているブローカーによって異なるので、自分の使用しているブローカーの名前が出てきます。

 

フォルダ内には下の画像のように「USDJPY〇〇.hst」というファイルがいくつか出てきます。今回はUSD/JPYをセットするので、「USDJPY〇〇.hts」を全て削除します。

MT4でのバックテストの取り方:「XNTrading Demo3」を選択し、「USDJPY〇〇.hts」を削除する。

 

ここでもう一度再起動します。

再起動したら「ツール」→「ヒストリーセンター」をクリックします。

MT4でのバックテストの取り方:「ツール」→「ヒストリーセンター」をクリックする。

 

そうするとヒストリーセンターウィンドウが開くので、目的の「USDJPY」を探して、ツリーから「1分足」を選択してダブルクリックします。すると下のような画面が表示されます。

MT4でのバックテストの取り方:データベースの数を覚え、インポートをクリックする。

左上に赤枠で囲った部分がありますので、その部分の数字を大体でいいので覚えておきます。
そして右下の青枠の「インポート」をクリックします。

 

続いて、右上の「参照」をクリックしてください。

MT4でのバックテストの取り方:「参照」をクリックする。

 

先ほどダウンロードしたヒストリカルデータを選択し、MT4にセットしてください。
セットが完了すると先ほど「2048コード」だったものが大幅に増えています。

MT4でのバックテストの取り方:データをセットすると数値が大幅に増える。

 

セットしたデータを使用可能な状態にする

1分足データではバックテストでは使用できないので、これを各時間足に変更していきます。

各時間足を自動生成するスクリプトを下のページからダウンロードします。
period_converter_ALL.mq4のダウンロードはこちら」をクリックすると自動的にダウンロードされます。

そしてMT4左上の「ファイル」から「データフォルダを開く」→「MQL4」をクリックします。そして「Scripts」のフォルダに、ダウンロードしたperiod_converter_ALL.mq4を入れます。

MT4でのバックテストの取り方:Scripts」のフォルダに、ダウンロードしたperiod_converter_ALL.mq4を入れます。

 

そしてここでMT4を再起動してください。

 

再起動したMT4で「ファイル」→「オフラインチャート」をクリックします。
すると先ほどダウンロードしたデータが「USD/JPY,M1」と表示されていますので、以下の画面の赤枠の開くをクリックしてください。

MT4でのバックテストの取り方:「USD/JPY,M1」と表示されていますので、以下の画面の赤枠の開くをクリックしてください。

 

MT4のウィンドウ内にUSD/JPY 1分足のチャートが開きます。
そのチャートに左のツリーから「period_converter_ALL」をドラッグ&ドロップします。

MT4でのバックテストの取り方:左のツリーから「period_converter_ALL」をドラッグ&ドロップする。

 

しばらく画面に計算中のような表示がでます。終了した後にもう一度「ファイル」→「オフラインチャート」を確認すると以下の画面のように「USD/JPY,monthly」などが出てきます。

MT4でのバックテストの取り方:終了した後にもう一度「ファイル」→「オフラインチャート」を確認すると以下の画面のように「USD/JPY,monthly」などが出てきます。

これで完了です。

 

バックテストを取る

バックテストのやり方を以下2つの手順に沿って説明していきます。

・バックテストを行う画面を出す
・バックテストの設定をし、テストする

順番に説明します。

バックテストを行う画面を出す

まずはバックテストを行う為の画面の出し方を説明します。
MT4の左上のツールバーから「ストラテジーテスター」をクリックします。

MT4でのバックテストの取り方:画面はストラテジーテスターをクリックする。

 

そうすると以下のような画面が出てきます。ここでバックテストを行うことができます。

MT4でのバックテストの取り方:「ストラテジーテスター」をクリックして出てくる画面でバックテストが行える。

 

バックテストの設定をし、テストする

バックテストを行う期間や使用するEAなどの設定をした後に「スタート」ボタンを押すことでバックテストを行うことができます。

まずはバックテストの画面の説明からします。

MT4でのバックテストの取り方:バックテストの画面の説明からします。

それぞれ以下の通りの意味です。

①EAの選択
②通貨ペアの選択
③バックテストの精度を選択(全ティックが一番精度が高い)
④期間を指定
⑤EAの動作を視覚的に表示します
⑥バックテストする時間軸を選択
⑦スプレッドを選択
⑧EAのパラメーターを設定(使用しているEAの説明書通りに設定が必要)
⑨通貨ペアの詳細の確認
⑩バックテスト後にEAの取引履歴を確認できる
⑪MetaEditarを起動
⑫最適化する場合にチェック

実際にバックテストを行う時には以下の画像の赤枠の部分を変更するだけで済むことが多いです。

MT4でのバックテストの取り方:実際にバックテストを行う際にはEAの選択、通貨ペアの設定、期間の指定、スプレッドの設定をしてスタートを押せばよい。

まずは①でEAの設定をし、②で通貨ペアを設定します。そして④の期間を設定し、⑥でバックテストする時間軸を設定、最後にスプレッドを設定して「スタート」を押せばバックテストが開始します。

スプレッドはPoint設定になっているので、例えば1.5Pipsでやりたい時には「15」、1.2Pipsでやりたい時には「12」と直接入力してください。

 

「OK」を押すとバックテストが始まり、完了するとアヒルの鳴き声のようなものが聞こえます。
完了したら、以下画像の左下の赤枠の「レポート」の部分で結果を確認できます。

MT4でのバックテストの取り方:バックテストを取った後は「レポート」で結果が見れる。

この時に不適合チャートが0以外なら失敗になりますので、ヒストリカルデータのダウンロードとセットからやり直してください。
モデリング品質は5分足以上であれば90%以上になりますので確認してください。

 

手順が多かったですが、以上でMT4でのバックテストの取り方は以上です。セッティングさえできれば、2回目以降にバックテストを取ることはそれほど時間はかかりません。

まとめ

今回は3つのバックテストの方法とMT4でバックテストを行う方法を説明しました。

自分の取引手法や自分の使用しているEAが、本当に今後も通用していくのかがバックテストで分かります。少し手順は多いですが、今取引が順調な人ほど一度バックテストを行ってみましょう。

また、当サイトでは自動売買システム(EA)を無料で配布しています。もちろん上記の方法でバックテストを取ることもできますし、バックテスト結果をお渡しすることもできます。ぜひ興味がある方は、以下のLINE@からご連絡ください。