ADL Volume Ratio Buy Overlay — UVOL/DVOL 22 daily 20d (qm-4bx.17)
Rejected qm-4bx.17 · 2026-08-12
Decision: NO-SHIP frozen — investigate-only; do not admit to catalog/Meta. Commit: 52b40804 · Date: 2026-08-12 · Payload: research/findings/adl-vol-ratio-qm-4bx.17.json · Repro: python -m research.scripts.auditadlvolratio --write
TL;DR NYSE ADL Volume Ratio USI:UVOL / USI:DVOL daily >22 is a sparse (24 triggers in 30y, 0.3% days, 3.4% active at 20d holding) buy-only capitulation impulse that forces max long SPY for a holding window. After maximal TV ingest (UVOL 1996-04-19→2026-08-11 7616 rows, DVOL 1992-01-02→2026-08-11 8643 rows, ratio 1996-04-19→2026-08-11 7616 ratios) plus explicit synthetic NO-GO (close-only stor
Provenance
Equity vs S&P (aligned, rebased to 1.0)
Aligned window, both rebased to 1.0 at start — Aligned window, both rebased to 1.0 at start for fair comparison · S&P dashed, experiment solid. X = Date, Y = Equity (rebased to 1.0).
Signal driver & thresholds (x-aligned)
Parameter grid: grid_threshold_daily_hw20
Threshold / holding window grid — see payload for full grid.
Signal timeline (sparse triggers)
Triggers when overlay takes over base strategy
Stats
| CAGR | 8.53% | Sharpe | 78.74% |
|---|---|---|---|
| Sortino | 104.66% | maxDD | -17.09% |
Disposition
# ADL Volume Ratio Buy Overlay — UVOL/DVOL 22 daily 20d (qm-4bx.17) **Decision:** `NO-SHIP frozen` — investigate-only; do not admit to catalog/Meta. **Commit:** `52b40804` · **Date:** 2026-08-12 · **Payload:** `research/findings/adl-vol-ratio-qm-4bx.17.json` · **Repro:** `python -m research.scripts.audit_adl_vol_ratio --write` ## TL;DR NYSE ADL Volume Ratio `USI:UVOL / USI:DVOL` daily >22 is a sparse (24 triggers in 30y, 0.3% days, 3.4% active at 20d holding) buy-only capitulation impulse that forces max long SPY for a holding window. After maximal TV ingest (UVOL 1996-04-19→2026-08-11 761
Follow-on work
- Pre-register holding 20 fixed and overlay override vs SMA200+60/40 before OOS 60/36 Deflated Sharpe; do not optimize window to 60.
- Try ensemble thresholds (8/12/15 voting) to reduce 22 brittleness; or lower threshold to 15 (best in-sample) but disclose.
- If revived, do not use sum5 at 22 or MA-smoothed at 22 — use raw daily only; document sum5 requires threshold ≤3.
- Do not use consensus — documented as filtered too strict.
- Do not invent pre-1996 ADL volume without licensed NYSE constituent volume history; close-only store cannot rebuild volume — frozen NO-GO.
Errors & data gaps
- Pre-register holding 20 fixed and overlay override vs SMA200+60/40 before OOS 60/36 Deflated Sharpe; do not optimize window to 60. - Try ensemble thresholds (8/12/15 voting) to reduce 22 brittleness; or lower threshold to 15 (best in-sample) but disclose. - If revived, do not use sum5 at 22 or MA-smoothed at 22 — use raw daily only; document sum5 requires threshold ≤3. - Do not use consensus — documented as filtered too strict. - Do not invent pre-1996 ADL volume without licensed NYSE constituent volume history; close-only store cannot rebuild volume — frozen NO-GO. - Investigate why 2022 be
Follow-up
gh issue create --title "Follow-up ADL Volume Ratio Buy Overlay UVOLDVOL 22 daily 20d qm-4bx17" --body "Follow-up to qm-4bx.17: Decision: NO-SHIP frozen — investigate-only; do not admit to catalog/Meta. Commi" --label "priority:p2" --label "pipeline:research" --label "agent:ready"# deep-link