Select Language

【EAコラム】FXDDのヒストリカルデータをMT4にダウンロード・インポートする方法

【EAコラム】FXDDのヒストリカルデータをMT4にダウンロード・インポートする方法

  • twitter
  • facebook
  • LINE
  • RSS

  • twitter
  • facebook
  • LINE
  • RSS
update 2023.03.27 18:32
【EAコラム】FXDDのヒストリカルデータをMT4にダウンロード・インポートする方法

update 2023.03.27 18:32

エキスパート・アドバイザ(EA)のバックテストを行うためには、過去の価格推移のデータである「ヒストリカルデータ」が必要です。

MT4開発元であるメタクオーツ社が提供するヒストリカルデータであれば、MT4から手軽にダウンロードできますが、データの精度が低いため、自社のデータを提供しているFXブローカーのヒストリカルデータがよく使われます。

無料で手に入れられるヒストリカルデータとしては、海外FX業者のFXDD(エフエックスディーディ)や国内FX業者のDukascopy(デューカスコピー)のものが有名です。

この記事では、FXDDのヒストリカルデータの特徴や、FXDDのヒストリカルデータをMT4にダウンロード・インポートする方法を紹介します。

FXDDのヒストリカルデータの特徴

FXDDのヒストリカルデータには、以下の2つの特徴があります。

  • 1分足データで提供される
  • 2005年からのデータが取得できる

なお、対応している通貨ペアは、ドルストレートとクロスペア、エキゾチック通貨ペアの計21種類です。

ドルストレート
GBP/USD
NZD/USD
USD/CAD
AUD/USD
USD/CHF
EUR/USD
USD/JPY
クロスペア
AUD/CAD
EUR/CAD
AUD/JPY
EUR/CHF
AUD/NZD
EUR/GBP
EUR/JPY
CAD/JPY
CHF/JPY
GBP/CHF
EUR/AUD
GBP/JPY
エキゾチック通貨ペア
USD/MXN
USD/TRY

1分足データで提供される

ヒストリカルデータには、「時間足データ」と「ティックデータ」の2種類があります。時間足データの方は、対応する時間足の4本値(始値・高値・安値・終値)と出来高のデータが入っています。逆に言えば、4本値以外の値動きは時間足データではわからないということです。

4本値

1分足は、時間足データの中で最小単位であるため、最も正確なバックテストができます。1分足の5本分の4本値の値動きが5本足1本に集約され、5本足3本分の4本値の値動きが15分足に集約されるため、上位足になるほどデータ量が5分の1、3分の1と減っていきます。

一方ティックデータは、全ての値動きのデータが記録されています。バックテストを行う際には、もちろんティックデータを利用した方が時間足のデータよりも正確なバックテストが可能です。

ただし、MT4の標準仕様では、ティックデータをバックテストに利用することはできません。そのため、標準仕様の中で正確なバックテストを行いたい場合は、1分足を利用することとなります。

point 有料ツールではティックデータが可能

MT4でも、「Tick Data Suite(TDS)」という、サードパーティ製の有料のツールを購入すれば、ティックデータでのバックテストが可能です。なお、MT5では機能が進化し、標準仕様でティックデータでのバックテストが可能になりました。

2005年からのデータが取得できる

FXDDは、2002年に創業された老舗ブローカーであるため、実際に自社で提供していた長期間にわたるデータの利用が可能となっています。ダウンロードできるのは2005年のデータからであり、15年以上のデータを用いたバックテストが可能です。

バックテストは、テスト期間が長期になるほど信頼性が高いとされており、GogoJungle(ゴゴジャン)などのEA販売サイトでも、2000年代からの長期間のバックテストがEAの成績として利用されることが多くあります。

knowledge バックテストのモデリング品質とは?

外部サイトで販売されているEAの成績は、バックテスト結果から確認できます。バックテスト結果のうち、「モデリング品質」という項目がバックテストの精度を表しています。時間足データを利用する場合、モデリング品質は90%を上回ることはありません。しかしティックデータ、つまり有料ツールのTick Data Suite(TDS)を利用してバックテストを行った場合、モデリング品質の最大値は99.90%となります。

モデリング品質 モデリング品質

FXDDのヒストリカルデータをインポートする方法

FXDDのヒストリカルデータをインポートし、バックテストで使えるようにするには、合計で5つの作業が必要となり、少し手間がかかります。画像を用いてそれぞれの手順を解説しますので、この記事を参考にインポートを進めていってください。

  • FXDDからファイルをダウンロードする
  • ヒストリカルデータの容量を増やす
  • 既存のヒストリカルデータを削除する
  • MT4にインポートする
  • 他の時間足のデータを用意する

