MT4でバックテストできない!おかしい!ヒストリカルデータをダウンロード・インポートできない?ありがちお悩みの解決策3選!バックテストのやり方を徹底解説!【初心者向け】

夕暮れ女の子泣き顔

GEMFOREX

新規口座開設2万円ボーナス
上限10万円の仮想通貨入金10%ボーナス
上限100万円の入金100%ボーナスキャンペーン開催中!

今回のキャンペーンは2023年3月30日(木)23時59分59秒まで

まだ出金遅延が改善されていません。3月以降に出金申請しても通常よりは着金まで時間がかかると思われますのでご注意ください。

GEMFOREXXM等の海外FXMT4EAバックテストがどう足掻いてもうまくできない!すぐエラーが出てなんかおかしい!全然エントリーしてくれない!という多くの方が壁にぶつかりそうなお悩みの解決を私自身の経験も踏まえて初心者向けに解説してきます!

バックテストできない原因というのは本記事で記載されていること以外にもあると思うのですが、あくまで私自身がかつて嵌まった体験ベースでありがちなものを3つに絞りました!また、その中でも一番嵌まりやすそうなヒストリカルデータダウンロード・インポートについては本記事でも比重を置いて解説しています。

バックテストよくわからないからやってないという方、バックテスト必要性はわかってるけどうまくいかないとお悩みの方にとって少しでも本記事が参考になれば幸いです!



【MT4でバックテストできない原因①】:IB縛りのEAを該当のFX業者・口座番号でログインしていない!

金髪女の子泣き顔

まず、EAをご自身でプログラミングもしくはツールで自作、或いはそれなりの初期費用を払ってEAをご購入されている場合は本項目は該当しませんが、恐らくEAユーザーの多くはEA開発者IB口座紐付けられたEAを稼働されている、もしくは稼働されるご予定なのではないかと思います。

紐付けられたFX業者口座番号とは違うFX業者・違う口座番号からログインしてバックテストしようとしている場合、下記のようにUsererror!CannotTrading」「unmatched data error等のエラーが出るのはないでしょうか?

MT4でバックテストできない
MT4でバックテストできない

このようなIB縛りのあるEAの場合、基本的には」指定されたFX業者口座番号ログインしていなければEAチャート稼働オンにできないようにプログラミングされており、同様にバックテストもできないようになっています。
参考までに、下記の通りGEMFOREXではシグナルプロバイダー(EA開発者)向けのマニュアルでIB縛りについて具体的なコーディングの仕方が指定されています。

GEMFOREXでは、シグナルプロバイダー様からご登録頂いたEAを、ユーザーがダウンロードする際に、該当ユーザーの口座番号のみ動作するコードを自動作成しています。その為には、シグナルプロバイダー様が登録予定のmq4ファイル内に以下のコードを記述する必要がございます。

引用元:GEMFOREXのシグナルプロバイダーEAマニュアル「手順1 アカウント縛りのコーディングについて

ここで、なぜ「基本的には」なのかというと例外もあるからでして、GEMFOREX公式サイト上ダウンロードできるEAデモ口座でも稼働できるようにプログラミングされており、当然バックテストもできるようになっています。
以下、数年前に私がGEMFOREXのサポートへ問合せた時にご回答頂いた内容です。

GEMFOREX
GEMFOREX

ゲムトレードのEAにつきましては、
EAのダウンロードは、申請を頂きましたリアル口座でのみ
ダウンロードが可能となっておりますが、
ダウンロード頂きましたEAは、
デモ口座でもご利用は可能となっております。

     

しかしながら、EAプロバイダー様によりましては
デモ口座でのご利用を禁止しているものもございます。

     

マニュアルにてご確認の上、
ご利用頂ますようお願い申し上げます。

EA開発者によってはデモ口座で使えないようにしてる場合もあるとのことですが、GEMFOREXデモ口座で稼働できないEAに当たったことは私自身は今まで一度もないですね。もしかしたらほんとに一部のEAデモ口座で使えないようにプログラミングされているのかもしれませんが・・・

まあGEMFOREXだと大半のEAデモ口座お試し稼働もできるし、バックテストもできてしまうので、それが当たり前だと思って他のFX業者の口座IB縛りされたEAを扱おうとすると嵌まるんですよねw EA-BANKでもデモ口座で稼働できませんし、EA開発者が直接配布するようなEAでもデモ口座で稼働できないことが殆どではないかと思います。この点に関してはGEMFOREXシステムに感謝せざるを得ないですねw

