tips

MT4にGMOクリック証券のヒストリカルデータをインポートする方法

  • バックテストをしたいけどヒストリカルデータって何?
  • ヒストリカルデータはどこで入手できるの?
  • ヒストリカルデータのインポートはどうすればいいの?

MT4でEAのバックテストをするためには、ヒストリカルデータ(過去チャートの4本値)が必要です。ヒストリカルデータはMT4に元から入っているのですが、データの信頼性が低いことや期間が短いため正確なバックテスト結果を得ることができません。

そこでこの記事では、MT4で正確なバックテストをするために必要なヒストリカルデータのインポートについて、データのダウンロードからMT4へのインストールまでを細かく解説します。

慣れるまでは少し面倒な作業かもしれませんが、正確なヒストリカルデータなしではEAのバックテストはできません。

この記事を見れば1時間もかからずに正確なヒストリカルデータのインポートができますので、ぜひ最後まで目を通してくださいね。

ヒストリカルデータとは

ヒストリカルデータとは過去チャートの4本値(始値、終値、高値、安値)のデータのことで、EAのバックテストを行う時には必ず必要となります。

MT4には元々ヒストリカルデータがインポートされているので、わざわざダウンロード等をしなくてもすぐにバックテストができる状態にはなっています。

しかし元々入っているヒストリカルデータは精度があまりよくないため、例えば始値や終値が本来のものと違っていたり、ある期間のデータが抜け落ちてしまっていたりするのです。

また、元々入っているデータは期間が短いということもあり、10年以上といったような長期のバックテストができないという問題もあります。

そこで少々面倒ではあるのですが、精度の高いヒストリカルデータを入手してMT4にインポートすることで、正確なバックテストができるようなるというわけです。

GMOクリック証券のヒストリカルデータがオススメの理由

ヒストリカルデータ自体はMT4を開発したMetaQuotes社が提供しているものであればMT4を操作するだけで簡単にインポートすることができます。

しかしMetaQuotes社のヒストリカルデータは精度が悪く抜けも多いため、大切なお金を運用するためのテストに使用するには耐えません。

そこで少し前まで主流だったのがFXDD社のヒストリカルデータを使用するという方法でした。

大手ブローカーであるFXDDのヒストリカルデータはMetaQuotes社に比べると精度が高かったため私を含め多くのトレーダーが使用していたのですが、2016年頃のデータが大きく欠損していたため現在ではおすすめできないものとなってしまいました。

そこで私が現在使用しているのが、国内最大手であるGMOクリック証券のヒストリカルデータです。

GMOクリック証券のヒストリカルデータは信頼性が高くデータの欠けもありません。

ですので、GMOクリック証券からダウンロードしたヒストリカルデータをインポートして使用すれば、高精度なバックテストが可能になるということなのです。

ココがおすすめ

ちゃんとしたヒストリカルデータを使えば、精度が高いバックテスト結果を得ることができます!

MT4にGMOクリック証券のヒストリカルデータをインポートする方法

さて前置きはこれくらいにして、早速MT4にGMOクリック証券のヒストリカルデータをインポートする方法を解説したいと思います。

まず最初に、GMOクリック証券が提供しているヒストリカルデータというのはMT4用のものではないのでそのままでは使用できません。

そのため下記のような手順を経て、MT4にインポートしていくことになります。

GMOクリック証券のヒストリカルデータをダウンロード

注意ポイント

ヒストリカルデータをダウンロードするためには、GMOクリック証券に口座を作っておく必要があります。もしも口座がないという場合には先に口座開設をしておきましょう。

GMOクリック証券にログインしマイページに移動します。

 

マイページに移動したら、ページ上部にある「ツール」をクリックします。

GMOクリック証券-ツール

 

画面左部分にある「ヒストリカルデータ」をクリックします。

GMOクリック証券-ヒストリカルデータ

このページでは各月毎にヒストリカルデータをダウンロードすることができるのですが、普通に1つずつダウンロードすると非常に時間がかかります。

GMOクリック証券-ヒストリカルデータ

今回はGMOクリック証券が提供している最も古いデータ(2007年以降)から最新のデータまでまるごと全部ダウンロードしたいので、ブラウザ(firefox)のアドオンにあるダウンロードツールを使用して一括ダウンロードしてしまいます。

【無料】DownThemAll!をインストールする

firefoxにはDownThemAll!というダウンロードのためのアドオンがありますのでこちらを利用していきます。

firefoxを起動し、右上の三本線をクリックしてアプリケーションメニューを開きます。

開いたら「アドオンとテーマ」をクリックします。

上部のアドオンを探すという検索窓に「DownThemAll!」と入力して右側の虫眼鏡マークをクリックします。

DownThemAll

画面に従ってインストールした後、firefoxを再起動します。