FXDDからファイルをダウンロードする

FXDD公式サイトのヒストリカルデータ提供ページにアクセスし、ヒストリカルデータの銘柄名をクリックすると、ダウンロードが始まります。

FXDDヒストリカルデータ提供ページ link
FXDDヒストリカルデータのダウンロードページ FXDDヒストリカルデータのダウンロードページ

ヒストリカルデータは、zipファイルで提供されるため、ダウンロード後に解凍する必要があります。なお、FXDDのヒストリカルデータは「.hst」ファイルで提供されます。

point .hstと.csvファイル

ヒストリカルデータは、多くの場合「.hst」ファイルや「.csv」ファイルの形式で提供されます。「.csv」ファイルは一般的なファイル形式ですが、「.hst」ファイルはヒストリカルデータ専用のファイル形式です。

ヒストリカルデータの容量を増やす

MT4では、保存できるヒストリカルデータの量を設定することができます。初期状態では最大量にはなっておらず、データ量の多いヒストリカルデータをインポートしてしまうと、一部しか保存されないため注意が必要です。

全てのヒストリカルデータを保存するためにも、データのインポート前にあらかじめMT4の設定でヒストリカルデータの保存容量を最大に増やしておきます。

手順1

MT4を開き、メニューバーの「ツール」をクリック、「オプション」を選択します。(ショートカットキー操作:「Ctrl」+「O」)

ツールバーのオプション表示

手順2

「チャート」タブ内の「ヒストリー内の最大バー数」「チャートの最大バー数」欄に「9」を打てるだけ打ち、「OK」をクリックします。いずれも最大バー数は「2,147,483,647」本ですが、すべて「9」を打つことで、自動で最大バー数を保存・取得することが可能となります。その後、MT4を再起動することで、設定が完了します。

ヒストリー内の最大バー数 ヒストリー内の最大バー数

既存のヒストリカルデータを削除する

MT4では、1つの銘柄に対して保存できるヒストリカルデータは1つのみです。そのため、FXDDのヒストリカルデータをインポートする場合、既存のヒストリカルデータは削除する必要があります。

手順1

メニューバーの「ファイル」をクリックし、「データフォルダを開く」を選択します。

データフォルダを開く

手順2

「history」フォルダを展開します。

historyフォルダの展開 historyフォルダの展開

手順3

データを削除したいサーバ名を選択します。

Expertsフォルダの展開

手順4

ヒストリカルデータを削除したい銘柄の全てのヒストリカルデータを削除します。例えば、EURUSDのヒストリカルデータを削除したい場合、「EURUSD1」から「EURUSD10080」までの全てのデータを削除します。

ヒストリカルデータの削除
point 既存データ数は状況によって異なる

フォルダに入っているヒストリカルデータの数は、過去のダウンロード状況などによって異なります。銘柄によっては全く入っていないこともあり、その場合は削除の必要はありません。

MT4にデフォルトで入っているヒストリカルデータは、基本的にはMT4の開発元であるメタクオーツ社が提供するデータです。これは「ヒストリーセンター」から再度ダウンロードできますので、削除してしまっても問題ありません。

ただし、時間足ごとにダウンロードし直す必要があるため、後で使う予定がある場合はお使いのPCに保存しておくことをおすすめします。

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

ダウンロードしたFXDDのヒストリカルデータを実際にMT4へインポートしていきます。

手順1

メニューバーの「ツール」をクリックし、「ヒストリーセンター」を選択します。

ツールバーのヒストリーセンター表示

手順2

ヒストリカルデータをインポートしたい銘柄名をダブルクリックして時間足のメニューを展開し、「1分足」を選択します。その後、「インポート」をクリックします。

ヒストリーセンターの1分足
point 銘柄の区分はブローカーごとに異なる

ヒストリーセンターを開くと、「Forex」や「Crypto」などの銘柄の区分が表示され、その区分の中に「EURUSD」や「USDJPY」などの具体的な銘柄名が表示されます。銘柄の区分名はブローカーごとに異なります。英語なのでやや読みづらいですが、FX通貨ペアでは「Forex」、さらに細かい区分として「Major(メジャー通貨ペア)」や「Minor(マイナー通貨ペア)」がよく使われます。

ヒストリーセンターの銘柄区分

手順3

「参照」ボタンをクリックします。

