神速のHistorical Data ダウンロード術。

今日は、MetaTrader で最も素早くブローカーのヒストリカルデータをダウンロードする方法を紹介します。


(1) 1分足チャートを開きます。


(2) HistoryCenter を開き、目的の通貨ペアのデータを選びます。


(3) 一番上のデータをダブルクリックして、時刻を1970に変更します。

↓データの一番下に 1970年のダミーデータが追加されます。


(4) HistoryCenter を閉じて、チャート上で右クリックして更新を選びます。

↓ダウンロード中は、ステータスのダウンロードデータ量の数値の変化を見る以外に確認の手段はありません。

ダウンロード完了の確認は、Homeキーを押してチャート右端のデータの日付を確認するか、Bars の本数を表示させるインジケータをあらかじめチャートに表示させておくと分かりやすいです。

int start(){
   Comment(" Bars = ",Bars);
}


(5) 最後に、HistoryCenter を開いて、ダミーデータを削除します。

スクロールによるダウンロードでは、「表示中のデータより古いデータを少しください」の繰り返しでしたが、この手法では、「1970年から今日までの間の抜けてるデータを全部送れ!!」と言ってるようなものなので、めちゃめちゃ速いです..。そして、一括取得するので途中のデータ抜けも起きにくいと思います。










閑話休題


この手法を半自動で効率よく行おうとしたら、
(1) あらかじめ、全ての*.hst ファイルを1970年のダミーデータ2本だけにしておく。(1本ではダメ)
(2) MT4 を起動し、当該チャートを更新する。
(3) ダウンロードが完了したら、MT4を終了し、*.hst ファイルから1970年のデータを一括削除する。
という手順が考えられます。


実際に試したのが下図で、緑のバーが横に一直線になっているのがダミーデータです。

ダウンロード完了後、1970年のデータを削除して正常なチャートになりました。


…で、試した感想は、これはブローカーのネットワークへの負荷が大きすぎます^^;
接続数や帯域制限を設けてる設備があれば問題無いと思うのですが、そうでない場合、ちょっと迷惑を掛け気味になりそうです。同時に20通貨ダウンロードなどは避けましょう..。