yuki
yuki
MT4でEAやサインツールをバックテストするなら、最初に確認したいのがヒストリカルデータです。データが抜けていたり、時刻がずれていたりすると、テスト結果も大きく変わります。
カオチャイ
カオチャイ
MT4標準のデータだけで検証すると、ブローカーの実際の値動きとズレることがあります。特にEAや短期売買の検証では、使うデータを先に整えておきたいですね。

結論
この記事では、デューカスコピーから取得したヒストリカルデータをMT4へインポートする流れを解説します。デューカスコピー自体の評判や業者比較には広げず、1分足データの取得、時刻変換、MT4側の下準備、インポート、上位足作成までの作業手順に絞って進めます。

この記事でわかること
  • MT4のヒストリカルデータとは何か
  • バックテスト前にデータを整える理由
  • デューカスコピーから1分足データを取得する流れ
  • UTC+0のデータをMT4向けに時刻変換する手順
  • MT4へインポートする前の下準備

MT4のヒストリカルデータとは?

ヒストリカルデータとは、過去のローソク足データのことです。

MT4のチャートやバックテストでは、過去の始値、高値、安値、終値などのデータを使って、EAやインジケーターの動きを再現します。

ここで使うデータが抜けていたり、実際のブローカーの価格と大きく違っていたりすると、バックテストの結果も信用しにくくなります。

特にEAの検証では、同じロジックでも使うヒストリカルデータによって、勝率、損益、最大ドローダウンが変わることがあります。

  • MT4のバックテストは過去データをもとに動く
  • データ抜けがあると検証結果が不安定になる
  • ブローカーごとに配信価格が違うため、同じ通貨ペアでも結果が変わる
  • EAや短期売買の検証ではデータの質が特に重要になる

MT4に最初から入っているデータだけで簡単に確認することもできますが、本格的にバックテストを行うなら、検証用のヒストリカルデータを別途用意しておいた方が安心です。

MT4標準のヒストリカルデータだけでは不十分なことがある

MT4では、ヒストリーセンターからMetaQuotesのヒストリカルデータをダウンロードできます。

手軽に使えるため、最初の動作確認には便利です。

ただ、検証用として見ると、ローソク足の抜け、期間の不足、ブローカーとの価格差が気になることがあります。

短期売買やEA検証では、わずかな価格差やデータ抜けでも結果に影響します。

そのため、正確な検証をしたい場合は、MT4標準データだけで判断せず、別のヒストリカルデータでも確認する方が現実的です。

MT4のヒストリーセンターを開く画面

MT4上部メニューの【ツール】から【ヒストリーセンター】を開くと、標準のヒストリカルデータを確認できます。

MT4ヒストリーセンターで通貨ペアと時間足を選ぶ画面

通貨ペアと時間足を選び、ダウンロードボタンを押せばデータを取得できます。

ただし、この方法はあくまで簡易的な確認用と考えた方がよいです。

ヒストリカルデータはどこから取得するべきか

MT4のヒストリカルデータは、MetaQuotes、FX業者、専用データサービスなど、いくつかの入手先があります。

それぞれに特徴がありますが、この記事では手順を分散させないため、デューカスコピーのデータをMT4へ入れる流れに絞って解説します。

デューカスコピー自体の評判や手数料、JForexの使い勝手は別記事で整理しています。

また、MT4でEAを検証する場合は、ヒストリカルデータだけでなく、スプレッド、約定環境、VPS環境も結果に影響します。

この記事ではまず、バックテストの土台になるヒストリカルデータの入れ方に集中します。

デューカスコピーのデータをMT4へ入れる全体の流れ

デューカスコピーのヒストリカルデータをMT4で使うには、ダウンロードして終わりではありません。

時刻の変換、MT4側の古いデータ削除、ヒストリーセンターへのインポート、上位足の作成まで行う必要があります。

  1. デューカスコピーのデモ口座またはリアル口座を用意する
  2. JForexをインストールする
  3. JForexから1分足のヒストリカルデータを取得する
  4. 取得したデータの時刻をMT4向けに変換する
  5. MT4の古いヒストリカルデータを削除する
  6. MT4の最大バー数を増やす
  7. 1分足データをMT4へインポートする
  8. 1分足から5分足、15分足、1時間足などの上位足を作成する

作業は少し長いです。

ただ、一度流れを覚えてしまえば、別の通貨ペアでも同じ手順で進められます。

yuki
yuki
最初から10年分など大量のデータで作業すると、失敗したときに原因が分かりにくくなります。初回は短い期間でテストして、うまく動くことを確認してから本番用データを作るのがおすすめです。