というわけで、IB縛りされているFX業者の口座とは別口座デモ口座含む)でMT4ログインされている方は、まずは括り付けられているFX業者の口座ログインしてバックテストできるのか試してみましょう!



【MT4でバックテストできない原因②】:通貨ペアの表記(シンボル名)が特殊!

女の子不安な顔

次に嵌まりがちなのが、バックテストしようとしている通貨ペア表記シンボル名)が特殊な場合ですね。特殊な表記でしか稼働できないようにしてる逆パターンもありますが・・・

これが原因の場合、下記のようにinitialization failed」「no history data等のエラーが出るのはないでしょうか?

MT4でバックテストできない
MT4でバックテストできない

例えば、ドル円だったら殆どのFX業者で通常シンボル名USDJPYですが、GEMFOREXロースプレッド口座ならUSDJPYfxガチゼロ口座ならUSDJPY.zeroスキャルピングフリー口座ならUSDJPYrというように、口座タイプによって特殊な表記になる場合があります。

GEMFOREXの口座別シンボル名(例:USDJPYの場合)
  • オールインワン口座他:USDJPY
  • ロースプレッド口座:USDJPYfx
  • ガチゼロ口座:USDJPY.zero
  • スキャルピングフリー口座:USDJPYr

GEMFOREX公式サイト上ダウンロードできるEAオールインワン口座でのみ稼働可能な為、シグナルプロバイダーEA開発者)向けのマニュアルには下記の通りEA作成時シンボル名には気をつけるように明記されています。

シンボル名について

通常、シンボル名は「USDJPY」といったように通貨ペアのみとなりますが、GEMFOREXの場合、下記シンボル名となりますのでEA作成に注意が必要となります。

リアル口座 → USDJPY
デモ口座は付与なし。

引用元:GEMFOREXのシグナルプロバイダーEAマニュアル「手順3 マジックナンバーについて

要するに、EA側USDJPYしか稼働できないようにプログラミングされていたら、USDJPYfxUSDJPYr等では稼働できませんし、その逆も然りです。

他のFX業者でも口座タイプによってシンボル名表記が変わることが多いですので、そのEA稼働可能FX業者口座タイプシンボル名表記と、バックテストしようとしてるシンボル名一致しているのかどうかと、次の項目に繋がりますが、該当シンボル名ヒストリカルデータ十分な期間ダウンロードできているのかどうかを確認する必要があります。



【MT4でバックテストできない原因③】:ヒストリカルデータのダウンロードができていない!やり方解説!

女の子泣き顔

本作業を行う前に、できればバックテスト用のMT4トレード用とは分けた方がいいかと思います。既存ヒストリカルデータを一旦全部削除したり、外部から入手した長期間過去データインポートしたりすることで、EAパフォーマンスに影響が出てしまう恐れもある為です。また、最大バー数上限値まで引き上げる為、MT4負荷も大きくなります。

最後のヒストリカルデータについてが一番嵌まる方が多いかもしれませんね。ヒストリカルデータがなくてバックテストできない場合、そのままですが下記のようにno history data等のエラーが出るのはないでしょうか?

MT4でバックテストできない

また、下記のように、1分足のデータ過去1~2営業日分しかない場合()、上記の「no history data」にならなかったとしても、バックテスト取引数極端に少ない結果になって全然参照にならないということもあります。
下記画像は2023年2月6日のスクリーンショットです。

MT4でバックテストできない

バックテスト必要性がわかっていても、よくわからないから面倒くさくなってやめるというのは勿体ですし、本項目ではヒストリカルデータダウンロードの仕方を一通り解説していきます。

既存のヒストリカルデータ削除&最大バー数を上限値まで増やす!

まず、MT4上部メニューファイル」>「データフォルダを開く」をクリックして、データフォルダを開きます。

MT4でバックテストできない

history」>「FX業者の該当サーバー名(下記画像ではGemTrade-Live)」を開き、この中に入っている既存のヒストリカルデータ.hst)を全部削除します。この後、新しいヒストリカルデータを取得し直すのですが、既存のデータ中途半端に入ったまま新しいデータを入れるとバックテスト結果がおかしなことになる可能性がある為です。

