FXシステムトレード自動売買実践室

FXシステムトレード自動売買実践室

MetaTrader4無料EAの検証や自作EAの開発日記など

管理人 FX投機家

FXシステムトレーダーの最新記事
トラコミュ FXシステムトレーダーズ♪Japan

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


↓ポチッと応援クリックお願いします。
【応援クリック】ブログ村システムトレード派

[ --/--/-- --:-- ] スポンサー広告 | トラックバック(-) | コメント(-)
FXシステムトレーダーの最新記事
トラコミュ FXシステムトレーダーズ♪Japan

昨日お伝えしたとおり、MetaTraderのヒストリーセンターでダウンロードできる
MetaQuotes社のデータは一部の期間で問題があることがわかりました。
その為、他の価格データでの検証が必要になります。

今回は比較的簡単にできるAlpariの価格データを使用したバックテスト方法を
ご紹介したいと思います。

Alpariはこちらで1分足の価格データを公開しています。
期間は2004年6月頃から現在までのデータとなりますので
ヒストリーセンターでダウンロードできる期間よりは少ないですが
十分な期間だと思います。
毎日午前5時頃に前日までのデータがアップロードされているようです。

それではAlpariの価格データを使用したバックテスト方法です。

↓ポチッと応援クリックお願いします。
【応援クリック】ブログ村システムトレード派

まず、この方法は既にダウンロード済みの価格データを一度削除するので
既にMetaTraderを使用されている方は別途MetaTraderをインストールした方が楽です。
私はAlpariのMetaTraderを通常使用しているMetaTraderとは別にインストールして
Alpariの価格データの検証用として使用しています。
AlpariのMetaTraderはこちらからダウンロードできます。
デフォルト指定でインストールし、デモアカウントを作成してください。

今回は、例としてAlpariのMetaTraderを使用してEURUSDのバックテストを行う方法を
説明します。適宜ご自身の環境に読み替えて実施してください。

追記
MetaTraderのバージョンが古いと正しくデータ変換できない事象が報告されております。
Alpariから新規でMetaTraderをインストールされた方は、最新バージョンに
バージョンアップしてください。


①MetaTraderを起動している場合は一旦終了し、
「C:\Program Files\MetaTrader - Alpari UK\history」
の中にあるフォルダとファイルをすべて削除します。



②MetaTraderを起動し、直近のデータを補完する為に期間指定無しで
EveryTickでバックテストを行います。EAはなにを使っても問題ありません。



③MetaTraderのメニューバーの「ツール」→「オプション」を開きます。
「ヒストリー内のバーの最大数」と「チャート表示バーの最大数」の項目に
これでもかと9を打ち込みます(笑)。打ち込んだらOKを押して画面を閉じてください。
再度画面確認すると最大値の「2147483647」に設定されていると思います。



④Alpariから1分足の価格データをダウンロードし、解凍しておきます。
解凍すると「M1_EURUSD.hst」というデータがでてきます。

⑤MetaTraderのメニューバーの「ツール」→「History Center」を開きます。
EURUSDの1分足をダブルクリックして選択し、インポートを選択します。



⑥インポートの画面が表示されるので「Browse」ボタンを押下して
④でダウンロードし解凍した「M1_EURUSD.hst」を指定します。
下の部分に価格データが表示されるので確認し、OKボタンを押下します。



⑦ヒストリーセンターの画面に戻るので、右の画面を下にスクロールして
問題なくインポートされているか確認してください。



⑧一旦MetaTraderを終了し、再度起動します。


Alpariからダウンロードしたデータは1分足のデータなので
他の時間足のデータはありません。
その為、次の工程で1分足のデータから他の時間足のデータを作成します。


⑨MetaTraderのメニューバーの「ファイル」→「オフラインチャート」を開きます。
オフラインチャート一覧画面が表示されたら、「EURUSD,M1」をダブルクリックして開きます。



⑩ナビゲータウインドウの「Script」→「Period_Converter」をダブルクリックします。



⑪パラメータ指定画面が表示されるのでExtPeriodMultiplierの値に5を指定して
OKを押下します。これで1分足のデータから5分足のデータが作成されます。



一見なにも行ってないように見えますが、ターミナルウインドウのExpertsタブを見ると
変換結果が表示されています。


変換が終わったら、再度Period_Converterをダブルクリックして
ExtPeriodMultiplierを15、 30、 60、240、1440に変更しそれぞれ実行してください。
これで、1分足~日足までのすべての時間足のデータが作成されます。
(Period_Converterを起動する際にウインドウが出たら「はい」を選択して閉じてください)

何回もやるのが面倒な方は1分足から他の時間足のデータを一括で作成する
「Period_Converter_All」というScriptがあります。
ファイル置き場に入れておきましたのでダウンロードし
MetaTraderをインストールしたフォルダ→「experts」→「scripts」のフォルダに入れて
ご使用ください。


これで、Alpariの価格データの作成方法は終わりです。
お疲れ様でした。
2004年6月頃からのデータが作成されていますので
期間指定をしてご自身のEA等でバックテストしてみてください。

私もいくつかのEAでテストしましたが、MetaQuotes社のデータとは
違う結果が得られると思います。
特に2006年の9月頃以前の結果はかなりの相違が現れるEAもありますね。

今後EAの評価をする際にはAlpariの価格データを使用したバックテスト結果も
参考にした方が良いと思います。
[ 2008/05/31 12:37 ] MetaTrader4 | TB(1) | CM(14)
Metaquote社のヒストリカルデータの問題は、スタンダードだと思い込んでいただけに頭痛いですね。どうりで2007年以降のパフォーマンスが今ひとつ奮わないわけです。と言うよりも2006年9月以前のパフォーマンスが過大評価されているだけなのかもしれませんが・・・。

