MT4でバックテストを行うためにヒストリカルデータ(過去データ)が必要です。
そこで、信頼性の高いと評判のGMOクリック証券のヒストリカルデータを使おうとしたところ、ダウンロードしただけでは使えないということが判明しました。
ダウンロードしたデータを加工する方法がわからなかったり、めんどくさそうと思ってあきらめた方も多いのではないでしょうか。
そういった方のために、データの加工方法や自動でデータの加工を行ってくれるツールの紹介をしていきます。
この記事を読んで、信頼性の高いバックテストを行えるようにしましょう。
ヒストリカルデータの信頼性
MT4でバックテストを行うには過去のチャートデータが必要になります。これをヒストリカルデータと呼びます。
ヒストリカルデータを手に入れるにはFX業者のページからダウンロードすることができますが、各社でフォーマット等に違いがあったり、データに抜けがあったり、完全に同じデータというわけではありません。
正確なバックテストを行うためにはヒストリカルデータの信頼性も重要になるため、なるべく信頼性の高いヒストリカルデータを使うことをおすすめします。
この記事では信頼性が高いと思われるGMOクリック証券のヒストリカルデータを使うために、ダウンロードからMT4に取り込むまでを詳しく解説していきます。
GMOクリック証券からヒストリカルデータをダウンロードする
GMOクリック証券のヒストリカルデータをダウンロードするにはFX口座の開設が必要になりますので、口座をお持ちでない方はまず口座を開設しましょう。
口座をお持ちの方はGMOクリック証券のFXネオのページにログイン後、「ツール」⇒「ヒストリカルデータ」をクリックします。
ダウンロードのページが表示されるので、欲しいデータの年を選択して、通貨ペアの横に月ごとに表示されている「DL」ボタンをクリックします。
ヒストリカルデータは2007年からダウンロードできますので、欲しい通貨ペアは2007年からすべてダウンロードしましょう。
メモ
GMOクリック証券のヒストリカルデータはデータのフォーマットが途中で2回ほど変わっています。
そのため、MT4に取り込む際にデータの加工が必要です。
(加工方法は記事の途中で解説します)
・~2014年6月19日
・2014年6月20日~2016年1月
・2016年2月~
ダウンロードしたヒストリカルデータを加工する
ダウンロードしたデータは下記の様に圧縮されたデータになっています。
月ごとにフォルダがあり、その中に日ごとのデータがCSVファイルで入っています。
ダウンロードしたデータは前述した通り、年月日によってデータのフォーマットが違うのでそのままではMT4で読み込めません。
MT4で読み込めるようにデータを加工していきます。
・2007年1月~2014年6月19日のヒストリカルデータ
データは「日時」「始値」「終値」「安値」「高値」の5種類に分かれています。
このデータをMT4に読み込ませるには、「日時」のデータをMT4が読み込める様に、下記の様なフォーマットに直す必要があります。
20070102070000 ⇒ 2007-01-02 07:00:00
加工したデータが下記です。
ちなみにMT4に読み込ませるときはヘッダー情報である1行目( 日時,始値,終値,安値,高値) は削除します。
・2014年6月20日~2016年1月のヒストリカルデータ
データは「日時」「始値(BID)」「高値(BID)」「安値(BID)」「終値(BID)」「高値(ASK)」「安値(ASK)」の7種類に分かれています。
MT4に読み込ませるためには、先程と同様に「日付」のフォーマットを加工する必要が足ます。
さらに「高値(ASK)」と「安値(ASK)」のデータは不要なので削除します。
加工後のデータは下記の様になります。
これも同様にヘッダー情報である1行目( 日時,始値(BID),終値(BID),安値(BID),高値(BID)) は削除します。
・2016年2月~のヒストリカルデータ
2016年以降のデータには「EXモード」のデータが入っています。
EXモードというのは、発注数量が多い注文モードです。
通常モードは発注量が100万通貨までですが、EXモードは500万通貨までの発注が可能です。
さらにEXモードではスプレッドが大きくなるため、ここでは通常モードのデータを使用します。
データは 「日時」「始値(BID)」「高値(BID)」「安値(BID)」「終値(BID)」「始値(ASK)」「高値(ASK)」「安値(ASK)」「終値(ASK)」の9種類に分かれています。
「日付」のフォーマットはこのままでよいので、 「始値(ASK)」「高値(ASK)」「安値(ASK)」「終値(ASK)」 の4つのデータを削除します。
加工後のデータは下記の様になります。
これも同様にヘッダー情報である1行目( 日時,始値(BID),終値(BID),安値(BID),高値(BID)) は削除します。
データの加工は手動でやるとすごく大変なので、勉強のためプログラミングで自作のツールを使って自動化してみました。
ネット上には同じように自動でデータの加工をしてくれるツールが公開されています。
下記のツールがおすすめです。
加工したヒストリカルデータをMT4に取り込む
MT4に取り込むデータができたら、あとはMT4に読み込ませればOKです。
MT4への取り込み方法はこちらの記事を参考にしてください。
まとめ
MT4で自動売買を行うためには利益を出せるEAを使うことが大事です。
そのEAの性能を確認するためにはバックテストを行うことで、トレンド相場に強かったりレンジ相場に強い等、EAの特徴を見極める必要があります。
信頼のおけるバックテストを行うために必要なのが信頼性のあるヒストリカルデータです。
この記事では信頼性のあるGMOクリック証券のヒストリカルデータの使用方法について解説しました。
データの加工がちょっとめんどくさいですがツールを使うことで処理を自動化できますので試してみてください。
それでは、よいFXライフを。