ヒストリーセンターの参照ボタン

手順4

右下のファイルの種類の選択欄で「MetaQuotes files(*.hst)」を選択し、インポートしたい銘柄のヒストリカルデータをダブルクリックします。

インポートするヒストリカルデータのファイルの種類選択

手順5

時間や4本値(始値・高値・安値・終値)の欄にヒストリカルデータが表示されていることを確認し、「OK」ボタンをクリックします。

ヒストリカルデータのインポート完了
point ヒストリカルデータの詳細設定

インポートするヒストリカルデータは、以下の5つの詳細設定が可能です。

  • セパレーター:データ内の各項目を区切る文字を指定します
  • スキップ:指定した列と行のデータは、インポートされません
  • 表示移動:ヒストリカルデータを指定した時間分ずらします
  • 選択したものを使用:指定したヒストリカルデータだけを使用したい場合に使用します
  • 出来高:出来高データのインポートを省略したい場合にチェックします

手順6

インポートが終了すると、上部に表示されるレコードの数が差し替えられます。レコード数を確認したら「閉じる」ボタンをクリックし、MT4を再起動することでインポートは完了です。

ヒストリカルデータのインポート完了確認

他の時間足のデータを用意する

バックテストで1分足以外の時間足を利用したい場合は、インポートしたFXDDのヒストリカルデータを使って他の時間足の分を用意する必要があります。なお、対応する時間足が作成されていない状態でバックテストをすると、「TestGenerator: no history data」というエラーメッセージが表示されます。

手順1

メニューバーの「ファイル」をクリックし、「オフラインチャート」を選択します。

データフォルダを開く

手順2

先ほどインポートした1分足を選択し、「開く」ボタンをクリックします。

オフラインチャートを開く

オフラインチャートが表示されたら、上部に表示されるチャートの名称に「(offline)」がついていることを確認してください。

オフラインチャートの確認方法 オフラインチャートの確認方法

手順3

ツールバーの「自動売買」ボタンをONにします。マークの色が緑色ならON、赤色ならOFFを意味します。

データフォルダを開く データフォルダを開く

後で利用する、時間足を変換するためのスクリプトを稼働させるために自動売買を許可することが必要です。売買を行う機能はありませんのでご安心ください。

point MT4で稼働するプログラムは3種類

MT4では、インディケータ・EA・スクリプトの3種類のプログラムを利用できます。スクリプトは、プログラムを1度のみ実行するツールであり、EAやチャート上のオブジェクトなどの管理や削除に利用されます。

手順4

「ナビゲーター」の「スクリプト」にある「PeriodConverter」をチャートにドラッグ&ドロップします。

オフラインチャートの確認方法 オフラインチャートの確認方法

「PeriodConverter」はMT4にデフォルトで用意されているスクリプトですが、過去に削除してしまったなどで見当たらない場合は、以下のページから再度入手ができます。

PeriodConverter提供ページ link

手順5

スクリプトの設定画面にて「全般」タブを選択し、「自動売買を許可する」にチェックが入っていることを確認します。なお、手順4でMT4本体の自動売買機能をONにしておくと、デフォルトでチェックマークが入ります。

スクリプトの自動売買許可 スクリプトの自動売買許可

手順6

スクリプトの設定画面にて「パラメーターの入力」タブを選択し、「Period Multiplier factor」の欄に、変換したい時間足を分数で入力します。5分足に変換したい場合は「5」、1時間足に変換したい場合は「60」となります。

なお、このパラメータは「倍数」を設定するものです。したがって1分足以外の時間足にスクリプトを適用した場合、元の時間足にパラメータをかけた時間足が出力されます。

スクリプトのパラメータ入力 スクリプトのパラメータ入力
point 手順完了はターミナルから確認

正常に時間足の変換が完了したかどうかは「ターミナル」の「エキスパート」タブから確認できます。成功した場合、以下のように「〇〇record(s) written」というメッセージが表示されます。

PeriodConverterの結果確認 PeriodConverterの結果確認

手順7

最後にMT4本体を再起動します。他の時間足のデータが必要な場合は、手順4〜6を繰り返してください。

point チャートへの再度適用が必要

スクリプトの設定画面は、インディケータやEAの設定画面と似ています。しかしスクリプトは一度しかプログラムを実行できないため、再度設定画面を出すことができません。

