Failure Swing — Wilder RSI-Strukturbruch statt Bar-Delay
DroppedFailure Swing — Wilder RSI-Strukturbruch statt Bar-Delay
2026-05-25 · status: dropped · 94.7s
Hypothesis: v1+v2+v3 (928 Cells) haben Divergenzen mit Bar-Delay-Bestätigung getestet und keinen Edge gefunden. Wilder selbst definierte die Bestätigung aber nicht zeit-getriggert, sondern struktur-getriggert: RSI muss das Zwischenhoch (bull) bzw. Zwischentief (bear) BRECHEN, bevor das Signal feuert. Falls der Confirmation-Mechanismus der Schlüssel war, sollte (a) pure Wilder FS (RSI-only, ohne Price-Divergenz) oder (b) Div + FS-Bestätigung mindestens an einer (TF, OS_threshold, max_span)-Kombi einen belastbaren Edge zeigen. Findet sich nichts, ist der Divergenz/RSI-Pattern-Befund auch unter dem methodisch sauberen Confirmation-Mechanismus widerlegt.
Verdict: DROP — über 1272 Cells (6 TFs × 3 OS-Thresholds × 3 max_span × 4 horizons × 6 patterns) erreicht der beste Pattern nur +1697.0 bps signed mean mit p=0.476. 3/1272 Cells haben mean_p < 10% (Rauschen-Erwartung: 127). Pure Wilder FS best: +956.0 bps; Div+FS-Confirmation best: +1697.0 bps. Auch der struktur-getriggerte Confirmation-Mechanismus rettet die RSI-Pattern-Hypothese nicht.
Key metrics
| metric | value |
|---|---|
| best_pattern | div_reg_bull_fs @ 1D/60d OS=30 span=20 |
| best_signed_bps | 1,697.01 |
| best_p_value | +0.4758 |
| best_total_signals | 6 |
| best_windows_under_5pct_p | 0 |
| total_cells | 1,272 |
| cells_with_p_under_10pct | 3 |
| cells_with_p_under_5pct | 3 |
| cells_with_signed_gt_25bps | 333 |
| pure_best_signed_bps | 955.99 |
| div_conf_best_signed_bps | 1,697.01 |
Approach
Wilder's Failure Swing als RSI-Strukturbruch — zwei Varianten parallel:
Pure Wilder FS (RSI-only state machine): 1. RSI ≤ OS_threshold (oversold dip recorded) 2. RSI bounces — track running high (bouncing-high) 3. RSI declines from bounce — wait for resolution 4. Trigger if RSI > bouncing-high before RSI re-touches OS_low Bear: mirror with OB_threshold + bouncing-low + downside break.
Divergenz-bestätigtes FS (Price-Divergenz + RSI-Strukturbruch):
Same 4 RSI-divergence types als v2 (pivot_k=10, max_lookback=50), aber das Signal feuert nicht bei pivot+k, sondern wenn der RSI das structural extreme zwischen den beiden Confirmation-Pivots bricht.
Sweep: 6 TFs × OS-Thresholds [25, 30, 35] × max_span_bars [10, 20, 40] × 4 horizons × 6 patterns = 1296 cells.
Walk-forward 12mo/3mo, embargo = max(24h, horizon+1 Bar), 200 mask-permutations je cell.
Per-timeframe scan
TF 5m (669,890 bars · 21 WF windows · embargo 120.1h)
TF 15m (223,298 bars · 21 WF windows · embargo 120.2h)
TF 30m (111,650 bars · 21 WF windows · embargo 120.5h)
TF 1h (55,826 bars · 21 WF windows · embargo 121.0h)
TF 4h (13,958 bars · 21 WF windows · embargo 364.0h)
TF 1D (2,328 bars · 20 WF windows · embargo 1464.0h)
Top 20 cells across full grid (by signed mean)
| variant | pattern | timeframe | horizon | os_th | max_span_bars | n_windows | total_signals | test_signals | mean_signed_bps | mean_p_value | p_under_5pct |
|---|---|---|---|---|---|---|---|---|---|---|---|
| div_conf | div_reg_bull_fs | 1D | 60d | 30 | 20 | 6 | 6 | 6 | 1697.01 | 0.476 | 0 |
| div_conf | div_reg_bull_fs | 1D | 60d | 25 | 20 | 6 | 6 | 6 | 1697.01 | 0.476 | 0 |
| div_conf | div_reg_bull_fs | 1D | 60d | 35 | 20 | 6 | 6 | 6 | 1697.01 | 0.476 | 0 |
| div_conf | div_reg_bull_fs | 1D | 60d | 35 | 10 | 4 | 4 | 4 | 1427.48 | 0.55 | 0 |
| div_conf | div_reg_bull_fs | 1D | 60d | 30 | 10 | 4 | 4 | 4 | 1427.48 | 0.55 | 0 |
| div_conf | div_reg_bull_fs | 1D | 60d | 25 | 10 | 4 | 4 | 4 | 1427.48 | 0.55 | 0 |
| div_conf | div_reg_bull_fs | 1D | 60d | 30 | 40 | 7 | 8 | 8 | 1154.94 | 0.526 | 0 |
| div_conf | div_reg_bull_fs | 1D | 60d | 35 | 40 | 7 | 8 | 8 | 1154.94 | 0.526 | 0 |
| div_conf | div_reg_bull_fs | 1D | 60d | 25 | 40 | 7 | 8 | 8 | 1154.94 | 0.526 | 0 |
| div_conf | div_hid_bear_fs | 1D | 15d | 30 | 40 | 1 | 1 | 1 | 1097.16 | 0.155 | 0 |
| div_conf | div_hid_bear_fs | 1D | 15d | 25 | 40 | 1 | 1 | 1 | 1097.16 | 0.155 | 0 |
| div_conf | div_hid_bear_fs | 1D | 15d | 35 | 40 | 1 | 1 | 1 | 1097.16 | 0.155 | 0 |
| pure | pure_bear_fs | 1D | 60d | 30 | 20 | 12 | 24 | 15 | 955.99 | 0.317 | 1 |
| pure | pure_bull_fs | 1D | 60d | 35 | 20 | 15 | 30 | 27 | 599.11 | 0.347 | 2 |
| pure | pure_bull_fs | 1D | 60d | 35 | 40 | 15 | 31 | 28 | 574.31 | 0.347 | 2 |
| pure | pure_bear_fs | 1D | 60d | 30 | 10 | 11 | 20 | 13 | 570.98 | 0.428 | 0 |
| div_conf | div_hid_bull_fs | 1D | 1d | 30 | 20 | 2 | 3 | 2 | 547.05 | 0.143 | 1 |
| div_conf | div_hid_bull_fs | 1D | 1d | 30 | 40 | 2 | 3 | 2 | 547.05 | 0.143 | 1 |
| div_conf | div_hid_bull_fs | 1D | 1d | 35 | 20 | 2 | 3 | 2 | 547.05 | 0.143 | 1 |
| div_conf | div_hid_bull_fs | 1D | 1d | 35 | 40 | 2 | 3 | 2 | 547.05 | 0.143 | 1 |
Full grid in results_full.csv.
Best cell per variant
| variant | pattern | timeframe | horizon | os_th | max_span_bars | total_signals | mean_signed_bps | mean_p_value | p_under_5pct |
|---|---|---|---|---|---|---|---|---|---|
| div_conf | div_reg_bull_fs | 1D | 60d | 30 | 20 | 6 | 1697.01 | 0.476 | 0 |
| pure | pure_bear_fs | 1D | 60d | 30 | 20 | 24 | 955.99 | 0.317 | 1 |
Best cell per timeframe
| timeframe | variant | pattern | horizon | mean_signed_bps | mean_p_value | total_signals | p_under_5pct |
|---|---|---|---|---|---|---|---|
| 15m | div_conf | div_hid_bull_fs | 5d | 94.18 | 0.479 | 231 | 2 |
| 1D | div_conf | div_reg_bull_fs | 60d | 1697.01 | 0.476 | 6 | 0 |
| 1h | div_conf | div_hid_bear_fs | 5d | 156.37 | 0.407 | 42 | 3 |
| 30m | div_conf | div_hid_bull_fs | 5d | 87.06 | 0.438 | 147 | 2 |
| 4h | div_conf | div_reg_bear_fs | 15d | 364.4 | 0.34 | 52 | 2 |
| 5m | div_conf | div_hid_bear_fs | 5d | 38.37 | 0.402 | 568 | 2 |
Pure vs. Divergence-confirmed (aggregate)
| variant | n_cells | mean_signed_bps | median_signed_bps | best_signed_bps | cells_p_lt_10pct | cells_p_lt_5pct | total_signals |
|---|---|---|---|---|---|---|---|
| div_conf | 840 | 37.57 | 3.25 | 1697.01 | 3 | 3 | 315372 |
| pure | 432 | 22.06 | 2.16 | 955.99 | 0 | 0 | 640576 |
