Rejected thesis
Cup and handle (O'Neil 1988)
Thesis (rejected): After a rounded base of 30-100 days with a right rim within 5 % of the left rim and a 5-20 day handle that retraces no more than half the cup height, a breakout above the rim on volume continues higher over 5-60 days.
Code: research/cup_handle.py
Report: research/cup_handle_report.json (n=13,124)
Why it failed: Edges are flat-to-negative across every horizon.
| Horizon | event mean | ctrl mean | edge |
|---|---|---|---|
| 5 d | +0.13 % | +0.25 % | -0.12 % |
| 10 d | +0.43 % | +0.44 % | -0.01 % |
| 20 d | +0.74 % | +1.05 % | -0.31 % |
| 40 d | +1.53 % | +2.30 % | -0.77 % |
| 60 d | +2.69 % | +3.40 % | -0.71 % |
The breakout-on-volume above a long base is in the same family as our
coil-breakout cohort (which works), but the shape of the base —
specifically the U-rounded retrace required by cup-and-handle — selects
a different population than coil's tight flat base. Either O'Neil's
pattern has been arbitraged or it never worked as a stand-alone signal.
Verdict: Cohort skipped. Coil-breakout already captures the useful base-and-breakout structure.
| Sample | 13,124 |
|---|---|
| Validator | research/cup_handle.py |
| Verdict | Rejected |
Every result here is reproducible from the script named above. Reports are in the repository.
- Volatility squeeze
- Pre-FOMC drift
- Uptrend pullback
- Momentum continuation
- Industry-relative momentum (at 4-week lookback)
- Earnings-reaction reversal (anti-PEAD)
- Beat-persistence pre-earnings drift
- Sector ETF mean-reversion
- 52-week-high breakout
- Volume accumulation (above-200DMA +...
- Cross-sector momentum
- Analyst-upgrade cluster