DownThemAll

これでDownThemAll!のインストールは完了です。

DownThemAll!でヒストリカルデータを一括ダウンロードする

ではもう一度GMOクリック証券のヒストリカルデータのページに戻ります。

とりあえず最新のページの適当な場所で右クリックします。

右クリックメニューの中に「DownThemAll!」がありますので、そちらをクリックします。

GMOクリック証券-ヒストリカルデータ

そうするとDownThemAll!が起動してメニューが立ち上がります。

ウィンドウの上半分にはダウンロードリストが表示されていると思いますが、これが現在のGMOクリック証券のヒストリカルデータのページあるすべてのリンクということになります。

DownThemAll使い方

ポイント

フィルタ:全てのファイルにチェック

サブフォルダ:任意のフォルダを作成しておく

あらかじめダウンロードフォルダ内にヒストリカルデータをダウンロードするための新規フォルダを作成しておきましょう。

フォルダ名は何でも構いませんが、今回は「hist」というフォルダ名にしておきました。

フィルタ項目の「全てのファイルにチェック」を入れ、サブフォルダに先ほど作成した「hist」フォルダを選択したら、「待機状態で追加」をクリックします。

現時点ではまだ今年分のヒストリカルデータしかリストに追加されていない状態なので、ここまでの作業を繰り返して2007年以降のすべてのヒストリカルデータをリストに追加してからダウンロードします。

ということで再度GMOクリック証券のヒストリカルデータのダウンロードページに戻ります。

GMOクリック証券-ヒストリカルデータ

上部にある「2022年」の部分をクリックして、前年(2021年)に変更します。

2021年のヒストリカルデータのダウンロードページに切り替わったことが確認出来たら、先ほどと同様にページ上で右クリックし、「DownThemAll!」を選択してリスト画面を出します。

すると待機リストの中に2021年分のヒストリカルデータが追加されていることがわかるかと思います。

ここではフィルタとサブフォルダの選択は引き継がれているので、「待機状態で追加」ボタンを押すだけでOKです。

これを一番古いデータである2007年分まで繰り返し行います。

すべてのヒストリカルデータの追加が完了したら、リストの上で右クリックし「すべて選択」を押します。

DownThemAll使い方

これができたら画面上部にある緑色の「再開」ボタンをクリックします。

DownThemAll使い方

これでダウンロードが開始されますので完了するまで少し待ちましょう。

新規フォルダを作ってヒストリカルデータを解凍する

ダウンロードしたヒストリカルデータはzipファイルで圧縮された状態になっています。

これを通貨ペア毎にフォルダを作って、そこに解凍していきましょう。

今回はドル円のヒストリカルデータを作りますので、「hist」フォルダの中に「USDJPY」というフォルダを作っておきます。

さらに「USDJPY」フォルダの中に、「history」というフォルダも作っておきましょう。

そして、「USDJPY_」からはじまるzipファイルを「USDJPY」フォルダの中にすべて移動します。

参考

windowsの標準機能の「展開」では複数のzipファイルを一括解凍することができません。7-Zipのような解凍ソフトを使用して一括解凍しましょう。

ここでは7-Zipを使ってドル円のヒストリカルデータを「hisotry」フォルダ内に一括解凍します。

このような感じで1日毎のヒストリカルデータがcsvファイルが解凍されていれば成功です。

AOK FIle ConnectorでヒストリカルデータをMT4用に変換

GMOクリック証券のヒストリカルデータはGMOのFXネオ用のデータなので、そのままではMT4にインポートして使うことができません。

そこでAOK FIle Connectorという無料ソフトを使用してMT4で使用できる形に変換します。

AOK FIle Connectorのダウンロードはこちら

AOK FIle Connectorはインストールの必要はないので、解凍して中にある実行ファイルからすぐに起動できます。

が、まだ起動しなくて大丈夫です。

その前に、ヒストリカルデータを変換するための設定ファイルを作成します。

この設定ファイルはGMOクリック証券のヒストリカルデータを文字列を置換してひとつのcsvファイルに結合するために必要となるものです。

正規表現で記述する必要があるのですが、難しい話はナシにして下記のテキストをそのままコピーして適当なファイル名で保存しておいてください。

メモ

s/日時,始値\(BID\),高値\(BID\),安値\(BID\),終値\(BID\),始値\(ASK\),高値\(ASK\),安値\(ASK\),終値\(ASK\)\n//kg
s/日時,始値\(BID\),高値\(BID\),安値\(BID\),終値\(BID\),高値\(ASK\),安値\(ASK\)\n//kg
s/日時,始値,高値,安値,終値\n//kg
s/([0-9]+,[0-9]+.[0-9]+,[0-9]+.[0-9]+,[0-9]+.[0-9]+,[0-9]+.[0-9]+)(.*)/$1/kg
s/([0-9][0-9][0-9][0-9])([0-9][0-9])([0-9][0-9])([0-9][0-9])([0-9][0-9])([0-9][0-9])/$1\.$2\.$3,$4:$5/kg

