a4-signed-volume-persistence
a4 / a4-signed-volume-persistence @ a4-v1 · code 3f6e122
campaign strategyREJECTED
Execution+Statistical Gate: Bootstrap 95% CI [-0.0021, 0.0374]R includes zero -- the raw edge is not statistically distinguishable from noise at this sample size.
Lifecycle
completed
Outcome
fail
Phase
Phase A
Research gate
EXECUTION_STAT
Engine
strategy lab
Market
MNQ
Timeframe
MNQ 1-minute OHLC
Side
BOTH
Tracking
Family, lineage and what this record needs nextMechanism family
Order flow / aggressor imbalance
a4-signed-volume-persistence
Mechanism parent
None declared.
Phase detail
Scientific validation lane (Phase A).
Next required test
None — this record is complete.
Integrity & certification
Signals as recorded; NOT_PASSED means not passed or not applicableEngine certified
unknown
Execution certified
unknown
Integrity audit
unknown
Shadow verifier
unknown
Technical invalidation
None recorded.
Artifacts
Everything committed for this recordCampaign record (A4)
research-output/strategy-lab/campaigns/a4/campaign_state.json
Stage ladder
Each cell carries the campaign runner's own classification label — hover for the verdict and its reasonIntake
passed
Pre-reg
passed
Lightning
passed
Robust
passed
Exec/stat
failed
Validation
—
H-eligible
—
Holdout
—
Audit
—
Closed
failed
INTAKE
Registered into campaign A4 at code version 3f6e122.
PREREGISTRATION
Pre-test passed: distinct, causal, executable, required data available.
LIGHTNING
SURVIVED_LIGHTNING_SCREENAggregate expectancy 0.0176R (PF=1.027) over 24805 resolved trades, 3/4 qualifying years (n>=15) agree with the aggregate sign, top-10 winner concentration 4.6% (below the 50% concentration flag). Survives the Lightning Screen -- NOT validated.
ROBUSTNESS
ROBUSTNESS_SURVIVEDNo single-year dependence, no severe winner concentration (no preregistered neighborhood declared).
EXECUTION STAT
EXECUTION_STAT_FAIL_CI_INCLUDES_ZEROBootstrap 95% CI [-0.0021, 0.0374]R includes zero -- the raw edge is not statistically distinguishable from noise at this sample size.
CLOSED
REJECTEDExecution+Statistical Gate: Bootstrap 95% CI [-0.0021, 0.0374]R includes zero -- the raw edge is not statistically distinguishable from noise at this sample size.
Evidence recorded
Quoted from the campaign record — never recomputed hereScreen n (FIXED_2R)
24,805
Expectancy
+0.018R
Profit factor
1.03
Win rate
34.0%
Total R
436
Max DD
147R
Longest L streak
25
Trades / year
6924.1
| Split | Window | n | Expectancy | PF | Max DD |
|---|---|---|---|---|---|
| Discovery | — | — | — | — | — |
| Validation | — | — | — | — | — |
| Holdout | — | — | — | — | — |
Bootstrap CI
95% CI -0.002R .. +0.037R · P(expectancy > 0) = 96%
Winner concentration
Top 5 2.3% · top 10 4.6% · top 20 9.2% of total R.
Leave-one-year-out
No sign flip when any single year is removed.
Read from research-output/strategy-lab/campaigns/a4/campaign_state.json
Holdout position
One-shot, sealed, never retriedEligible
—
Authorised
Not authorised.
Specification frozen
—
Sealed data consumed
No.
Validation data consumed
No.
Lineage
Declared at intake, carrying any prior negative resultRelation to prior work
new independent mechanism
Frozen specification
Snapshotted at intake — not re-read from a live moduleMechanism hypothesis
A sequence of directional bars carrying disproportionately high volume in the SAME direction (a proxy for persistent directional participation, not true order flow) predicts short-horizon continuation.
Long rule
Over the last 5 closed 5-minute bars, sign each bar's own volume by its own close-vs-open direction and compute netFraction = sum(signed volume) / sum(raw volume). If netFraction >= 0.6 AND at least 4 of the 5 bars closed up: enter LONG (continuation) at the next 1-minute bar's open.
Short rule
Same computation; if netFraction <= -0.6 AND at least 4 of the 5 bars closed down: enter SHORT.
Entry trigger
A rolling 5-bar signed-volume net fraction (a directional-volume PROXY from observable OHLCV, not true order flow) reaches +/-0.6 with at least 4 of the 5 bars sharing that same direction. Edge-detected: re-armed only once the window next fails to qualify, then qualifies again.
Earliest executable entry
Next 1-minute bar's open after the triggering 5-minute bar closes.
Initial stop
1.5x ATR(14, 5-minute, computed only from closed bars strictly before the trigger bar) placed on the adverse side of the entry price.
Exit
FIXED_2R only (this seed strategy's declared A4 scope), via the shared TradeTracker; 5-day max-hold expiry as a backstop.
Causality
The signed-volume net fraction at bar i uses only closed 5-minute bars up to and including bar i itself (a standard lagging statistic). The ATR used for the stop is computed only from bars strictly before the trigger bar. Entry is deferred to the next 1-minute bar's open after the trigger bar closes. No same-bar entry.
Expected frequency
MODERATE
Required data
MNQ 1-minute OHLC, MNQ 1-minute volume (available via loadVolumeResearchBars(), 2022-06-03 onward)
Campaign data window
MNQ 2022-06-03..2026-09-15
Parameters
lookback5m = 5 (integer) — 5-minute bars over which the signed-volume net fraction is computed.persistenceThreshold = 0.6 (number) — Minimum absolute net fraction required.minSameSignBars = 4 (integer) — Minimum number of the lookback bars that must share the dominant direction.atrLength5m = 14 (integer) — 5-minute ATR lookback used for the fixed-multiple stop.stopAtrMultiple = 1.5 (number) — Stop distance as a multiple of the 5-minute ATR.
Read from research-output/strategy-lab/campaigns/a4/campaign_state.json
History
Every dated event this record appears in, newest first2026-09-16
a4-signed-volume-persistence@a4-v1 registeredREJECTED · EXECUTION_STAT
[a4] Execution+Statistical Gate: Bootstrap 95% CI [-0.0021, 0.0374]R includes zero -- the raw edge is not statistically distinguishable from noise at this sample size.
research-output/strategy-lab/experiment_registry.json