そのため、スクリプトのパラメータを変更してPeriodConverterを複数回利用したい場合は、同じスクリプトを再度チャートに適用する必要があります。スクリプトはインディケータと異なり、一つのチャートにつき一つしか適用できません。同じチャートに再度適用すると、「'PeriodConverter'を停止して、'PeriodConverter'をチャートに適用しますか?」というメッセージが表示されますので、「はい」を選択します。

スクリプトの再稼働

エラーが出た場合の対処方法

FXDDのヒストリカルデータのインポートが完了したら、正常に利用できるか実際にバックテストを行って確認してみましょう。

バックテストは、メニューバーの「表示」タブの「ストラテジーテスター」から行うことができます。

バックテスト実施

ストラテジーテスターで表示されるセッティング画面から、バックテストの条件を詳細に設定することで、検証したいEAやインジケーターのバックテストができます。

なお、FXDDのヒストリカルデータをインポートするための作業手順で既存のヒストリカルデータを削除しています。そのためFXDDのヒストリカルデータのインポートがうまくいっていない場合、バックテスト結果が表示されません。

エラー発生時は、ストラテジーテスターの操作履歴タブにて「TestGenerator: no history data」というエラーメッセージが表示されます。

ヒストリカルデータのエラーメッセージ ヒストリカルデータのエラーメッセージ

よくあるエラーは、以下の4点です。どの段階でうまくいっていないのかを確認するために、一つずつ確認してください。

  • ヒストリカルデータの容量を確認する
  • 1分足でバックテストができるか確認する
  • 対応する時間足が生成されているか確認する
  • それでもインポートできない場合

ヒストリカルデータの容量を確認する

「ヒストリカルデータの容量を増やす」の見出しの手順1を参考に、「ヒストリー内の最大バー数」、「チャートの最大バー数」がどちらも「2,147,483,647」となっていることを確認してください。

2つのうちどちらかしか設定していなかったり、設定変更後の再起動を忘れていたりすると、両方の最大バー数が「2,147,483,647」になりません。

1分足でバックテストができるか確認する

5分足や1時間足など、1分足以外でバックテストをしてエラーが出た場合、1分足に切り替えて稼働するかどうか確認してください。1分足であれば正常に稼働する場合、PeriodConverterでの変換がうまくいっていない可能性があります。

対応する時間足が生成されているか確認する

「他の時間足のデータを用意する」の見出しの手順1を参考に、オフラインチャートの一覧を表示させ、使いたい時間足があるかどうかを確認してください。

オフラインチャートの一覧確認 オフラインチャートの一覧確認

対応する時間足を生成する際によくあるミスは、自動売買がONになっていないことです。時間足を生成する際に利用するスクリプトは、MT4本体の自動売買設定または、スクリプトの個別設定内の自動売買設定がONになっていないと動作しません。

それでもインポートできない場合

上記の注意点を確認してもうまくいかない場合は、手順後の再起動を忘れずに行ったかを確認しながら最初から全ての手順を再度行ってみてください。MT4のヒストリカルデータ関連の手順は、こまめな再起動が必要であることが多いため注意が必要です。

ヒストリカルデータはインポートして使うのがおすすめ

MT4からダウンロードしたヒストリカルデータは精度が低いため、バックテストがエラーとなって動かないことが多々あります。そのためより精度の高いバックテストをするためにも、インポートしたデータを使うようにしましょう。

まずは無料で利用できるヒストリカルデータを使ってみましょう。そして、よりバックテストの精度を上げたいと感じた場合は、ティックデータでバックテストを行う有料ツール「Tick Data Suite(TDS)」の利用を検討してみてもよいでしょう。


Date

作成日

2023.03.27

Update

最終更新

2023.03.27

Myforex編集スタッフーFX担当ー

FXトレード歴7年で、海外FX業者の利用経験が豊富。テクニカル分析を用いた短期トレードが得意で、日本テクニカルアナリスト協会認定テクニカルアナリスト(CMTA)を取得。テクニカル分析からFX業者比較まで、FX関連の幅広い記事の執筆を行う。

この記事は、お役に立ちましたか?

ご覧いただきありがとうございます。Myforexでは、記事に関するご意見・ご感想をお待ちしています。
また、海外FX・仮想通貨の経験が豊富なライター様も随時募集しております。

お問い合わせ先 [email protected]

貴重な意見をいただきありがとうございます。
貴重な意見をいただきありがとうございます。

関連記事

アクセスランキング

GEMFOREXがM&Aによる事業継承の協議を開始

