MT4 長期のヒストリーデータを取得・作成する方法
この記事では、MT4の長期間のヒストリーデータを取得して各時間足データを作成する方法を説明します。
ヒストリーデータの作成は少し面倒ですが、一度作ってしまえばその後はずっと使いまわしすることができます。
時間が空いた時に一気に作ってしまうのが良いと思います。
1. 事前準備
ヒストリーデータに複数のFX業者のデータが混在すると、相場検証時などで勝因・敗因の検証が難しくなります。したがって、ヒストリーデータはできるだけ単一のFX業者のデータに統一するのが良いです。
データの混在を防ぐため以下の事前準備を行います。
FX業者から回線を切り離す
MT4がFX業者とつながっていると、チャートを開いたときにFX業者から価格データを自動でダウロードするため、データが混在してしまうことがあります。これを防ぐためいったん口座からログオフして回線を切ります。
注意
この操作時にもともとのパスワードがわからなくなってしまわないように注意してください。
「ファイル」→「取引口座にログイン」
パスワードをいったん削除して→「ログイン」
「コモンエラー」または「回線不通」と表示されたら、FX業者との回線遮断が完了です。
チャートを全て閉じる
チャートを開いていると、チャートを閉じたときやMT4を終了した時に、チャートの価格データが自動でヒストリーデータに保存されてしまいます。余計なデータの混在を防ぐためにチャートはあらかじめ閉じておきます。
チャートを全て閉じます。(MT4は終了しないでください)
既存データを削除
既存のヒストリーデータを削除して空の状態にします。
MT4の「ファイル」→「データフォルダを開く」でデータフォルダを開く。
「history」フォルダ→「FX業者名」フォルダへ進む。
フォルダの中にある拡張子.hstのファイルがヒストリーデータです。これらを削除します。
補足
既存データを残したい場合は、どこか別のフォルダにhstファイルをコピーします。
ヒストリーとチャートのバー数を最大にする
ヒストリーデータに保存できるデータ数とチャートに表示するデータ数を最大にするため、以下を行います。
MT4の「ツール」→「オプション」でオプションウィンドウを開く
「チャート」タブを開き、「ヒストリー内の最大バー数」と「チャートの最大バー数」を最大値(2147483647)にして「OK」をクリック。
補足
- 値の入力欄に「9999・・・・・」などの大きな数字を入れれば自動で最大値になります。
- ヒストリー内の最大バー数とチャートの最大バー数については、こちらの記事に詳しく書いてあります。→「MT4 ヒストリー内の最大バー数とチャートの最大バー数とは?おすすめ値は?」
以上で事前準備は完了です。MT4は起動したまま、次の手順へ進んでください。
2. ヒストリーデータの取得/MT4へインポート
続いてヒストリーデータを取得してMT4にインポートしていきます。ここでは有名どころのFXDD社からデータを入手する場合で説明します。(2005年1月から現在までのデータをダウンロードできます。】
1分足データをダウンロード
FXDDのサイトからデータを入手します。
ヒストリーデータのダウンロードページで、希望の通貨ペアをクリックしてダウンロード。
ダウンロードできたら、ファイルを解凍します。解凍すると拡張子が.hstのファイルが現れます。(例:USDJPY.hst)
補足
- ダウンロードファイルのサイズはUSDJPYで50MB程度です。
- ダウンロードできる時間足は1分足のみです。他の時間足は1分足のデータを元にして別途生成します。(やり方は後述)
MT4へインポート
解凍したファイルを以下の手順でMT4にインポートします。
MT4の「ツール」→「ヒストリーセンター」でヒストリーセンターのウィンドウを開く
通貨ペア名をダブルクリック→「1分足(M1)」をダブルクリック→「インポート」をクリック
補足
この時点では、まだデータ数は0レコードのはずです。レコード数が0でない場合は、既存のヒストリーデータが残ってしまっています。ここまでの手順を再確認してください。
インポートのウィンドウが開くので、「参照」をクリック
先ほど解凍したファイルを選択→「開く」
インポートする価格データが表示されるのでざっと確認し「OK」をクリック
「ヒストリーセンター」のウィンドウに価格データが表示されます。ここでもざっと確認して問題なければインポート完了→「閉じる」をクリック
チャートで確認
念のためインポートした通貨ペアの1分足チャートを開き、インポートできているかを確認します。
1分足チャートがちゃんと表示されればOKです。
以上で1分足のヒストリーデータの取得/MT4へのインポートは終了です。
3. 他の時間足データを作成する
ここまでで、1分足のヒストリーデータができあがったので、次に1分足データを加工して他の時間足データを作成します。
データの加工には「period converter ALL」というスクリプトを使います。自動で他の時間足データを作成してくれるのでとても簡単です。
period converter ALLをダウンロード
period converter ALLはMQL5.communityからダウンロードできます。ソースコードも公開されています。
ダウンロードページ(https://www.mql5.com/ru/code/11201)で「period_converter_ALL.mq4」をクリックしてダウンロード
period converter ALLをインストール
以下の手順でperiod converter ALLをMT4にインストールして使える状態にします。
MT4の「ファイル」→「データフォルダを開く」
「MQL4」フォルダ→「scripts」フォルダへ進む
「scripts」フォルダの中へperiod_converter_ALL.mq4をコピーする
MT4の「ナビゲーター」の下の方にある「スクリプト」を右クリック→「更新」をクリック
ナビゲーター内のスクリプトの所にperiod_converter_ALLが表示されればインストール完了
他の時間足データを作成
period converter ALLを使って以下手順で他の時間足データを作成します。
作成する通貨ペアの1分足チャートを開き、ナビゲーター内のperiod_converter_ALLをチャートにドラッグ&ドロップ
すぐにデータの作成がはじまります。データ作成中は、チャートの左上に進行状況を示すコメントが表示されます。完了するまで何もせず数分待ちます。
データ作成が完了すると、チャート左上のコメントが消えます(完了のメッセージは特に表示されません)
補足:作成される時間足
上記の操作ですべての時間足(M5, M15, M30, H1, H4, D1, W1, MN)がまとめて作成されます。
チャートで確認
各時間足のチャートを開いて、データがちゃんと作成されたかを確認します。
全ての時間足チャートがちゃんと表示されればOK
以上で他の時間足データの作成は完了です。
4. 後処理
上記までの手順で、ヒストリーデータ作成は完了です。最後に、切断していたFX業者との回線を繋いで復旧します。
FX業者との回線を復旧する
回線の復旧は取引口座にログインするだけです。
MT4の「ファイル」→「取引口座にログイン」
ID、パスワード、サーバーを入力して→「ログイン」クリック
接続状況に数字が表示表示されれば回線の復旧完了です。
補足
- FX業者の回線を復旧すると、FXDDからダウンロードしたヒストリーデータのブランク部分(例:現在時刻の付近など)が回線復旧したFX業者の価格データが埋められます。そのため若干のデータ混在が生じます。
- データの混在を完全に防ぎたい場合には、MT4を複数インストールして、ヒストリーデータ用と普段のトレード用に使い分ける等の方法で対処します。
以上で作業は全て完了です。お疲れ様でした。
まとめ
MT4の長期のヒストリーデータを作る手順を説明しました。
ヒストリーデータ周りは操作がややこしいのではじめは頭がこんがらがってしまうかもしれませんね。そんな時は、やっていることの意味を理解しながら覚えると少しすっきりすると思います。
わかりやすいです。2年前、FXスクールでの説明ではチンプンカンプンでしたが、しっかり今回学べましたwありがとうございますw
nanaoさんへ
私もヒストリーデータ周りは最初ちんぷんかんぷんでした。一つ一つの動作をチェックしていってチェックしてようやく仕組みがわかったという感じです。結構つまづく人が多いところなのかもしれませんね。
大変わりやすくて助かりました!ありがとうございます!
おやまかめさんへ
コメントありがとうございます。
お役に立ったならなによりです。