JForexから1分足のヒストリカルデータを取得する

まず、デューカスコピーの公式サイトからJForexをインストールします。

ヒストリカルデータの取得方法は、デューカスコピー公式のマニュアルでも案内されています。

画面やメニューは変更されることがあるため、JForexからのダウンロード手順そのものは、公式マニュアルもあわせて確認してください。

MT4で使うデータを作る場合、まずは1分足データを取得します。

その後、MT4側で5分足や1時間足などの上位足を作成する流れにすると、データ管理がしやすくなります。

  • 最初は1通貨ペアだけで試す
  • 1分足データを取得する
  • Bidデータを使う
  • 長期間を一気に取る前に短期間で動作確認する
  • ダウンロード後はデータが壊れていないか確認する

ヒストリカルデータは、一見ダウンロードできているように見えても、途中でデータが欠けていたり、バックテスト時に止まったりすることがあります。

その場合は、いきなり全期間をやり直すのではなく、短い期間だけ再ダウンロードして動作確認してください。

ヒストリカルデータの時刻を調整する

デューカスコピーから取得したデータをMT4で使うときに注意したいのが、時刻の扱いです。

デューカスコピーのデータはUTC+0を基準に扱われます。

一方、MT4のバックテストでは、ブローカーのサーバー時間に合わせたデータを使うことが多く、日本で利用される海外FX業者ではGMT+2、夏時間はGMT+3相当のサーバー時間がよく使われます。

時刻がずれたままだと、日足の区切り、週明け、指標前後のローソク足が変わり、バックテスト結果にも影響します。

  • デューカスコピーのデータはUTC+0基準
  • MT4側のサーバー時間とずれることがある
  • 日足や4時間足の形が変わる原因になる
  • EAの条件によってはテスト結果に影響する

そのため、取得したデータをそのまま入れるのではなく、MT4で使いたいサーバー時間に合わせて変換してからインポートします。

Windowsで拡張子を表示しておく

時刻変換の前に、Windows側でファイル拡張子を表示しておきます。

拡張子が見えていないと、後でファイル名を変更するときに、正しく変更できているか分かりにくくなります。

Windowsでエクスプローラーを開く画面

まず、タスクバーからエクスプローラーを開きます。

エクスプローラーの表示メニューを開く画面

上部メニューの【表示】を開きます。

ファイル名拡張子にチェックを入れる画面

【ファイル名拡張子】にチェックを入れると、.txt、.vbs、.hstなどの拡張子が見えるようになります。

時刻変換用のvbsスクリプトを使う

yuki
yuki
ここでは、時刻変換用のvbsスクリプトを使う流れを紹介します。ただし、外部スクリプトを使う場合は、内容を確認し、ウイルスチェックを行ったうえで自己責任で実行してください。
カオチャイ
カオチャイ
スクリプトの中身が分からないまま実行するのは避けたいですね。まずは短い期間のデータで動作確認してから、本番用のデータに使うのが安全です。

時刻変換には、vbsスクリプトを使う方法があります。

ここでは、デューカスコピーから取得したデータを、MT4で使いやすいサーバー時間に合わせるための作業として紹介します。

作業前には、元データを必ずコピーしてバックアップを残しておいてください。

  • 外部スクリプトは内容を確認してから使う
  • ウイルスチェックを行う
  • 元データは必ずバックアップする
  • 最初は短期間のデータでテストする
  • 変換後のデータでMT4のヒストリーセンターを確認する

時刻変換用スクリプトをコピーする画面

スクリプトの内容を確認し、必要なコードをコピーします。

メモ帳にスクリプトを貼り付ける画面

デスクトップなど分かりやすい場所にメモ帳を作り、コピーした内容を貼り付けます。

スクリプトをANSIで保存する画面

保存するときは、文字コードをANSIにして保存します。

ファイル名は分かりやすい名前にしておくと後で迷いません。

txtファイルをvbsへ変更する画面

保存したファイルの拡張子を、.txtから.vbsへ変更します。

vbsファイルへhstデータを重ねる画面

変換したい1分足の.hstファイルを、作成した.vbsファイルへドラッグします。

データ量が多い場合は、変換に時間がかかります。

workフォルダが生成される画面

処理が始まると、workフォルダが生成されます。

見た目には動いていないように見えても、裏側で変換処理が進んでいることがあります。

ヒストリカルデータ変換完了画面