海外FX業者のGEMFOREXを運営するGemTrade LLCが、全事業を売却することを発表しました。2023年8月1日までにM&Aを完了するとしています。M&Aによって通常通り出金が再開されるのかユーザーの注目を集めています。
update2023.05.29 21:00

GEMFOREXが出金遅延の原因を公開|50億円の持ち逃げと10億円の未払いの被害も影響

海外FX業者のGEMFOREXが出金遅延問題に関する情報を更新し、2022年後半に決済代行会社による50億円の持ち逃げが発生していたことが明らかになりました。また、別の決済代行会社による10億円の未払いも発生しているようです。全額出金されるのか、ユーザーの間で不安が広がっています。
update2023.05.15 21:00

トラベルルールとは?TRUSTとSYGNAでの分断や回避策について解説

トラベルルールとは、取引所の顧客が仮想通貨を送金する際、送金元の取引所が送金先の取引所に一定の情報を通知するというルールです。日本でも導入され、問題点が明らかになっています。
update2023.05.22 21:00

GEMFOREXがサービス休止を発表|出金停止やMT4/MT5の接続状況悪化で混乱も

海外FX業者のGEMFOREXがサービスの停止を発表しました。決済代行会社の未払い・持ち逃げが原因とされる出金遅延や、M&Aの発表で、動向が注目されていたGEMFOREXですが、出金遅延に対応するためサービスを停止するとしています。
New
update2023.06.01 21:15

GEMFOREXユーザーが決済代行会社を訴訟予定?銀行入金停止で一層不穏な状況に

海外FX業者GEMFOREXのユーザーの一部が、GEMFOREXの決済代行会社の訴訟を検討しているようです。GEMFOREXでは、2022年12月頃から出金遅延が発生していました。そういった中、LINEのオープンチャット上で被害を受けているユーザーが訴訟に向けて動き出しているようです。
update2023.05.31 20:00

メルカリでビットコインを買うメリットは?スプレッドは1%で手数料は無料

2023年3月9日、メルカリがビットコイン取引サービスを開始しました。約2週間で利用者数10万人を突破し、大きな話題となっています。
update2023.04.17 21:00

Twitterから消えたGEMFOREX|出金遅延に関する通報が原因?

2023年4月27日、GEMFOREX(ゲムフォレックス)の公式Twitterアカウントが、削除されました。ただし、GEMFOREXは引き続きサービスを提供している模様です。
update2023.04.28 21:00

仮想通貨AZEROの将来性は?高性能ブロックチェーンAleph Zeroの特徴や利用可能なDAppを解説

AZEROはAleph Zeroが発行する独自仮想通貨です。Aleph Zeroはレイヤー1のブロックチェーンで、様々なDappsが開発されています。
update2023.04.17 20:00

カップウィズハンドルとは?売りでの活用例やだましへの対策も実例で解説

カップウィズハンドルとは、ローソク足が形成するチャートパターンの一種です。価格が上昇したあと、アーチ状に緩やかなカーブを描いて下落してから再上昇し、上方向にブレイクします。この記事では、チャート画像を用いながら、実際に利用したトレードを解説します。
update2023.03.23 19:30

Bybitカードが日本上陸か?Bybitのデビットカードの使い道や注意点を解説

Bybitカードは大手取引所Bybitが発行する仮想通貨(暗号資産)デビットカードで、ヨーロッパで利用されています。
update2023.05.23 19:30
youtube youtube

免責事項:Disclaimerarw

当サイトの、各コンテンツに掲載の内容は、情報の提供のみを目的としており、投資に関する何らかの勧誘を意図するものではありません。
これらの情報は、当社が独自に収集し、可能な限り正確な情報を元に配信しておりますが、その内容および情報の正確性、完全性または適時性について、当社は保証を行うものでも責任を持つものでもありません。投資にあたっての最終判断は、お客様ご自身でなさるようお願いいたします。

本コンテンツは、当社が独自に制作し当サイトに掲載しているものであり、掲載内容の一部または、全部の無断転用は禁止しております。掲載記事を二次利用する場合は、必ず当社までご連絡ください。

  • Facebook
  • Twitter
  • LINE

Myforexでは、このウェブサイトの機能向上とお客様の利便性を高めるためにクッキー使用しています。本ウェブサイトでは、当社だけではなく、お客様のご利用状況を追跡する事を目的とした第三者(広告主・ログ解析業者等)によるクッキーも含まれる可能性があります。クッキーポリシー

クッキー利用に同意する
share
シェアする
Line

Line

Facebook

Facebook

Twitter

Twitter

キャンセル