「ヒストリカルデータの信頼性を上げるには?」という記事で、ヒストリカルデータの信頼性を上げるための解決策として、「デモ口座やライブ口座のヒストリカルデータの保存」を推奨しました。
今回はその具体的な保存方法・保存手順について解説したいと思います。
ヒストリーセンターよりエクスポート
FX業者のデモ口座やライブ口座で配信されているヒストリカルデータを取得するには、MT4のヒストリカルセンターを利用します。
実際にエクスポートできるデータは現在チャートで表示されているデータ(ヒストリーセンターにプールされているデータ)のみとなります。
そのため、実際にエクスポートする前にダウンロード可能な全てのデータをヒストリーセンターにプールさせる必要があります。
ヒストリーセンターに取得可能な全てのデータをプールさせる
今回、ヒストリーデータをダウンロード出せる方法として以下の記事を参考にしました。
http://d.hatena.ne.jp/fai_fx/20100318/1268838133
1.MT4の起動とログイン
MT4を起動し、デモ口座のヒストリカルデータをダウンロードしたい場合はデモ口座にログイン、ライブ口座のヒストリカルデータをダウンロードしたい場合はライブ口座にログインします。
ここでは、FXDDのデモ口座を使用して解説していきます。
2.MT4の設定
メニューの「ツール」から「オプション」をクリックします。
「チャート」タブをクリックし、「ヒストリー内の最大バー数」と「チャートの最大バー数」の所をすべて9の数字で埋めれるだけ埋めてください。
入力したら「OK」ボタンをクリックします。
3.ダウンロードしたい通貨ペアの1分足チャートを表示
ヒストリカルデータをダウンロードしたい通貨ペアの1分足チャートを表示させます。
4.ヒストリーセンターでダミーデータを追加
メニューの「ツール」から「ヒストリーセンター」をクリックします。
左の通貨ペア一覧から、ダウンロードしたい通貨ペアの1分足をダブルクリックし、右側にデータを表示させます。
上の赤枠に「2048レコード」と表示されており、1分足チャートを開いた直後は2048個のデータしか読み込まれていないという事がわかります。
右側の一番上のデータをダブルクリックして「日足データダイアログ」を表示させます。
ダミーデータを作成するため、日付の年度を「1970」に変更して「OK」ボタンをクリックします。
すると、一番下に1970年のダミーデータが追加されます。
データが追加されたことを確認したら「閉じる」ボタンをクリックしてヒストリーセンターダイアログを閉じます。
5.1分足チャートを更新
再度1分足チャート画面に戻ります。
チャート上でマウスを右クリックし、表示されたメニューの中から「更新」をクリックします。
更新ボタンを押すと、先ほどヒストリーセンターで登録したダミーデータの位置から取得可能な全てのデータを一気にダウンロードしてくれます。
右下のステータスバーに表示されているダウンロードテータ量の数値が変化しますので数値が変動しなくなるまで待ちます。
6.ヒストリーセンターでダミーデータを削除
ダウンロードテータ量の変化がなくなり、ダウンロードが終わったと判断したらヒストリーセンターを再度表示させます。
メニューの「ツール」から「ヒストリーセンター」をクリックします。
上の赤枠のところを見ると、「71566」レコードとなっており、最初の「2048レコード」から大きく増えていることがわかります。
一番下までスクロールし、追加したダミーデータをクリックして選択状態にしてから「削除」ボタンを押します。
これで、ダミーデータが削除され、入手可能なブローカーのヒストリカルデータの出来上がりです。
7.データのエクスポート
ヒストリーセンターからヒストリカルデータをPCに保存します。
「エクスポート」ボタンをクリックします。
「名前をつけて保存」ダイアログボックスが表示されますので、お好みの場所にデータをcsvファイルとして保存してください。
以上で、ブローカーのヒストリカルデータの取得手順は終わりです。
あとは、ダウンロードしたい通貨ペア分同じ事を繰り返すだけです。
ブローカーのヒストリカルデータ取得応用編
先ほど紹介したブローカーのヒストリカルデータの取得は1通貨ペア毎に作業する必要があるため、結構面倒ですよね。
そこで、複数通貨ペア分のヒストリカルデータを効率よく取得・作成する方法を紹介します。
ここでは例として、ドル円、ユーロ円、ポンド円、ユーロドル、ポンドドルの5通貨ペア分のヒストリカルデータの取得について説明します。
1.MT4の起動とログイン
MT4を起動し、デモ口座のヒストリカルデータをダウンロードしたい場合はデモ口座にログイン、ライブ口座のヒストリカルデータをダウンロードしたい場合はライブ口座にログインします。
2.ダウンロードしたい通貨ペアの1分足チャートをすべて表示
ヒストリカルデータをダウンロードしたい全ての通貨ペアの1分足チャートを表示させます。
3.MT4の設定
メニューの「ツール」から「オプション」をクリックします。
「サーバー」タブを表示し、「プロキシサーバーを有効にする」をチェックしてから「プロキシ・・・」ボタンをクリックします。
プロキシダイアログが表示されるので、「サーバー」の所にでたらめな文字列をてきとうに入力してください。
入力したら「OK」ボタンをクリックてプロキシダイアログを閉じます。
次に「チャート」タブをクリックしてチャートタブを表示させます。
「ヒストリー内の最大バー数」と「チャートの最大バー数」の所をすべて9の数字で埋めれるだけ埋めてください。
こちらは最初の手順のときにもやりましたね。
入力したら「OK」ボタンをクリックしてオプションダイアログを閉じます。
4.MT4を再起動
ここで、MT4を再起動させてください。
先ほどプロキシーを有効にして、サーバー名に適当な文字を入力したため、サーバーに接続されないはずです。
MT4右下のステータスバーに「回線不通!」と表示されていることを確認してください。
4.ダミーデータのみのヒストリカルデータの作成
メニューの「ツール」から「ヒストリーセンター」をクリックします。
左の通貨ペア一覧から、ダウンロードしたい通貨ペアの1分足をダブルクリックし、右側にデータを表示させます。
右側の一番上のデータをダブルクリックして「日足データダイアログ」を表示させます。
ダミーデータを作成するため、日付の年度を1970に変更して「OK」ボタンをクリックします。
一番下にダミーデータが追加されていることを確認してください。
ダミーデータを確認できたら、ダミーデータ以外のデータをすべて選択状態にします。
ダミーデータ以外の全てのデータを選択するには、ダミーデータの1つ上のデータをクリックしてから一番上までスクロールし、一番上のデータを「Shiftキー」を押しながらクリックしてください。
選択できれば、「削除」ボタンをクリックします。
これで、ダミーデータしかないヒストリカルデータの出来上がりです。
※faiさんのサイトではダミーデータが2つ必要と書いてありましたが、1つだけでも問題なく取得できることを確認しております。
上記の作業を、ヒストリカルデータを作成したい他の通貨ペアに対しても行います。
すべての通貨ペアで上記の作業を終えたら、「閉じる」ボタンをクリックして「ヒストリーセンター」ダイアログを閉じます。
ヒストリカルデータをダミーデータのみにしたのでチャート上には左端に1本だけの線が表示されているはずです。
5.ダミーデータのみのヒストリカルデータを退避
せっかく手間をかけて作成したダミーヒストリカルデータですので、いつでも使用できるように適当な所に保存しておきましょう。
ファイルメニューの「データフォルダを開く」をクリックし、データフォルダを表示させます。
ここでMT4を一度終了させてください。
「history」フォルダを開き、ヒストリカルデータを取得するサーバー名のフォルダを開きます。
ここでは、FXDDのデモサーバーを使用して作業を行いましたので、「FXDD-MT4 Demo Sever」となりますが、使用しているブローカーサーバーに合わせて適切なフォルダを開いてください。
フォルダを開くと、ファイルの拡張子が「.hst」のファイルが存在すると思います。
これが先ほど作成した、ダミーデータのみの1分足ヒストリカルデータとなります。
今回は、ドル円、ユーロ円、ポンド円、ユーロドル、ポンドドルのデータを作成したので5つのヒストリカルデータファイルが作成されています。
このダミーデータのみのヒストリカルファイルをいつでも好きなときに使えるように、どこか別のフォルダ等にコピーして保存しておいてください。
例えば1ヶ月毎にブローカーのヒストリカルデータを取得する場合等でこのファイルを使用するれば、効率よくデータの取得が可能になります。
6.MT4を起動
先ほどMT4を終了させたので、MT4を再度起動させます。
7.チャートにBarCountインジゲーターを設置
チャートデータを更新する際に、どのくらいデータをダウンロードしたのかを一目でわかるようにするため、「BarCountインジゲーター」をチャートにセットしておくとわかりやすいです。
このインジゲータは、左上にバーの数を表示するだけの単純なインジゲーターです。
「BarCountインジゲーター」をセットすると、チャートの左上に「Bars=数字」が表示されるはずです。
この数字がバー(ローソク足)の数となります。
8.プロキシーサーバーの設定を解除
メニューバーの「ツール」から「オプション」をクリックします。
サーバータブを表示し、「プロキシサーバーを有効にする」のチェックをはずして「OK」ボタンをクリックします。
しばらくするとMT4は自動でサーバーにログインするはずです。
もし、自動でログインされない場合は、MT4を再起動させてください。
9.チャートを更新
サーバーにログインすると、チャートが自動で更新されると思いますが、直近のデータしか自動でダウンロードされないので、チャートに対して更新処理を行います。
開いている全ての通貨ペアのチャートに対して、マウスを右クリックし、表示されるメニューの中の「更新」をクリックしてください。
更新をクリックすると、取得可能な全てのヒストリカルデータをダウンロードします。
ダウンロードが完了するまでしばらく待ってください。
開いている全てのチャートの「BarCount」インジゲーターの表示が上のように大きな数字になれば、ヒストリカルデータのダウンロードは完了です。
10.スクリプトでヒストリカルデータをエクスポート
ヒストリカルデータをエクスポートするためのスクリプト「川蝉HistoricalDataExport」を使って、対象通貨ペアのヒストリカルデータを一括でCSVファイルにエクスポートします。
ナビゲーターウィンドウの「スクリプト」から「kawasemi_HistoricalDataExport」をダブルクリックします。
スクリプト設定ダイアログが表示されるので、「パラメーターの入力」タブを表示し、パラメーターを設定します。
パラメータについての詳細な説明は「川蝉HistoricalDataExport」を参照ください。
Timeframeが1になってることを確認します。
SubFolderはエクスポートファイルを格納するフォルダ名を指定します。
CurrencyListに、ヒストリカルデータをエクスポートしたい通貨ペア名をカンマで区切って入力します。
※必ずブローカー指定の表記で指定してください。
DeleteDateTimeはデフォルト設定でOK(ダミーデータを自動で削除してくれます)
設定が完了したら「OK」ボタンをクリックします。
エクスポート処理が始まるので、完了まで待ってください。
処理が終われば、「データフォルダ\MQL4\Files」の中にスクリプトで指定したサブフォルダが作成され、ダミーデータ削除済みのヒストリカルデータがCSVファイルとして保存されているはずです。
以上で、複数通貨ペアのヒストリカルデータの一括保存は完了です。
11.ヒストリーセンターのヒストリカルデータを削除
MT4で使用中のヒストリカルファイルのほうは、ダミーデータが残ったままなのでヒストリカルファイルを削除します。
ファイルメニューの「データフォルダを開く」をクリックし、データフォルダを表示させます。
ここでMT4を一度終了させてください。
「history」フォルダを開き、ヒストリカルデータを削除するサーバー名のフォルダを開きます
.hstファイルを全て選択し、キーボードのDeleteキーでファイルを削除してください。
以上で、全プロセスは終了です。
再度、ブローカーから取得可能な最新のヒストリカルデータをエクスポートする際は、MT4を終了させた状態で、上のフォルダにある「.hst」ファイルを全て削除し、「5.ダミーデータのみのヒストリカルデータを退避」で退避させたヒストリカルデータを上のフォルダにコピーします。
そして、MT4を再度起動し、「9.チャートを更新」以降を行えば同じように最新のヒストリカルデータを取得することができます。
コメント