一覧へ戻る

BOストラテジーのトレード期間の設定が上手く機能しない

BOのストラテジーのバックテスト期間を2007/2/2~2016/5/13に設定しても、なぜか2007/10/31頃~2016/5/13になってしまいます。売買回数の多いストラテジーであるため、2007/2~2007/9までの売買がゼロというのは考えにくいため、何か問題があると想定しております。

なお、他のストラテジーであるCT、SW、自身のオリジナルストラテジーはそれぞれ個別にバックテストを行うと、設定期間と実績が2007/2/2~2016/5/13で一致します。

しかしながら、これらを上記BOのストラテジーと組み合わせてバスケットに組み入れてテストを行うと、なぜか全て結果が2007/10/31頃~2016/5/13の期間でのトレードに限定されてしまいます。

どのような問題が考えられますでしょうか。Strategy自体をご覧いただくのがよろしいかと思いますが、その場合、個別に送付するにあたり、どちらのアドレスに送付するのが適切でしょうか。

よろしくお願いいたします。

2016年5月16日 16:35

 

 

以下、発生している事象を添付します。添付の上部赤丸で2007/2/2に設定しているのですが、下部赤丸の月次レコードには2007/2~9月のレコードが存在しない状況です。トレード件数が0件であっても、月次レコードには、各月のレコードが0件として生成されるはずなのですが…。

お手数ですが、よろしくお願いいたします。

BOバックテスト期間

2016年5月16日 16:33

「連続高値(安値)ブレイクアウトしない日数」のモジュールが個別スクリーニング条件に入っていますでしょうか?

こちらはバックテストを為の計算に必要な日数が長く、その分バックテスト期間が短くなるという事になります

 

2016年5月16日 18:31

高橋さんの書かれておられる通りで、このモジュールはその計算期間を短くするために、最初から最大ルックバック期間を設定してくれと開発元に言われました(他のモジュールと計算方法が異なるためです)。その際、確か100期間を最大ルックバックに設定したように思います。つまり最大100期間まで、過去にブレイクアウトが発生していないかどうかを調べられるようになっています。それ以上はいくらさかのぼっても、100期間までです。

 

こうした理由から、このモジュールを使うと、必然的に計算期間が100期間取られてしまい、その分売買開始時期が遅くなってしまいます。そのために、このモジュールを含んだストラテジーを含むバスケットも、同様の影響を受ける可能性があります(これは要確認)。

 

どうにかもっと良い解決方法が無いか、開発元にもかなり考えてもらったのですが、現時点ではこの方法しかないということでした。

2016年5月17日 2:35

高橋さん、野川さん、早速ご回答いただきありがとうざいます。BOのストラテジーについて学習していた11月頃に野川さんに解説いただいていたことをすっかり失念していました。申し訳ありません。

野川さんからの2015/11/13からのメールによりますと、「『連続ブレイクアウトしない期間』指標の過去の参照期間を、最大20日から200日までに拡大した」とありました。

なお、当モジュールを組み込んだストラテジーを包含したバスケットは、当モジュールの影響を受けるため、テスト期間は強制的に短縮されるようです。試しに期間を同一にして、バスケット全体と全てのストラテジーを個別にテストした際に、結果が異なりました。サンプルチェックしますと期間が異なっていました。

ついでながら、「連続高値(安値)ブレイクアウトしない日数」のモジュールは、類似の事象を捉えることが出来るだろうと想定してROCに変更したところ、上手く機能して且つパフォーマンスも向上させることが出来ました(11月時点ではこのような思考の切り替えをするのに相当な時間がかかるか、そもそも切り替えられなかったことを思うと、ちょっと嬉しいです)。

2016年5月17日 13:14