MT4でバックテストできない

次に、より長期間バックテストができるように「ヒストリー内の最大バー数」を上限値まで引き上げておきます。MT4上部メニューツール」>「オプション」をクリックします。

MT4でバックテストできない

チャートタブ下部にある「ヒストリー内の最大バー数」「チャートの最大バー数」をできうる限り9連打9ボタン押しっぱなしし、「OK」ボタンをクリックします。

MT4でバックテストできない

尚、再度「オプション」の「チャートタブを開き直すと、下記のように2つとも「2147483647」とう数値に変わっており、これがMT4最大バー数上限値ということになります。

MT4でバックテストできない

メタクオーツのヒストリカルデータをダウンロード!

これで準備ができたので、いよいよヒストリカルデータ取得を行いますが、まずは一番手っ取り早いメタクオーツMT4・MT5の開発元)のヒストリカルデータの取得の仕方から解説していきます。

メタクオーツヒストリカルデータFX業者のものとは異なり、あまり信憑性が高くないのと、通貨ペアによってはあまり長期間データを取得できず、バックテストするには不十分な場合もあります。

外部からヒストリカルデータ取得してMT4インポートされたい方は次の項目ヒストリカルデータをダウンロード②(FXDD1分足)」へお進みください。

MT4上部メニューヒストリーセンター」をクリックしてヒストリーセンターを開きます。

MT4でバックテストできない

左側メニューヒストリカルデータを取得したい通貨ペア・時間足(下記ではUSDJPY1分足)をダブルクリックして灰色から色付きの状態にしたら左下ダウンロードボタンクリックします。すると「ダウンロード・アラート」が表示されますが、「OK」ボタンを押してダウンロードを行います()。

データ量多い数十分かかる場合もある為、ダウンロード開始する前にその心積もりでいるようにしましょう。

MT4でバックテストできない

ダウンロードが完了し、下記のようにヒストリカルデータを過去に遡っていっぱい取得できたのが確認できたら「閉じるボタンをクリックして完了です。

MT4でバックテストできない

外部のヒストリカルデータ(FXDD1分足)をダウンロード・インポート!

もう1つのヒストリカルデータダウンロード手段として挙げられるのが、外部から入手したヒストリカルデータMT4インポートする方法です。

メタクオーツヒストリカルデータFX業者のものとは異なり、あまり信憑性が高くないのと、通貨ペアによってはあまり長期間データを取得できず、バックテストするには不十分な場合もある為、こちらの手段の方がおすすめです。

ヒストリカルデータ取得先は、Alpari・FXTF辺りは信憑性が高くておすすめなのですが、今回は一番取得が簡単で手っ取り早いFXDD1分足データダウンロードしてMT4インポートする方法を解説していきます。

まず、FXDDのヒストリーデータダウンロードページを開き、ダウンロードしたい通貨ペア(下記ではUSD/JPY)をクリックしてダウンロードします。

MT4でバックテストできない

圧縮フォルダ.zip)がダウンロードされるので解凍し()、中のヒストリカルデータ(ここではUSDJPY.hst)をデスクトップ等に保存しておき、「ヒストリーセンター」の「インポート」をクリックします。
最近のWindowsのパソコンならダブルクリックするだけで解凍できるかと思いますが、それで解凍できない場合は別途圧縮ソフトを使って解凍するようにしましょう。

MT4でバックテストできない

右下で「MetaQuotes files(*.hst)」を選択し、FXDDからダウンロードしたヒストリカルデータ(ここではUSDJPY.hst)を選択したら「開く」ボタンをクリックします。

MT4でバックテストできない

下部インポートするヒストリカルデータが表示されているのが確認できれば「OK」ボタンをクリックし、その後ヒストリーセンターも「閉じる」ボタンをクリックします。

MT4でバックテストできない

これでFXDD1分足ヒストリカルデータインポートは完了です。EA1分足ロジックならそのままバックテストも可能ですが、このままだと5分足以上時間足がまだない状態です。

次の項目で、1分足データから5分足以上時間足データを生成する方法を解説していきます。

「Period_converter_ALL.mq4」で1分足以外のヒストリカルデータを生成!

