EAをMT4でバックテストする手順


EAを買おうとするとバックテストの結果が表示されていますが、その意味を理解しないでパラメータを変えると思わぬ損失になる事もあります。あるいはEAを自分でテストして宣伝どおりなのか確認しておくのも大切です。

EA バックテスト

 
EAのバックテストを行うためには、過去の取引データであるヒストリカルデータとMT4が使えるFX業者のデモ口座が必要です。
ここではテスト設定を準備しますので、このような内容になります。

  • ヒストリカルデータを取得
  • MT4のチャートの最大バー数を増やす
  • 古いヒストリカルデータを削除
  • ヒストリカルデータをインポート
  • 各時間足のデータ作成
 

ヒストリカルデータの取得

 
ヒストリカルデータと言っても、決まったデータがあるわけではありません。
MT4の開発元「MetaQuotes社」から提供されるものは精度が低くEAのテストには向いていません。
またそれぞれのFX業者から提供されるものもありますが有料であったり、信頼度が高くない場合があります。

FXDDとFXTFのヒストリカルデータを利用される人が多いようですので、それを使ってみます。

FXDDに入り通貨ペアを選択してダウンロードします。*.hst データを取得できます。

FXTF(FXトレード・フィナンシャル)のヒストリカルデータです。こちらは*.csvファイルでファイルとしては大きいです。また無料ですが口座が必要です。FXTFの口座開設はこちらから↓
 

日本のFX業者によってトレードツールは異なります。インジケータを使いたい場合はMT4が圧倒的にたくさんあります。またEAなどをやる場合は...
 
以降このFXTFを使って試してみたいと思います。
FXTFにログインしてマイページに入り、チャートデータを選択クリック

例えばここではEURJPYのデータをダウンロードします。
(EAにより対象通貨ペアが限定されていると思いますのでその通貨ペアを選びます)

EURJPY_M1.zip というファイルがダウンロードできました。
このzipファイルを解凍すると EURJPY_M1.csv が出てきます。

 

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

 
ヒストリー内の最大バー数の設定:

MT4を起動して「ツール」「オプション」を開きます。

「チャート」タブを開き、ヒストリー内の最大バー数と
チャートの最大バー数を2146483647まで最大値に設定します。
(実際はこの数字以上を入力すればこの値で頭切りされます。例:12345678901)

プロキシ設定:
アカウントにログインしてFX業者からの配信データを受信していると、テストとデータが混同します。それを回避するために、プロキシ設定を使ってオフライン状態(回線不通)にします。
「ツール」「オプション」から「サーバー」タグを選択します。


「プロキシサーバーを有効にする」にチェックを入れて、その右にある「プロキシ…」ボタンをクリック
サーバーに適当な入力をしてOKです。

古いヒストリカルデータの削除:

MT4を起動して表示しているチャートをクローズしておきます。

「ファイル」「データフォルダを開く」
データフォルダーを開いた後はMT4は終了します。

「history」をクリック

「FXTrade-Demo FXTF」を開きます。(フォルダー名は場合によって異なります)

フォルダ内にあるhstデータを消去します(実際は*.hstファイルが古いデータなのでこれらを消去)

再度MT4を起動します。チャートは表示させないでそのままです
「ヒストリーセンター」をクリック

テストしたい通貨ペアのフォルダを開き、各時間足にデータが無いことを確認します。もしもデータがあれば削除します。
「インポート」ボタンをクリック

データ取り込み画面で参照ボタンから、前に取り込んだヒストリカルデータ
EURJPY_M1.csv を指定します

データがある程度大量に取り込まれますが、2012年1月3日からのデータが揃っているのを確認して「OK」

ここは取り込みに時間が相当かかったり、いつまでたっても表示されないこともありますのでそのつもりで確認してください(ロード中のような表示がない)

ヒストリカルデータがインポートされました。ただしこれは1分足だけなのであとで他の時間足の作成が必要です。

MT4のチャートで確認するために、該当通貨ペアのチャートを開き、「チャート」「自動スクロール」をオフにします。

オフラインチャート:
メニューの「ファイル」「オフラインチャート」を開くとEURJPYの1分足チャートがありますので「開く」

チャートの左下でエンターキーを打つと日付へ飛べるダイアログが開きますので
「2012.01.03」と入力します

チャートが2012年のデータに飛んでいるのがわかります。

 

各時間足のデータ作成

 
1分足チャートを開いた状態でPeriodConverterがナビゲータウィンドウにデフォルトであり、それを起動します。

パラメータの値に時間を入力します。例えば5分足ならば「5」です
15分=15
30分=30
1時間=60
4時間=240
日足=1440
週足=10080
月足=43200

ただこのPeriodConverterはいつ終わったのか進捗状況が分からないことがありますので、period_converter_ALL.mq4というのを使うと全部いっぺんに作成してくれ進捗が分かります。

実行した後で、データフォルダを開き、ヒストリカルデータを確認すると1分足~月足までのデータができています。

これでバックテスト用のヒストリカルデータの作成は終了です。

お勧めシステムトレード:


ANGEL PREMIUM RICHをさらに進化させたAngelシリーズの最上位版。今までの経験をすべてこのEAに詰め込みました。
Angel Heart Lono
ANGEL PREMIUM RICHをさらに進化させた
Angelシリーズの最上位版。
今までの経験をすべてこのEAに詰め込みました。


Flashes for USDJPY
【1月28日~30日 販売終了に購入が間に合わなかった方のために3日間限定販売】FXトレード日本一決定戦(WTC)ロビンスカップ準優勝のEA!8年以上右肩上がりのスキャルピングで相場のエッジを鮮やかに切り取る
【1月28日~30日 販売終了に購入が間に合わなかった方のために3日間限定販売】FXトレード日本一決定戦(WTC)ロビンスカップ準優勝のEA!8年以上右肩上がりのスキャルピングで相場のエッジを鮮やかに切り取る?|?fx-on.com
FLashes for USDJPY
FXトレード日本一決定戦(WTC)ロビンスカップ準優勝のEA!
8年以上右肩上がりのスキャルピングで相場のエッジを鮮やかに切り取る

EA_Blizzard
積極的エントリーで安定収益を積み上げるEA
積極的エントリーで安定収益を積み上げるEA?|?fx-on.com
積極的エントリーで安定収益を積み上げるEA

NEO_Sca_Morning_EURAUD
SL50.100.200でいずれも右肩上がりとなる朝スキャEA
SL50.100.200でいずれも右肩上がりとなる朝スキャEA?|?fx-on.com
SL50.100.200でいずれも右肩上がりとなる朝スキャEA



自分でEAを簡単に作成する事もできます

EAつくーる【1ヶ月版】
MQL言語の学習ができ、裁量トレーダーもEA開発が可能になる!
MQL言語の学習ができ、裁量トレーダーもEA開発が可能になる!?|?fx-on.com

『EAつくーる』
MQL言語の学習ができ、裁量トレーダーもEA開発が可能になる!
MQL言語の学習ができ、裁量トレーダーもEA開発が可能になる!?|?fx-on.com

fx-on電子書籍お試し用・EAつくーるマニュアル
fx-onの電子書籍リーダーをお試しください!

解説ページ

公式ページ


EAつくーるとセットでインジケーターつくーるも場合によっては必要になるかもしれません
手法次第です
インジケーターつくーる【1ヶ月版】
インジケーターつくーる
インジケーターつくーる?|?fx-on.com

インジケーターつくーる
MQL言語の学習ができ、裁量トレーダーもインジケーター開発が可能に
MQL言語の学習ができ、裁量トレーダーもインジケーター開発が可能に?|?fx-on.com