遅れてすみません(汗)
サンプルとして、トレンド+スキャルEAのForexComboSystemを使って普通に指標避けをしなかった場合と、インパクトハイのFOMC関連の指標避けをしながらトレードを行った場合とを単純に比較してみた結果をご報告します。
指標時間をMT4から読み込むことができる便利なインジケータがFFCal.mq4です。
FFCal.mq4 (FF Calendar Indicator for MT )
http://www.forexfactory.com/showthread.php?t=19293このインジケータから指標を避けたバックテストができるようにちょこっと改造してみます。
方法ですが、ForexFactoryCalendarのWebサイトで取得できるCalendarのxmlファイルをダウンロードして\tester\files\に置いておきます。
ex:今週分 "http://www.forexfactory.com/ffcal_week_this.xml";
ちなみに、上記FFCal.mq4のコードでのデータ取得では現在問題が起きますので要変更です(汗)。
コード:
string sTags[7] = { "<title>", "<country>", "<date>", "<time>", "<impact>", "<forecast>", "<previous>" };
string eTags[7] = { "</title>", "</country>", "</date>", "</time>", "</impact>", "</forecast>", "</previous>" };
上記をこっちに
コード:
string sTags[7] = { "<title>", "<country>", "<date><![CDATA[", "<time><![CDATA[", "<impact><![CDATA[", "<forecast><![CDATA[", "<previous><![CDATA[" };
string eTags[7] = { "</title>", "</country>", "</date>", "]]></time>", "]]></impact>", "]]></forecast>", "]]></previous>" };
xmlデータの仕様変更なのでしょうね。
そして、ForexFactoryCalendarのWebサイトで過去のカレンダーも取得します。ブラウザで該当の月のカレンダーを表示させたWebページを取得した後にVBを使ってxmlファイルに変換処理してみました。
FFCal.mq4はForexFactoryCalendarのWebサイトからカレンダーのxmlファイルを読み込んでくるようになっていますが、ローカルPCに現在までのForexFactoryCalendarのカレンダーファイルを準備してやれば、バックテスト時だけそのローカルPCのxmlファイルを読み込むだけでOKというわけです(*>ω<*)。
指標については、インパクトハイ全部ではあまり動かない指標もありましたので、とりあえずFOMCとつく指標発表前に動作中のEAを停止させ、発表後に再稼動させます。指標の何分前にEAを停止するか?って結構問題ですが、とりあえずポジションを保有していた時のことも考えて感覚的に120分(2時間)としてみました。
EAの再開時間は90分後にしてみます(これもかなり適当ですけど(汗))。
自作のEAではかなり信頼性が薄いので(汗)、24時間スキャルピング戦略及びトレンド戦略を持っていて現在もお使いの方が多いと思われる有名なForexComboSystem_v3.0(4in1)EURUSDというEAを使ってみました。なお、ユーロ戦略はデフォルトでいまいちなので外しています。
ForexComboSystemはWWIあたりで探すとソース付きでありましたので(^^;、EAから改変したFFCalをiCustom()関数で読み込んでやります。
年間バックテストですから、さらにサーバー時間に合わせてPandeeeemic2のように夏冬時間を合わせてシフトさせて計算します。これで設定時間どおりの正確なバックテストができているはず。
やってみた結果がこの添付ファイルのとおりです。15分足(M15) 2011.01.02 23:45 - 2012.03.30 22:45 (2011.01.01 - 2012.03.31)
数は少ないですけど単純にインパクトハイFOMC関連指標を避けただけでも明かにプロフィットが向上したうえに、PFも向上しています。
FOMC関連はS級指標時とともに大きく動くことが多いので、特に逆に動いた場合に思った以上に損失が大きいようです。
指標とEAの関係をここまで分析する方はあまりいないと思うのですが(笑)、まあ、思った通りといいますか、つまりは動く指標はやっぱり鬼門ってことですね。
ところで、これをやってから知人に教えてもらったのですが、ロシアあたりのフォーラムを見ると、指標を避けてくれるFFCalの派生みたいな便利なライブラリを見つけることもできます。
それならばコードを自前のEAに差し込むだけで指標を避けたバックテストもできるっていうことですね♪。
これからは獅子太郎さんご紹介のForexEventDefenderみたいなツールを併用するとか、指標避け機能がEAに普通に搭載されていくといいですね(期待)。
・・・それにしてもForexComboSystem。デフォルトパラメータで最近の成績がとっても悪いのってやっぱりカー○フィ・・
・・なっ、なんでもないっ。