1分足ヒストリカルデータ長期間あれば、5分足以上時間足生成ができるのですが、今回は「Period_converter_ALL.mq4」というメタクオーツ公式サイトで無料ダウンロード可能なツールを使う方法を紹介していきます。

MT4に最初から入っている「Period_converter.mq4」を使っても生成可能ですが、Period_converter_ALL.mq4」の方が作業が簡単です。

まず、メタクオーツ公式下記ページ)へアクセスし、赤丸の箇所をクリックして「Period_converter_ALL.mq4」をダウンロードします。
下記ページはメタクオーツ開発元のロシア語表記ですが、ダウンロードするだけなら特に問題はありません。

MT4でバックテストできない

MT4データフォルダ内の「MQL4」>「Scripts」の中に「Period_converter_ALL.mq4」を入れてからデータフォルダを閉じます。

MT4でバックテストできない

MT4再起動するか、もしくは「ナビゲーター」>「スクリプト」で右クリックメニュー更新をクリックし、「ナビゲーター」>「スクリプト」で「Period_converter_ALL.mq4」が表示されることを確認します。

MT4でバックテストできない
MT4でバックテストできない

MT4上部メニューファイル」>「オフラインチャート」をクリックします。

MT4でバックテストできない

今回5分足以上生成する為の1分足FXDDからダウンロードしたヒストリカルデータ)をダブルクリックし、1分足オフラインチャートを開きます。

MT4でバックテストできない

左側の「Period_converter_ALL.mq4」を右側オフラインチャートドラッグアンドドロップすると、チャート左上5分足以上生成が順々に進み(赤い下線部分)、全時間足生成が終われば赤い下線部分表記が消えます。

MT4でバックテストできない

これで全時間足生成が完了しましたので、MT4再起動してからバックテストができるようになったのかどうか確認してみましょう!


以上、MT4バックテストがどうしてもうまくいかなくてお悩みの方にとって、本記事が少しでも参考になっていれば幸いです。

2023年3月30日(木)更新

現在GEMFOREXでは新規口座開設3万円ボーナス&上限10万円の仮想通貨入金10%ボーナス&上限100万円の入金100%ボーナスキャンペーンを開催中!

まだ出金遅延が改善されていません。3月以降に出金申請しても通常よりは着金まで時間がかかると思われますのでご注意ください。

2023年3月の初回ボーナスは3万円で、当選者限定でBTC・ETH等の仮想通貨入金による10%ボーナスも始まってます。また、100%ボーナスは1・2月は週2回でしたが、3月からは週1回のパターンに戻っており、3月は月⇒火⇒水⇒木ですね。尚、入金ボーナスの条件ですが、有効期限90日間は2024年1月1日からの適用で当面延期(口座開設ボーナスは30日間)になり、オールインワン口座の全口座対象が復活しました!上限額100万円は変更なし、30日以内に出金申請された方は30%⇒50%と少し条件が良くなってます。

当選された方はレバレッジ1,000倍のトレードを2倍の証拠金でできるチャンスです!

100%ボーナスに当選された方は有利なトレードができるように賢くGEMを利用していきましょう!

今回のキャンペーンは2023年3月30日(木)23時59分59秒まで




GEMFOREXでトレードする主なメリット

  • 上限100万円の入金100%(200%)ボーナスキャンペーンをほぼ毎週開催!
  • 毎年創業月(11月)は入金200%(最大300%)ボーナスキャンペーンを開催!
  • 入金1,000%ジャックポットを常時開催!
  • ロースプレッド口座のスプレッドは国内業者並みで、取引手数料もなし!
  • 招待状が届けばガチでスプレッド0のガチゼロ口座を利用可能!
  • 他社の口座で含み損があれば、その分の補填ボーナスを受け取り可能!
  • 入出金の手数料無料!出金時も国内送金なので中継手数料がかからない!
  • EA・ミラートレードを無料で利用し放題!自動売買の仕組みは日本一!
  • 仮想通貨の取引条件は業界トップクラス!
  • ブランドアンバサダーがベッカム!金融ライセンス取得済みで、倒産リスクも少ない!


口座開設方法については下記の記事をご参考ください。


にほんブログ村 為替ブログ 海外FXへPVアクセスランキング にほんブログ村

コメント

タイトルとURLをコピーしました