最もパフォーマンスの良かったパラメータを採用するべきか?

自動売買システムにおいて、売買ロジックのパラメータ設定は重要な問題だ。
売買ロジックのアイデアが優れていても、パラメータ設定が良くないと、
利益の出ないシステムとなってしまう。

先の記事『売買ロジックの最適なパラメータをどうやって見つけるか?』で
パラメータフリー遺伝的アルゴリズム(PfGA)により、
売買ロジックの最適なパラメータを見つけていることを紹介した。
果たして、ここで見つかった値を、そのまま素直に採用するべきなのだろうか?
悩ましい問題だ。

実は、ここで見つかった値を直ぐには採用していない。
更に、ダメ押しの探索を実施している。
つまり、

  • (1)PfGAにより準最適解を見つけ
  • (2)その近傍を全件探索する

といった手順を踏んでいる。
なお、(2)の目的は最適解を見つけるためではない。
堅牢性チェックのためである。
近傍のテスト結果も良好でなければ採用しない。

例えば、2本の移動平均線を使ったロジックにおいて、
(1)の手順で、5-25の組み合わせが準最適解として得られたとする。
しかし、その近傍の5-24および5-26のテスト結果がダメダメであった場合、
5-25の組み合わせを採用するだろうか?
私なら、この組み合わせは採用しない。

近傍のパフォーマンスチェックは、
過剰最適化を少しでも防ぐために必要な手順だと考えている。

なお、上記手順は、準最適解を1つに絞らず、複数ピックアップし実施している。
そして、目的関数だけをチェックするのではなく、
バックテストでの確認項目は何か?そして、重視している項目は何か?
で紹介した各項目も確認し、総合的に判断している。
この際、心がけていることは、
「本当にこれで運用できるか?」
の視点で見ること。
例えば、月毎の損益、週毎の損益、月次最大連敗数、週次最大連敗数などもチェックし、
運用をイメージしてみる。

ただ、こうして採用するパラメータを検討していくと、
決定基準が曖昧となるため、1つに絞り切れない場合が出てくる。
その場合は、
「何も1つに絞り込む必要はない」
と考えている。
例えば、ミニ3枚運用する資金があった場合、
1つのパラメータの組み合わせで3枚運用するのではなく、
3つの組み合わせで、それぞれ1枚ずつ運用するのでも良い。

探索アルゴリズムで見つかった解を直ぐには採用せず、
もうひと手間加えることにより、堅牢性がアップすると考えている。

<広告>

TOP