【ZigzagBreakoutEA】米国雇用統計(NFP)の時に停止するべきかどうか、バックテストから検証する

   2016/12/02

Icon_ZigZagBreakout_150x150

Icon_ZigZagBreakout_150x150当ブログ人気記事「zigzagブレイクアウト」のEA販売開始です!
zigzagブレイクアウトEAとは zigzagインジケーターの頂点を上に抜けた場合には「買い」、下に抜けた場合には「売り」を入れるロジッ...

米国雇用統計発表(NFP)の時には停止するべきか?

米国雇用統計などの大きな動きが発生する際にはEAを停止しておいた方が安全・・ということは一般的にも言われていることだと思います。

スプレッドが極端に広がることも少なくありませんし、トレンドが発生して一方に大きく動けば良いですが、色々な思惑が発生して行ったり来たりするような動きになるとトレンドフォロー型のこのEAは損失を繰り返す可能性がでてきます。

バックテストで確認

米国雇用統計発表はする日は基本的に決まっているので、プログラムを作って対応することも可能ですが今回は既存のツール(自作)を使うことにしました。

MT4のバックテストで指標発表を回避する!FXCalendarDownloaderとFXCalendarCheckerの使用方法

MT4のバックテストで指標発表を回避する!FXCalendarDownloaderとFXCalendarCheckerの使用方法
MetaTrader4(以下MT4)のEA開発をしていて「指標発表時は止めた方が良さそうだが実際にはどうなんだろう・・・」と思うことがありまして...

指標発表の前後5分間停止する

まずはFXCalendarDownloaderで指標発表データをダウンロードしてきて、FXCalendarCheckerをZigzagBreakoutEAに組み込み、停止する指標は重要度・高のみとしました。

バックテストに使用したのはEURUSDのM15です。

15分足 バックテスト ニュースフィルタの有無

上が停止しない場合、下が停止した場合です。単純に指標発表で停止するロジックにすると停止しない場合のほうが損益は良い結果になりました。

PFに関してはわずかに「停止した場合」の方が良くなります。

米国雇用統計発表のみ停止する

FXCalendarCheckerの機能だけでは対応できないため、少し改造しました。読み込んできたカレンダーデータに”USD Unemployment Rate”という文字(失業率)があった場合にフラグを立てておいて、フラグが立っているデータのみ対象とします。

何分停止するべきか?

米国雇用統計のみ停止しとし、停止する時間を最適化してみました。

15分足 停止時間最適化

損益でみると15分が最も良い結果となりました。PFでは45分が良さそうです。(5分から10分刻みで55分までという範囲で実行しました)

1時間足のバックテスト

1時間足 停止時間バックテスト

1時間足と同様に15分足でもバックテストしてみました。

 

 

損益でみると停止しない(0分)が最もよく、PFでは50分が良いようです。

ほとんど誤差の範囲ですが1時間足・15分の結果を見ると共に45~50分程度停止するのが良さそうです。

米国雇用統計発表時に停止する方法について

利益だけをみれば「米国雇用統計時に停止する必要は無い」ですが、PFでみると「45~50分程度停止した方が良い」という結果になりました。

大きく動く相場ではスリッページの発生やスプレッドが広がる恐れがあり、そういった事象はMT4のバックテストでは確認できませんので、この程度の差であれば「停止した方が無難」ではないかと思います。

しかし、ZigzagBreakoutEAでは「停止する方法」を現状用意しておらず、手動で停止するしかありません。

※「米国雇用統計発表」のみという指定はできませんが、指標の重要度で停止設定できるExpertAdvisorStopというツール(自作)があります。

指定曜日・時刻で停止する無料インジケーター(サムネイル)指定した曜日や時刻にEAを稼動、指標発表前後は停止するインジケーターExpertAdvisorStop公開(フリーソフト)
ExpertAdvisorStopとは その名のとおり、EAを停止するインジケーターです。 停止するだけでなく、停止時にポジションを閉じる機能...

ForexFactoryからくるデータに誤りがあることが時々あり、信頼しすぎるのは危険ですがどうしても手動で停止することができない場合にはこのツールに頼っても良いかもしれません。

(もっと信頼性の高いツールに仕上げたい‥と思ってます。ForexFactoryからデータを取るのはやめて、FXCalendarChecker同様、DairyFXから指標データを取得するようにし、「どの国の指標発表を対象にする」とか「米国雇用統計を対象にする」といった個別に制御するような設定があると、より便利かなと‥。)

ご利用になる場合、指標の重要度で停止するのではなく、時刻指定で停止すると良いでしょう。(時刻指定であればForexFactoryのデータ間違いで停止しなかった‥ということを防げます)

ZigzagBreakoutEAを改修する

いちいち手動で止めるのは面倒ですよね・・EAを内に組み込んでしまうのが楽そうです。

指標情報を取得しようとするとかなり大掛かりな修正になってしまうので、ZigzagBreakOutEAには単純に「第一金曜日の日本時間22時30分(夏時間21時30分)」に停止する」ようなロジックを組み込んでみたいと思います。

今月の米国雇用統計には間に合わないと思いますが、なるべく早く対応する予定です。

「待ちきれない!」という方でZigzagBreakoutEAのソースコードをご購入の方はチャレンジしてみて下さい!

Icon_ZigZagBreakout_150x150当ブログ人気記事「zigzagブレイクアウト」のEA販売開始です!
zigzagブレイクアウトEAとは zigzagインジケーターの頂点を上に抜けた場合には「買い」、下に抜けた場合には「売り」を入れるロジッ...

以上、ZigzagBreakoutEAで「米国雇用統計(NFP)の時に停止するべきかどうか」をバックテストから検証してみた結果でした。

【追記】今作っていて思ったのですが、NFPだけ対応するのは微妙な気がしています。他にも停止した方が良い指標はありますし‥。

  • このエントリーをはてなブックマークに追加
  • Pocket

この記事へのコメントはこちら

メールアドレスは公開されませんのでご安心ください。
また、* が付いている欄は必須項目となりますので、必ずご記入をお願いします。

内容に問題なければ、下記の「コメント送信」ボタンを押してください。