【要約】反発 +4.6% の翌日に暴落が来た — bounce 1 日で risk-on と判断しない設計 [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
自動売買システムの運用者が、急落後の強い反発局面において、相場回復の誤認による損失リスクに直面している。人間は強い陽線を見ると楽観バイアスに陥りやすく、不適切なエントリーを誘発するからだ。
- ・急落後の反発は、ロスカット完了等の短期的な需給変化に過ぎないことが多い。
- ・ボラティリティが高止まりしており、リターン分布の裾が広いため再現性が低い。
- ・強い陽線の翌日は、利確売りによりリターンが負に振れる構造的バイアスが存在する。
// Approach
開発者は、人間の認知バイアスを排除するために、相場環境を判定する状態機械をシステムに導入した。これにより、特定の条件下で機械的にエントリーを抑制する構造を構築している。
- ・
crash+2 givebackフラグの実装。 - ・1日での一定割合(例: -2.5%)の下落を
crashと定義。 - ・
crash発生から2営業日を警戒窓(giveback window)として設定。 - ・警戒窓内では、順張りスコアの減点やリスク許容枠の縮小などの防御的措置を強制。
- ・判定理由を
regime_tagとしてログに記録し、事後分析を可能にする。
// Result
システムは、強い反発局面での利益機会をあえて放棄することで、その後の暴落による損失を回避している。これにより、長期的には資産のドローダウンを抑制する効果を得ている。
- ・強い反発日(例: +4.61%)の利益を取り逃がす機会損失が発生する。
- ・一方で、翌日の暴落(例: -4.15%)による損失を確実に回避できる。
- ・限定的なサンプルにおいて、損失回避のメリットが機会損失を上回ることを観測している。
Senior Engineer Insight
> 本設計は、アルゴリズムの精度向上よりも、運用の堅牢性と観測可能性を重視している。人間の認知バイアスを前提とし、状態機械で強制的に制約をかける手法は極めて実戦的だ。また、rejectログに判定理由を付与する設計は、事後分析の質を劇的に向上させる。スケーラビリティよりも、意思決定の再現性と検証可能性を優先した、プロフェッショナルな設計思想である。