ところで、今回ご紹介頂いたAlpari社提供のヒストリカルデータですが、他のブローカーに取り入れてバックテストすることは可能でしょうか?
[ 2008/06/02 07:27 ] [ 編集 ]
現在フォワードテストしているEAを見る限り、今の所目立ったパフォーマンスの落ち込みは無いようなので、考え方によっては2007年以降のデータだけでも、十分EAのパフォーマンスを評価できるのかもしれないですね。

Alpariの価格データについては、他のブローカーでも取り込むことは可能です。
しかし、Alpariのサーバ時間の価格データですので、注意が必要です。
[ 2008/06/02 20:05 ] [ 編集 ]
Period_Converterを実行すると、該当時間足のオフラインチャートは2004年6月からで作成されるのですが、ヒストリーセンターの該当時間足のデータには反映されないようです。
何かやり方が間違っているのかもしれませんが・・・
[ 2008/06/03 00:21 ] [ 編集 ]
「ツール」→「オプション」→「チャート表示バーの最大数」も999・・・にしたところ、とりあえず他の時間足のヒストリカルデータも2004年6月からで作成出来ました。
Period_Converterは、オフラインチャートの表示バーを元に変換するようで、チャート表示バーも多くしないと、きちんと全て変換出来ないようです。
ただ、バックテストを行うと、TestGenerator:invalid file for 'EURUSD30'とのエラーが出て実行できませんでした。
(他の時間足でも同様のエラー)
もうちょっといろいろ試してみます・・・・
[ 2008/06/03 01:32 ] [ 編集 ]
MT4のバージョンをBuild216にアップデートしたらあっけなく解決しました。
今回の検証用に、AlpariからMT4を再ダウンロードして使っていたので、単純にアップデートして無かったのが原因です。

早速、手持ちのスキャルEAで、MetaQuotes版とAlpari版ヒストリカルデータのバックテスト比較してみました。
覚悟はしていましたが、一直線だった収益曲線が、Alpari版では結構ガタガタになりますね。
とりあえず右肩上がりは維持していますが、獲得pipsやPFは大幅低下で、ここまで違ってくるとは思いませんでした。
[ 2008/06/03 02:14 ] [ 編集 ]
>>XIIさん
なるほど、最新バージョンにしないとうまく変換できないのですね。情報ありがとうございました。
記事も後で訂正しておきます。

ホームページ拝見しましたが、SHARKに関しては差が激しいですね・・・。
[ 2008/06/03 07:20 ] [ 編集 ]
こんにちわ~
Alpariから価格データをダウンロードしたいのですが、『表示出来ません』となります、どうしたらよいですか?
[ 2008/06/05 12:26 ] [ 編集 ]
クリックしてもエラーになってダウンロードできませんね。
サーバ(databank.alpari.org)への疎通が通らないので、サーバがダウンしている模様です。
しばらくすれば復旧すると思いますが・・・・。

SHARKがバージョンアップしたので、早速バックテストしてみましたが、Alpari価格データだとやはり厳しい結果になりました。
[ 2008/06/05 18:46 ] [ 編集 ]
メンテナンスなのか、ダウンロード制限をしているのかわかりませんが、たまにダウンロード出来ない事があるようです。これは今回に限らず過去にも何度か発生しています。大体次の日にはダウンロード可能になっていますので、日を改めてダウンロードしてください。
[ 2008/06/05 20:24 ] [ 編集 ]
MT4のバージョンをBuild216を使用しています。Alpariからダウンロードした1分足のデータはヒストリーセンターに取り込まれますが、MT4を再起動すると2007.9月からのデータに減ってしまいます。ヒストリー内のバーの最大数も何度9999999999999と打ち込んでもオプションを一旦閉じて開き直すと2147483647に減ってしまいます。設定が間違っているのでしょうか?初歩的な質問で申し訳ありませんがよろしくお願いいたします。
[ 2008/06/11 23:54 ] [ 編集 ]
チャート表示バーの最大数に99999999999を入れると1分足データは消えなくなりました。ありがとうございました。
[ 2008/06/12 09:17 ] [ 編集 ]
>>リバースさん
すみません。説明不足でした。
確かに9を入れても結局は「2147483647」になります。
最大値を入れるという意味で9を入れてくださいと記述しておりました。
また、チャート表示バーの最大数も最大数にしないとうまくいかない場合もあるようですので、記事を修正致します。
[ 2008/06/12 20:50 ] [ 編集 ]
"Download Historical data for Meta Trader 4"を見回しましたが、どこをクリックすればデータがダウンロードできるのか分かりません。
質問以前みたいな質問で恐縮ですが、ご教授いただけましたら幸いです。
[ 2010/05/28 13:04 ] [ 編集 ]
"FXDD"のデータがダウンロードできましたので、それを使って、貴HPの通りの手順で旨くいきました。ありがとうございました。
[ 2010/05/28 17:58 ] [ 編集 ]
コメントの投稿













管理者にだけ表示を許可する
この記事のトラックバックURL
http://fxautotradesystem.blog34.fc2.com/tb.php/57-3fec7abb

過去にどこかに書いた内容なのですが、風化しつつあったのでまた書きます。 自作EAの堅牢性を測るために疑似データを作って利用するという...
日本法人のMT4ブローカー
FOREX.com
低スプレッド
100%信託保全
キャッシュバックキャンペーン中
フォレックス・ドットコムMT4
【スポンサードリンク】
当ブログへのお問い合わせ

名前:
メール:
件名:
本文: