2008-01-08

フィルターの効果

フィルターの効果(百発百中ノ一砲ヨク百発一中ノ敵砲百門ニ対抗シ得ルヲ覚ラバ)②

ここに、あるトレードシステムがあって、「素の売買ルール」では単位期間におけるトレード回数が100回で勝率が56%としよう。 そしてこれにあるフィルターを掛けて、「フィルターを入れた後の売買ルール」ではトレード回数が40回になり、勝率は5分向上し、58.8%になったとしよう。 曜日フィルターなどを掛けて、特定の曜日にしかトレードしないケースなどに見られる数値だ。 ここでは話を簡単にするために単位期間ごとの結果のみを見ることにし、勝った時と負けたときの損益幅は同一とする。

さて、もし、バックテストどおりに現実のトレードが再現するならば、結果はグラフ1のとおりになる。 「フィルター後」の勝率は高いが売買回数が少ないので、トータルの損益では「素のルール」に劣後してしまう。 しかし、それでも手堅い(?)結果が出ているので、思い切って(^^;)売買回数の比に応じたレバレッジ(100/40 = 2.5倍)をかけることにすると、これらの優劣は逆転し、結果はグラフ2のようになる。

これだけを見ると、やはりバックテストで優れたフィルターを探し出して勝率等の高いルールにレバレッジを掛けてトレードするほうが良いように見える。 だが、話はここで終わらない。 なぜなら、バックテストにおける勝率等の数値(平均値)はあくまで有限個のサンプルから得られたもので、その真の値の不偏推定値は、サンプル数の2分の1乗の逆数に比例した分布を持つこと、そして、フィルターを用いることは、すなわち変数が増えることを意味し、自由度の高いシステムはカーブフィッティングの陥穽に陥りやすいものとなる...からである。

従って、バックテストと比べて実際の勝率が、「素のルール」の場合1割だけ悪化するものとして再考察しよう。 つまりバックテスト時の56%の勝率が50.4%に減少するわけだ。 さて、同様に「フィルター後」の現実の勝率の悪化度合いは、サンプル数の比を考慮すると、0.1 x SQRT(100/40) = 15.8% になる。 つまりバックテスト時の58.8%の勝率が49.5%に減少してしまうわけだ。

結果はグラフ3のとおりになる。 ここにおいて「素のルール」と「フィルター後」の優劣は逆転する。 「素のルール」はかろうじて試行回数に応じて微増しているが、「フィルター後」はやればやるだけジリ貧だ。 これはレバレッジをかけた場合(グラフ4)だと、もっと顕著になる(ToT)。

どうだろうか、一見、検証段階におけるナイーブな考察では素晴らしいように見えたフィルターも、母集団の平均値の不偏推定値を考慮すると、条件によっては、現実のトレードではまったく逆効果になる場合もあるということだ。

旧日本海軍の戦艦大和の46センチ砲9門が斉射された際の射距離30kmでの散布界は、設計段階の想定では300mであったが、実際には800m以上あったという。 これは戦艦数で劣る日本海軍が、その射撃精度においてもアメリカ海軍を凌駕できないことを意味した。 つまり戦艦、巡洋艦による艦隊決戦においても、日本海軍ははじめから勝てる見込みがなかったのだ。 当時これを知って宇垣海軍少将は、「この状況は寒心に堪えない」と語ったという。 まさに「百発百中ノ一砲ヨク百発一中ノ敵砲百門ニ対抗シ得ル」ことは、理想ではあるが現実にはなかなかに難しいものなのだ(^^;)。

0 件のコメント:

コメントを投稿