【MT4】バックテスト用過去データ(ヒストリカルデータ)の取得方法

ヒストリカルデータの作成方法

MetaTrader4 ヒストリカルデータの取得方法

FX業者から配信されるMT4のヒストリカルデータ(過去データ)は通常、数ヶ月程度しかありません。

自動売買ソフト(EA)のバックテストを実行するにはあまりにも短すぎます。

MT4の上部メニューから「ヒストリカルセンター」を選択してヒストリカルデータをダウンロードする方法もありますが、これは使っているFX業者からではなくMetaQuotes社からのデータであり、かなり精度の悪いデータになっていてバックテストには向いていません。

そこで使用するのがAlpari社のヒストリカルデータとFXDDのヒストリカルデータです。

以前は両方共ホームページからダウンロードできたのですが、Alpari ukが破綻してしまったためAlpari社のヒストリカルデータはホームページからダウンロードできなくなりました。

しかし、Alpari社のデモ口座を作ることことでAlpari社のヒストリカルデータがダウンロードできますので今回はこのAlpari社のヒストリカルデータダウンロードの方法と、FXDDのヒストリカルデータのダウンロード・インポート方法を解説していきます。

なお、データの精度はAlpari社の方が良いと言われています。(FXDD社は明らかにおかしなデータが入っていることがあります…)

FXDD社の場合は、どの業者のMT4にもインポートできますので口座を作る必要がないというのが利点です。(インポート後の作業が多いので、どっちもどっちな気もしますが…)

Alpari社・FXDD社共通の設定

長期のヒストリカルデータを取得する上で必ずしなければならない設定があります。

(Alpari社のヒストリカルデータをご利用になる場合にはAlpari社のMT4をインストールして、Alpari社のMT4に設定して下さい)

(1)MT4のツール>オプションを起動して「チャート」タブを表示してください。

チャートバー最大数設定

ヒストリー内の最大バー数とチャートの最大バー数に非常に大きな数を入力してOKを押します。

(表示に入らないくらい9を入れればOKです)

もう一度、オプションを見ると以下の様に自動的に最大値が設定されています。

最大数設定

Alpari社、FXDD社共通の設定は以上です。

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

Alpariのヒストリカルデータをダウンロードするためには、まず口座を作る必要があります。

下記のURLにアクセスしてデモ口座を申請して下さい。(英語ページです)

https://alpari.com/en/registration/?account=demo.standard.mt4

暫くするとデモ口座が開設されます。Alpari社のMT4をダウンロード&インストールしてください。

それでは、ヒストリカルデータをダウンロードしてみましょう。

(1)メニューのツール>ヒストリーセンターを起動します

ヒストリーセンター起動

(2)ヒストリカルセンターの任意の通貨ペアの1分足を選択し、右下のダウンロードボタンをクリックします

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

上記例ではEURUSDの1分足を選択してダウンロードボタンをクリックしています。

他の業者の場合、ダウンロードボタンをクリックすると「MetaQuotes社のヒストリカルデータである旨」を通知するポップアップが表示されますが、Alpariの場合はMetaQuotes社のデータではないため、ポップアップ表示はありません。

Alpariのヒストリカルデータ取得作業はこれだけです。

なお、ヒストリカルセンターでみると1999年からデータがありますがMetaQuotes社のデータのようでバックテストで使えるのは2004年の6月からになります。(AlpariのMT4を使用していると、1999年を指定しても2004年6月からバックテストが開始されます。)

ヒストリカルデータが取得できたら、EAをインストールしてバックテストしてみましょう。

Alpariのバックテスト用過去データ(ヒストリカルデータ)の取得方法は以上です。

FXDD社のヒストリカルデータ取得方法

FXDD社はヒストリカルデータをホームページで公開していますので、お使いのMT4にインポートできるのがメリットです。(ただし、バックテスト専用のMT4を用意した方が良いでしょう。)

(1)以下のURLからFXDDのヒストリカルデータをダウンロード

http://www.fxdd.com/bm/jp/forex-resources/forex-trading-tools/metatrader-1-minute-data/

FXDD1分足データダウンロード

MetaTraderと書かれている下に通貨ペアが表示されています。

ダウンロードしたい通貨ペアをクリックするとダウンロードが開始されます。

なお、ダウンロードしたファイルはZip圧縮されていますので解凍しておいてください。

(2)不要データの削除

開いているチャートはすべて閉じてMT4のデータフォルダを開きます。

データフォルダが開いたらMT4は終了してください。

そして「データフォルダ」のhistory¥の下にある使用しているサーバー名(Axioryの場合、AxiopryAsia-01Demo 等)の下にあるヒストリーファイル(.hst)を削除します。(使用する通貨ペアだけ削除してもOKです)

WS004711

削除したらMT4を起動します。

(3)メニューのツール>ヒストリーセンターを起動します

ヒストリーセンター起動

(4)任意の(先ほどダウンロードした)通貨ペアの1分足を選択し、インポートボタンをクリックします

インポート

(5)インポート画面右上の「参照」ボタンをクリックします

インポート 参照ボタン

(6)右下の「ファイルの種類」をMetaQuotes files(*.hst)にして、ダウンロード&解凍して出てきたファイルを開きます。

hstファイル選択

(7)インポートされると表が更新されます。OKボタンをクリックしてください。

ヒストリー更新OK

インポートが終わったらヒストリーセンターも閉じてください。

(8)1分足から他の時間足を生成します。

下記のファイルを保存します。(右クリックメニューから「ファイルとして保存」等、選択してダウンロードしてください)

Period_converter_All.mq4

このファイルをMT4のデータフォルダのMQL4¥Scriptsの下に保存します。

保存後、MT4を再起動します。

(9)オフラインチャートを開く

MT4の上部メニューのファイル>オフラインチャートを起動します。

そして、先ほどインポートした通貨ペアの1分足(M1)を開いて下さい。

オフラインチャート

(10)開いた1分足チャートにPeriod_conveter_Allをドラッグアンドドロップします。

ナビゲーターウィンドウの「スクリプト」に先ほどダウンロードしたPeriod_converter_Allが表示されています。

スクリプトをドラッグアンドドロップ

正しく動くと左上に Converting to Period …のような文字が表示され、数字がぐるぐる動きます。

表示が消えるまで待ちましょう。

消えたら生成終了です。MT4を再起動すれば2005年からバックテストができる状態になっています。

モデリング品質90.00%

1分足からデータを生成している場合、モデリング品質が90.00&になります。

バックテストして「モデリング品質」をチェックしてみましょう。

※FXDD社の場合、先週の金曜日までのデータしかありませんので、バックテスト時は「先週の金曜日」を終了日に設定しないと使用している業者のデータが混ざってモデリング品質が少し落ちる事があります。(1分足データから他の時間足を生成する前に、業者の1分足を取得手からPeriod_converter_Allを実行すれば直近までの時間足を生成することができます。私は面倒なのでそこまでやっていませんが…)

モデリング品質

なお、モデリング品質は99.00%が最高値です。

※ティックデータを使用する有料ツールなどではこの値を99.90%として表示するなどしていますが、それらの数字自体には意味はありません…。以下に99.90でバックテストしてみた記事のリンクを貼っておきます。ご参考まで…

以上、MT4の「バックテスト用過去データ(ヒストリカルデータ)の取得方法」でした。