MT4を使用してEAのバックテストなどを行う際に、使用するヒストリカルデータに抜け、空白期間があると、バックテストの信頼性が落ちてしまいますよね。
そのため、バックテストを行う前に、使用するヒストリカルデータに歯抜けや空白期間が存在していないかチェックしておいた方がよいでしょう。
MT4のヒストリカルデータの歯抜けや空白期間のチェックは、無料で公開されている「Analyze History」というEAを使えば簡単にできます。
Analyze History EAのダウンロード
下記URLにアクセスします。
https://www.mql5.com/en/code/11643
「analyzehistory.mq4」というリンクをクリックして、ファイルをPCにダウンロードしてください。
インストール方法
Metatrader4を起動し、「ファイル」メニューから「データフォルダを開く」をクリックします。
表示されたデータフォルダの中の「MQL4」ディレクトリを開き、その中の「Experts」ディレクトリの中に ダウンロードした「analyzehistory.mq4」をコピーします。
Metatrader4を再起動すれば、インストールは完了です。
使い方
MT4を起動し、ストラテジーテスターを表示させます。
赤枠で囲んだツールボックス上のアイコンをクリックしてストラテジーテスターを表示してください。
メニューバーの「表示」→「ストラテジーテスター」からでも表示できます。
セッティングタブを表示し以下の設定を行います。
1.エキスパートアドバイザが選択されていることを確認
2.プルダウンメニューから「analyzehistory.ex4」を選択
3.「通貨ペア」にチェックしたい通貨ペア名を選択
4.「モデル」に「始値のみ」を選択
5.「期間を指定」チェックボックスにチェックが付いていればチェックを外す
6.チェックしたいヒストリカルデータのタイムフレームを選択
すべて設定したら「スタート」をクリックします。
処理が完了したら、「操作履歴」タブをクリックします。
ヒストリーデータに空白期間があれば、メッセージにgap from ~to~と表示され、どこからどこまでが空白期間なのかを教えてくれます。
メッセージの上で右クリックし、「開く」をクリックすると、表示されているメッセージが保存されているログファイルの保存場所を開くことができます。
ストラテジーテスター上だと見難いので、直接ログファイルを開いて確認するといろいろ捗ります。
FXDDヒストリカルデータで空白期間をチェックしてみた
2015年11月15日現在のFXDDのドル円ヒストリカルデータをダウンロードしてチェックしてみました。
量が多いので、一部のみ表示しています。
説明だと、週末のギャップは無視され、クリスマス等の祝日は報告されると書いてあるのですが、FXDDのデータを使った限りでは、実際は週末の空白も表示されます。
週末といってもブローカーによって取引時間が異なるので、週末のギャップが何を意味するかよくわかりませんが。
上下のデータで数字が違っているポイントを探せば、週末以外のギャップを探しやすいと思います。
FXDDのヒストリカルデータにおいては、週末の終了時間がまったくのばらばらなことが画像からわかると思います。
唖然としますね。
今度は、FXDDデモ口座から取得したヒストリーデータでチェックしてみました。
週の終わりが23:44、週の開始が00:00と揃っていて、抜けのない綺麗なデータだと一目でわかります。
これが、私が口座から配信されたヒストリカルデータを自分で保存して蓄積していけと言っている理由です。
詳しくは、ヒストリカルデータの信頼性を上げるには?をご覧ください。
コメント