変換完了の表示が出たら、workフォルダ内に時刻変換後の.hstファイルが作成されています。

このファイルを、次の手順でMT4へインポートします。

MT4にヒストリカルデータを入れる下準備

時刻変換が終わったら、次はMT4側の下準備をします。

ここを飛ばすと、せっかく用意したヒストリカルデータが古いデータと混ざったり、チャート上で十分な本数を読み込めなかったりします。

特に大事なのは、古いデータを削除してから、新しい1分足データをインポートすることです。

  • MT4をログアウト状態にする
  • 開いているチャートを閉じる
  • 古いヒストリカルデータを削除する
  • ヒストリー内の最大バー数を増やす
  • チャートの最大バー数を増やす

MT4を接続したまま作業すると、削除したはずのデータが再生成されることがあります。

作業中は、できるだけMT4をログアウト状態にして、チャートも閉じておく方が安全です。

MT4の古いヒストリカルデータを削除する

yuki
yuki
新しいデータを入れる前に、同じ通貨ペアの古いヒストリカルデータを削除します。ここで古いデータが残ると、インポート後に期間が混ざってしまうことがあります。

MT4をログアウト状態にする画面

まず、MT4をログアウト状態にしておきます。

自動でログインしてしまう場合は、作業用に回線を切るか、接続されない状態にしておくと安心です。

MT4のhistoryフォルダを開く画面

MT4上部メニューから【ファイル】→【データフォルダを開く】を選びます。

その中の【history】フォルダを開き、利用している業者名のフォルダを選びます。

今回はAUDJPYのデータを入れる例なので、古いAUDJPY関連の.hstファイルを削除します。

注意
削除する前に、必要であればhistoryフォルダごとバックアップしておくと安心です。作業に慣れていない場合は、いきなり本番環境で消さず、別のMT4環境で試すのがおすすめです。

MT4の最大バー数を増やす

次に、MT4で扱えるローソク足の本数を増やします。

この設定が少ないままだと、長期間のヒストリカルデータを入れても、チャートやバックテストで十分に使えないことがあります。

MT4の最大バー数を設定する画面

MT4上部メニューから【ツール】→【オプション】→【チャート】タブを開きます。

【ヒストリー内の最大バー数】と【チャートの最大バー数】を大きめの数値に変更します。

  • ヒストリー内の最大バー数:パソコン内に保存されるローソク足の本数
  • チャートの最大バー数:MT4のチャート上に表示されるローソク足の本数

バックテスト用のMT4では、多めに設定しておいた方が作業しやすいです。

ただし、普段の裁量トレード用MT4で大量のバーを表示すると、動作が重くなることがあります。

検証用と普段使い用のMT4を分けておくと、作業がかなり楽になります。

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

下準備が終わったら、変換済みの1分足ヒストリカルデータをMT4へインポートします。

ここではAUDJPYの1分足データを例に進めます。

MT4ヒストリーセンターでインポートを選ぶ画面

MT4上部メニューから【ツール】→【ヒストリーセンター】を開きます。

左側からインポートしたい通貨ペアの1分足を選び、右下の【インポート】をクリックします。

MT4でhstファイルを参照する画面

インポート画面が開いたら、右上の【参照】を押します。

先ほど時刻変換した.hstファイルを選び、【OK】を押します。

参照画面に.hstファイルが表示されない場合は、ファイル種類の表示を【All Files】または【すべてのファイル】に変更してください。

MT4へヒストリカルデータを読み込む画面

データが読み込まれると、一覧にローソク足データが表示されます。

表示内容を確認して、問題がなければ【OK】をクリックします。

MT4ヒストリーセンターにデータが入った画面

ヒストリーセンター側にもデータが表示されていれば、1分足データのインポートは完了です。

この段階でMT4を一度再起動しておくと、読み込みが安定しやすくなります。

yuki
yuki
ここで終わりではありません。1分足だけを入れた状態なので、次に5分足や1時間足などの上位足を作成していきます。

1分足データから上位足を作成する

MT4へ1分足データをインポートしたら、そのデータをもとに5分足、15分足、1時間足などの上位足を作成します。

上位足を作らないと、1分足以外の時間足でバックテストしたときに、十分なデータが使えないことがあります。

ここでは「period converter ALL.mq4」というスクリプトを使う流れで説明します。

MT4には標準でPeriod converterというスクリプトもあります。

ただ、標準版は時間足を1つずつ作る必要があるため、複数時間足をまとめて作りたい場合はALL版の方が作業しやすいです。

period converter ALL.mq4をMT4に入れる

