MT4ツール

Axioryのヒストリカルデータを使ってバックテストの精度を上げる

ヒストリカルデータ
家の助
家の助
EAのバックテストを行うには、精度の高いヒストリカルデータが必要です
ねね
ねね
そこでこの記事では、ヒストリカルデータの入手が容易で精度が高いと言われているAxiory(アキシオリー)のヒストリカルデータ導入方法をご紹介していきます

MT4標準のヒストリカルデータは精度が低い

ヒストリカルデータ

 

MT4に同梱されているヒストリカルデータには過去の高値・安値・始値・終値の数値が記録されており、普段見ているチャートのローソク足を表示する役割のほか、バックテストでもこのヒストリカルデータを使って損益が計算されます。

しかしこのヒストリカルデータ、実は提供する業者によってかなりばらつきがあり、残念ながら標準で提供されるMetaQuotes社のヒストリカルデータは精度が低く、データの抜けも多くてバックテストエラーがでたり、テスト結果が実際の損益と大きく乖離してしまうことが多々あります。

その対策として、FX業者が提供しているヒストリカルデータをダウンロードしてお使いのMT4にインストールしてデータの精度を上げる必要があります。

無料でヒストリカルデータを提供してくれている業者には、デューカスコピーやFXDD、FXCMなどがありますが、今回は導入の敷居が低くて精度が高い、海外FX業者のAXIORY(アキシオリー)のヒストリカルデータを導入していきたいと思います。

家の助
家の助
業界最高精度としては、TDSという有料ヒストリカルデータも存在するのですが、こちらは初月だけで1万円程度かかりますので、スキャルピングなどのテストが必要な方でない限りはそこまで必要ではないでしょう

 

アキシオリーのヒストリカルデータを導入する手順

ねね
ねね
ヒストリカルデータの導入には下記の4ステップが必要です

①ヒストリー内の最大バー数を増やす&価格データダウンロードを停止

②古いヒストリカルデータを削除する

③AXIORYのサイトからヒストリカルデータをダウンロード

④MT4にデータをインポートする

それでは順番に解説していきたいと思います。

 

①ヒストリー内の最大バー数を増やす&価格データのダウンロードを停止

MT4の設定

MT4上部メニューの【ツール】→【オプション】をクリック

 

MT4の設定

【チャート】タブを選択して【最大バー数】2箇所に『2146483647』(最大値)と入力しましょう。

ここには『99999999999』など適当に大きな数値をいれても『2146483647』に調整されます。

ねね
ねね
この作業をすることによって、ヒストリカルデータを読み込める期間の縛りを開放できます

 

MT4の設定

続いてリアルタイムでMT4にダウンロードされていくヒストリカルデータを一旦停止します。

【サーバー】タブをクリックして、【プロキシサーバーを有効にする】をクリックして【プロキシ…(P)】をクリック

 

MT4の設定

【サーバー】に適当な名前をいれて【OK】をクリック

家の助
家の助
この作業は、無意味なプロキシサーバーを入力してMT4を一時的にオフライン状態にしています。これによりヒストリカルデータが自動でMT4にダウンロードされてAXIORYのデータと混ざらないようにする処置です

 

②MT4の古いヒストリカルデータを削除する

AXIORYのヒストリカルデータ

続いて、MT4の【ファイル】→【データフォルダを開く】を選択

 

AXIORYのヒストリカルデータ

ヒストリカルデータが入っているフォルダをクリックします。(この画面はAXIORYのフォルダですが、お使いのMT4によってこのフォルダ名は変わります。大抵は普段ログインしているサーバー名などが付いています)

 

AXIORYのヒストリカルデータ

中には『.hst』ファイルがありますので、このファイルを削除します。その後、MT4を再起動すればヒストリカルデータがMT4上から削除されます。

家の助
家の助
この作業を省いても一応動作はするのですが、エラーを誘発したり古いヒストリカルデータが優先で使われたりすることがありますので、ここで削除しておくのが確実です 

 

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

家の助
家の助
ヒストリカルデータがダウンロードできる、AXIORYのサイトへ移動します 

 

AXIORYのヒストリカルデータ

 

上部メニューの【プラットフォーム】→【MT4/MT5ヒストリカルーデータ】をクリック

 

AXIORYのヒストリカルデータ

膨大な量のヒストリカルデータがありますので、ひとまずはメインで使うデータだけをダウンロードしておきましょう。

 

※2015年分から55種類の通貨+2種類のCFD(金属)のダウンロードが可能です。

※ここでは1分足のみのダウンロードが可能ですが、のちほどこの1分足データから他の時間足のデータを作成します。

※スタンダード口座(STP)は手数料なしのスプレッド広め、ナノ/テラ口座(ECN)は手数料ありのスプレッド狭めの口座です。日本だとスタンダード口座が一般的になります。

 

④ヒストリカルデータをMT4にインポート

データのインポート

MT4上部メニュー【ツール】→【ヒストリーセンター】をクリック

 

データのインポート

インストールしたい通貨と時間足を選択して【インポート】をクリック(もしここでヒストリカルデータが残っていたら削除しておきましょう)

 

データのインポート

【参照】をクリック

 

データのインポート

AXIORYのサイトからダウンロードした価格データを選択します

 

※ここに表示されない場合はファイルの種類を【All Files】に変更してみてください。

※ダウンロードした価格データは.zipファイルなので、事前に展開しておいてください。

 

データのインポート

.csvファイルを選択すると、ここにデータが表示されますので下部の【OK】をクリック

 

データのインポート

価格データのインポートが完了しました

 

Axioryの1分足データは月ごとに分かれていますので、この作業を何度か繰り返してインポートしていきます。

全て入れ終わったら、一覧を下までスクロールしてどこか抜けていないかを確認しましょう。

 

⑤1分足データから他の時間足を作成する

ねね
ねね
ここでは、インストールしたAXIORYの1分足データから他の時間を作成する作業をしていきます。色々な時間足作成ツールがありますが、一度に全ての足を作成できるperiod_converter_ALLというスクリプトがおすすめです!
家の助
家の助
period_converter_ALLはこちらからダウンロードできますよ

 

period_converter_all

period_converter_ALLはインジケーターではなくスクリプトなので、MT4の【ファイル】→【データフォルダを開く】→【MQL4】→【scripts】フォルダへいれて利用します

 

チャートへ適用

AXIORYのデータがインポートされている1分足の該当チャートを開き、ナビゲータウィンドウからperiod_converter_ALLをチャートへドラッグ&ドロップすれば、自動で他の時間足が作成されます。

上記の操作でM5, M15, M30, H1, H4, D1, W1, MNの時間足が作成されますが、全て作り終えるにはしばらく時間がかかります。

家の助
家の助
必要なヒストリカルデータをインポートしたら、前半で指定したプロキシサーバーの利用を解除して、MT4をオンライン状態に戻せば作業は完了です!