EAのバックテスト方法 Chapter 1
EAのバックテストを行うには過去のデータ = ヒストリカルデータが必要になります。
MT4の開発元であるMetaQuotes社よりデータをダウンロードすることも可能ですが、意外にもデータに抜けが多く精度の高いバックテストを行うには十分ではありません。
そこで無料のデータとしては長期間で、ある程度精度が高い、FXDD社が提供しているヒストリカルデータの入手方法を解説していきます。
1、まずはバックテスト用のMT4としてFXDD社のMT4をダウンロードしておきます。
※FXDD社のMT4はGMT+2(冬)/+3(夏)の世界基準のサーバータイムで、バックテスト用としては使い勝手がよいかと思います。
2、以下のリンクよりFXDD社ヒストリカルデータのダウンロードエリアに移動します。
3、バックテストに必要な通貨ペアをクリックしてダウンロードします。
ここでは例としてEURUSDをダウンロードしますので、EURUSDをクリックして保存します。
4、 「EURUSD.zip」という圧縮ファイルがダウンロードされますので、解凍してフォルダを開くと「EURUSD.hts」というファイルが確認できます。
5、メタトレーダー内にある既存のデータを削除します。
メタトレーダーを起動させ「ファイル」⇒「データフォルダを開く」⇒「history」で「default フォルダ」「downloadsフォルダ」および「Server(サーバー名)フォルダ」内のすべての「hstファイル」を削除します。
6、「ツール」⇒「オプション」⇒「チャート」をクリックします。
「ヒストリー内の最大バー数」「チャートの最大バー数」に「9999999999(9を10個)」と入力して「OK」をクリックします。
7、再度「チャート」をクリックしてそれぞれの値が「2147483647」となっていることを確認します。
これで長期のバックテストデータをインポートする受け皿が完成です。
8、先ほどFXDD社よりダウンロードしたヒストリカルデータをMT4にインポートしていきます。
「ツール」⇒「ヒストリーセンター」をクリックします。バックテストに必要な通貨ペアの「1Minute(M1)」をクリックし「インポート」をクリックします。ここではEURUSDのデータをインポートします。
9、「インポート」をクリックすると以下のウィンドウが表示されますので「参照」ボタンでバックテストに必要な通貨ペアの「hstファイル」を選択し「OK」をクリックします。
10、データベースのレコード数が大幅に増加すればインポート成功です。
※ここでMT4を再起動させ、インポートしたデータをMT4に反映させます。
11、先ほどインポートした1分足データから他の時間足(5分足以降)を生成します。
「ファイル」⇒「オフラインチャート」でインポートした1分足チャートを開きます。
12、「offline」と表示されたチャートが開きます。
13、ナビゲータから「スクリプト」⇒「period_converter+ALL (※)」をチャートにドラッグ&ドロップします。
※「period_converter+ALL」は1分足データを基に自動で全時間足を作成する便利なスクリプトです。初期状態のメタトレーダーにはインストールされていませので下記リンクより入手して下さい。
period_converter+All (Experts フォルダ内のscripts フォルダ内に設置して使用)
チャートにドラッグ&ドロップ後、「OK」をクリックすると5分足・15分足・30分足・・・と順に生成されます。
※ここでMT4を再起動させ、生成したデータをMT4に反映させます。
14、「ファイル」⇒「オフラインチャート」で5分足データから日足データまで生成されていることが確認できれば完了です。
これで2005年から現在までの比較的精度の高いバックテストが可能になります。