period converter ALLをscriptsフォルダに入れる画面

MT4上部メニューから【ファイル】→【データフォルダを開く】を選びます。

【MQL4】→【Scripts】フォルダを開き、ダウンロードしたperiod converter ALL.mq4を入れます。

MT4ナビゲーターのスクリプトを更新する画面

MT4左側のナビゲーター内にある【スクリプト】を右クリックし、【更新】を選びます。

一覧にperiod converter ALLが表示されれば準備完了です。

1分足チャートへスクリプトを入れる

1分足チャートへperiod converter ALLを入れる画面

インポートした通貨ペアの1分足チャートを開きます。

そのチャートへ、ナビゲーター内のperiod converter ALLをドラッグ&ドロップします。

period converter ALLが計算を始める画面

左上に表示が出て、上位足の作成が始まります。

データ量が多い場合は、しばらく時間がかかります。

上位足の作成が完了した画面

左上の表示が消えたら、上位足の作成は完了です。

ヒストリーセンターを開き、5分足、15分足、1時間足などのデータが作成されているか確認してください。

  • 1分足チャートにスクリプトを入れる
  • 計算が終わるまで待つ
  • ヒストリーセンターで上位足を確認する
  • 足りない時間足があれば個別に作り直す

業者やMT4環境によっては、特定の時間足だけうまく作成されないことがあります。

その場合は、足りない期間だけ再度データを用意するか、対象時間足を個別に作成してください。

インポート後に確認したいチェックポイント

ヒストリカルデータを入れたら、すぐに本番のバックテストへ進まず、まずはデータが正しく入っているか確認します。

  • 1分足の期間が想定どおり入っているか
  • 5分足や1時間足などの上位足が作成されているか
  • 途中でデータが抜けていないか
  • バックテストが途中で止まらないか
  • 日足の区切りが想定と大きくずれていないか

特に、バックテストが途中で止まる場合は、ヒストリカルデータの一部が壊れている可能性があります。

そのときは、同じデータを何度も使い回すのではなく、該当期間だけ再ダウンロードして確認してください。

また、1分足だけを元に上位足を作る方法と、各時間足を個別にダウンロードする方法では、結果が微妙に変わることがあります。

検証精度を重視する場合は、最終的に自分の検証ルールに合わせて、どちらの方法を使うか決めてください。

バックテスト前にあわせて確認したいこと

ヒストリカルデータを整えても、それだけでバックテストが完璧になるわけではありません。

EAやサインツールの検証では、スプレッド、スリッページ、約定ルール、取引時間、業者仕様も結果に影響します。

特に1分足以下の細かい検証では、無料のヒストリカルデータだけでは再現が難しい場面もあります。

  • 検証時のスプレッド設定
  • 取引時間とサーバー時間
  • EA側のエントリー条件
  • バックテストとリアル口座の違い
  • 短期売買ではティックデータの扱い

MT4のバックテストは便利ですが、現実の約定を完全に再現できるわけではありません。

ヒストリカルデータはあくまで検証の土台です。

実運用する前には、デモ口座や小ロットのリアル口座でも必ず確認してください。

MT4にヒストリカルデータをインポートする方法まとめ

MT4でEAやサインツールを検証するなら、ヒストリカルデータの準備は避けて通れません。

MT4標準のデータだけでも簡単な確認はできますが、本格的にバックテストを行うなら、データの抜け、時刻、上位足の作成まで確認しておきたいところです。

  • まず1分足データを取得する
  • MT4で使うサーバー時間に合わせて時刻を変換する
  • 古いヒストリカルデータを削除する
  • ヒストリーセンターから1分足をインポートする
  • period converter ALLで上位足を作成する
  • バックテスト前にデータ抜けを確認する
yuki
yuki
最初はかなり面倒に感じますが、MT4でバックテストを続けるなら一度は覚えておきたい作業です。いきなり全通貨ペアではなく、まずは1通貨ペア・短い期間で試すと失敗しにくいです。
カオチャイ
カオチャイ
一度作業すれば、次回以降のバックテスト環境づくりがかなり楽になります。まずは短い期間で動作確認してから、本番用のデータを作るのがおすすめです。
ABOUT ME
YUKI
執筆・検証担当:YUKI FX自動売買(EA)・バイナリーオプション自動売買ツールの 開発および検証を担当。 MQL(MT4 / MT5)やC#によるプログラミングを専門とし、 ロジック設計から実装・検証まで一貫して行っています。 ▶ 執筆者・検証方針はこちら