フォールス・ブレイクアウト・フィルタリングのルールとは?
フォールス・ブレイクアウト・フィルタリング:定義と目的
フォールス・ブレイクアウト・フィルタリングとは、価格アクションが「その値動きが継続しなかった」ことを示す場合に、ブレイクアウトを「false(フォールス)」とラベル付けする一連の判断ルールのことです。最初のレベル突破を確認とみなすのではなく、たとえば直前のレンジの内側へ素早く戻るなど、失敗と整合的なその後の挙動を待ちます。
この記事では、あなたが実装し、独立して検証できるルールセットを説明します。情報提供のみを目的としており、予測の正確性を主張せず、特定の市場条件を前提とせず、利益が得られることを約束もしません。
中核となる仕組み(検証可能なルールセット)
「フォールス・ブレイクアウト・フィルタリング」を検証可能なものにするには、各構成要素について明確な定義が必要です。
1) ブレイクアウト・レベルと「レンジ」を定義する
次のうち、いずれかの安定した機械的な方法でレベルを定義します:
- 直前のコンソリデーション境界: 直前のコンソリデーション・ウィンドウの高値/安値を使う。
- サポート/レジスタンス・バンド: 過去データから定義した価格帯を使う(たとえば、一定のルックバック期間における高値と安値)。
検証の前提:ブレイクアウト判断ウィンドウが始まる前に、ブレイクアウト・レベルがデータから導出されている必要があります。
2) 何を「ブレイクアウト」と数えるかを定義する
基本的な機械的定義は次のとおりです:
- 強気(bullish)のブレイクアウトは、価格が上側の境界を少なくともある閾値分だけ上回ったときに発生する。
- 弱気(bearish)のブレイクアウトは、価格が下側の境界を少なくともある閾値分だけ下回ったときに発生する。
ルールベースなので、同じ計測方法を1つ選びます:
- 終値ベース: ブレイクアウトは、ローソク足の終値が境界の上/下を超えたことで定義する。
- ウィック/プライス・プリントベース: ブレイクアウトは、任意の取引/価格の表示が、閾値分だけ境界の上/下を超えたことで定義する。
検証の前提:終値か、インターバーの極値かを指定すること。選択によって結果が変わります。
3) ブレイクアウト後の「false」判定ウィンドウを定義する
フォールス・ブレイクアウト・フィルタリングには、失敗を評価するための時間枠が必要です。たとえば、ブレイクアウト信号の時点の後に、次の W 単位の時間(ローソク足、分、またはバー)を監視します。
検証の前提:Wは事前に決めて固定し、テスト中に変えないこと。結果を見た後で変更するのは、選択バイアスの一種になります。
4) リテストまたはリバージョン基準で「失敗」を定義する
以下に2つの一般的なルール形式を示します。どちらも検証できます。
ルール形式A:先行レンジへのリバージョン(反転)
- 強気のブレイクアウトの場合、価格がWウィンドウ内で「上側の境界 − 許容差」まで戻る(またはそれ以下になる)なら、それを false とラベル付けする。
- 弱気のブレイクアウトの場合、価格がWウィンドウ内で「下側の境界 + 許容差」まで戻る(またはそれ以上になる)なら、それを false とラベル付けする。
ルール形式B:不成功のリテスト
- 強気のブレイクアウトの場合、価格が破られたレベルを再訪し、その後Wウィンドウの残りの間それを維持できないなら、それを false とラベル付けする。
- 弱気のブレイクアウトの場合、価格が再訪し、その後Wウィンドウの間それを維持できないなら、それを false とラベル付けする。
検証の前提:許容差の方法を1つ選ぶ(たとえば、固定のティック数、pips、または直前レンジ幅のある割合)。許容差は、厳密なレベルの周辺で市場が完璧に動かないため重要です。
5) 曖昧さを明示的に扱う
すべてのブレイクアウトが「false」または「not false(falseではない)」のどちらかに明確に当てはまるわけではありません。境界事例について、どうするかを決めます:
- 失敗が境界ちょうどで起きた場合: falseに数えるか、not falseに数えるか—どちらかを明記する。
- 価格が境界の周りで行ったり来たりする場合: たとえば「falseとして数えるには、ネットのリバージョンを要求する」など、ルールを選ぶ。
このステップは「ルール」の一部です。曖昧なケースを定義しないと、検証が一貫しなくなります。
6) 完全なルールセットの要約
完全に検証可能なセットは、次のように要約できます:
- 固定のルックバックを使って、過去データから直前レンジの境界を決める。
- 指定した計測方法(終値またはインターバー)と、閾値を用いて、価格が境界を越えたときにブレイクアウトを検出する。
- 固定のポスト・ブレイクアウト・ウィンドウWの中で、リバージョン・ルール、または明示的な許容差を伴う不成功のリテスト・ルールのいずれかで失敗を評価する。
- 失敗基準を満たすブレイクアウトを「false」とラベル付けし、必要なら、その後に実行する分析から除外する。
証拠または例:過去データでどう検証するか
検証可能なアプローチとして、フォールス・ブレイクアウト・フィルタリングを ラベリング関数 として扱うことができます。過去データにおける各候補のブレイクアウト事象に対して、ルールがラベル(falseまたはnot false)を生成します。
例のセットアップ(前提を明記)
次の前提でテストすると仮定します(これらは、あなたが自分の実験で設定するためのプレースホルダーです):
- 一定数の直前バーからレンジを構築する。
- 強気のブレイクアウトは、ローソク足の終値が、直前レンジの高値を閾値以上上回ることを意味する。
- Wは、次の固定されたバー数である。
- 「false」とは、終値がWの範囲内で直前レンジの高値まで、またはそれ以下まで戻ることを意味する。
検証方法:
- これらの固定した前提のもとで、ブレイクアウトが多数発生したケースに対してラベリング関数を適用する。
- ラベル付けされたfalse事象の割合を計算する。
- 1つのパラメータだけを変えて実験を繰り返す(たとえばWまたは閾値)ことで、ラベル率がどれほど敏感かを確認する。
重要:高い「false」率を報告したからといって、それがフィルタリングによって成果が改善することを自動的に意味するわけではありません。ここでの検証目的はより狭く、ルールが一貫して動作すること、そしてその前提が安定していることを確認することです。
フィルタリングなしのベースラインと比較する
有用な比較は、他の条件をすべて一定に保ったうえで、下流の指標を制御された形で評価することです(たとえば、結果の一貫性や、リバージョン挙動の分布)。
収益性を主張しなくても、「false」ラベルが、ランダムな事象よりも素早いリバージョンのパターンと相関するかどうかはテストできます。ポイントは、評価にデータマイニングを混ぜないことです。
制限とリスク(重大な失敗パターン)
フォールス・ブレイクアウト・フィルタリングは、そのアイデア自体とは無関係な理由で失敗することがあります。
1) パラメータ感度と過剰適合
閾値、許容差、ウィンドウ長の小さな変更でも、どの事象がfalseとしてラベル付けされるかが大きく変わり得ます。これらの選択を過去データの成績に合わせて調整すると、安定した挙動を捉えるのではなく、過去の条件に過剰適合してしまう可能性があります。
2) 市場レジームの変化
あるボラティリティ・レジームで機能するルールは、別のレジームでは挙動が異なる場合があります。ブレイクアウト頻度、典型的なローソク足のレンジ、平均回帰のスピードが変化し、固定のWや固定の許容差が適切でなくなることがあります。
3) データ品質と計測の選択
インターバーの極値と終値ベースの定義の違い、タイムゾーンの扱い、ローソク足の構築方法、シンボルのフォーマットなどが、結果を変えてしまう可能性があります。検証では、一貫したデータ定義を使う必要があります。
DOCUMENT END