今回は「Convert.txt」としました。

これができたら、先ほどダウンロードしておいたAOK FIle Connectorを起動します。

起動したら、「結合元ファイルリスト」という部分に、「history」フォルダをドラッグします。

するとcsvファイルがすべて結合元ファイルリストの中に読み込まれます。

下部のオプションは下記の通りに設定します。

AOK FIle Connectorの使い方

メモ

ファイル形式:テキスト形式
改行コード変換:LF(Unix)
日本語文字コード変換:シフトJIS
文字列置換:上部は「正規表現で置換」、下部は先ほど作成した「Convert.txt」
セパレータ文字列の挿入:しない

以上の通り設定ができたら「結合」ボタンをクリックし、変換されるのを少し待ちましょう。

変換されたらヒストリカールデータの完成です。

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

できあがったヒストリカルデータをMT4にインポートします。

MT4を起動し、上部メニューの「ツール」から「ヒストリーセンター」を選択。

MT4-ヒストリーセンター

左側に通貨ペアがずらっと並んでいるので、下にスクロールしてUSDJPYを探します。

MT4-ヒストリーセンター

USDJPYが見つかったらダブルクリックします。

 

すると各時間足が表示されるので、「1分足(M1)」をもう一度ダブルクリックします。

この時に、右側に1分足のデータが出てきた場合はすべて選択してから削除してください。

つまりデータを空っぽにしておくということです。

右側のデータが空になったことを確認したら「インポート」をクリックします。

MT4-ヒストリーセンター

インポートの画面が開きますので、「ファイル名」の右側にある「参照」ボタンをクリックします。

MT4-ヒストリーセンター

ここで先ほど変換したGMOクリック証券のヒストリカルデータを選択して「開く」をクリックします。

次に「表示移動」の部分を設定します。

今回利用するGMOクリック証券のヒストリカルデータはGMT+9です。

これをFXDDのGMT+2に変更する必要がありますので、「表示移動」の部分を「-7」に変更します。

ここは使用するブローカーによって違うので適宜調整してください。

ここまで設定できたら「OK」ボタンをクリックしましょう。

画面の右側にデータが出てきたらインポートは完了です。

「閉じる」をクリックして作業を完了しましょう。

他の時間足のヒストリカルデータを生成する

さていよいよ最後の工程です。

ここまでの作業でMT4にGMOクリック証券のヒストリカルデータをインポートすることができました。

しかしまだ1分足のデータしかインポートされていない状態です。

そこでインポートした1分足のデータから、5分足や15分足といった他の時間足のデータを作成します。

そのために必要になるのがperiod converter ALLというMT4のスクリプトです。

https://www.mql5.com/ru/code/11201

リンク先の赤で囲った部分をクリックするとダウンロードできます。

period converter ALLのダウンロード

ダウンロードできたらMT4を起動しましょう。

上部メニューの「ファイル」から「データフォルダを開く」をクリックします。

データフォルダが開くので、「MQL4」=>「Scripts」の順にフォルダを開きます。

この「Scripts」フォルダの中に、先ほどダウンロードしておいた「period converter ALL.mq4」を移動させます。

それができたらMT4に戻ります。

ナビゲーターを開いて下の方までスクロールし、「スクリプト」を探します。

見つけたら「スクリプト」の文字の上にマウスのポインタを当て、右クリックで「更新」を押します。

period converter ALLの使い方

するとスクリプトの下に「Period_Converter_ALL」が表示されます。

これを確認したら、上部メニューバーの中から「ファイル」=>「オフラインチャート」をクリックします。

今回はUSDJPYのヒストリカルデータを作成するので、「USDJPY,M1」を探して選択し、右上の「開く」をクリックします。

ドル円の1分足オフラインチャートが表示されるので、次に「Period_Converter_ALL」にマウスポインタを当てて右クリックし、「チャートで実行」をクリックします。

period converter ALLの使い方

するとヒストリカルデータの作成が開始されます。

これですべての作業が完了です。

まとめ

今回はGMOクリック証券のヒストリカルデータを、FXDDのMT4にインポートする方法を解説いたしました。

EAの開発や購入したEAのバックテストをするためには、高精度なヒストリカルデータが必須となります。

この記事に沿って進めて頂くと初心者でも問題なくヒストリカルデータのインポートができるはずなので、ぜひこの機会に挑戦してみてください。

-tips

© 2022 MT4 Studio | 業界最安値のEA・インジケーター作成代行