Status: no cell clears the gate (as of tape grid close, 2026-08-17)
1. What was tested
New information source: the trade tape. Alpaca crypto trades carry taker_side
aggressor labels but were unused in all prior phases. data/alpaca/tape.py
derives 8 order-flow features per bar:
tcount_z20— trade-count z-score vs trailing 20-bar meanbvr,bvr_ma20— buy-volume ratio (buy trades / all trades) and its 20-bar meanrollover_bps,rollover_ma20— volume rolled into next bar as bps, and its meanavg_size,size_z20— mean trade size and its z-scoretrades_per_sec— trade density
Features are persisted as v2 datasets (h{h}_tape.parquet) with a
versioned schema, leaving v1 cells byte-identical. Models are the same walk-forward
GBR machinery as phases 1–11; backtests unchanged at q = 0.80, 30/50 bps fee gate.
Grid: ETH/USD only (SOL tape data is effectively absent pre-2024, 2,072 trades).
| Timeframe | h | cells |
|---|---|---|
| 1Min, 5Min (full history, bar+tape) | 5, 12 | 4 |
| 1Hour, 4Hour, 1Day (full history, bar+tape) | 1, 6, 24 | 9 |
Plus the stacking combiner probe and the BTC/USD cross-section probes.
2. Results — tape grid, OOS (walk-forward, q = 0.80)
1Min / 5Min (full history, bar+tape)
| cell | IC | Spearman | top-quintile gross bps |
|---|---|---|---|
| 1Min h5 | −0.0016 | −0.0032 | −0.05 |
| 1Min h12 | +0.0007 | −0.0091 | −0.11 |
| 5Min h5 | +0.0250 | −0.0036 | −0.06 |
| 5Min h12 | +0.0119 | −0.0161 | −0.31 |
Tape features add nothing at fast timeframes; all four cells gross ≈ 0.
Day-horizon (full history, bar+tape)
| cell | n | gross bps/trade | net cum bps | Sharpe | hit |
|---|---|---|---|---|---|
| 1Hour h24 | 7,876 | +8.1 | −172,150 | −3.84 | 0.470 |
| 1Hour h6 | 7,880 | +7.9 | −174,288 | −7.93 | 0.412 |
| 1Hour h1 | 7,884 | +2.9 | −213,739 | −22.90 | 0.302 |
| 4Hour h24 | 1,966 | +31.8 | +3,480 | +0.18 | 0.517 |
| 4Hour h6 | 1,966 | +5.8 | −47,534 | −4.37 | 0.462 |
| 4Hour h1 | 1,971 | +8.7 | −41,968 | −9.19 | 0.396 |
| 1Day h24 | 325 | −34.0 | −20,742 | −2.25 | 0.406 |
| 1Day h6 | 328 | −52.5 | −27,009 | −6.72 | 0.491 |
| 1Day h1 | 327 | +1.1 | −8,655 | −4.95 | 0.465 |
ETH 4Hour h24 is the first cell ever net-positive at the default q = 0.80 (gross +31.8 bps/trade against a 30 bps maker gate). Sharpe +0.18 and max DD −99.99% flagged it as borderline immediately.
3. Held-out validation killed the champion
Cal/held-out split at the midpoint, quantile sweep on the 4Hour h24 tape cell:
| q | cal net bps (Sharpe) | val net bps (Sharpe) | val gross bps |
|---|---|---|---|
| 0.80 | +45,009 (+4.48) | −111,660 (−13.45) | −82,612 |
| 0.85 | +19,107 (+2.59) | −84,826 (−14.06) | −63,028 |
| 0.90 | −13,384 (−2.61) | −54,349 (−13.25) | −39,760 |
| 0.95 | −35,751 (−12.81) | −33,673 (−17.83) | −26,383 |
Same signature as every phase-10/11 champion: apparent edge confined to the cal half, gross-negative on the held-out half. The +31.8 bps/trade gross was a 2021–2023-halftime artifact of the 4-day holding period, not order-flow alpha.
4. Stacking probe (dead)
Daily combiner over r_1d, rv20, pair z20/60/90, and daily-downsampled 1Hour h24 + 4Hour h6 model preds → GBR, h = 1: IC −0.011, top-quintile −9.9 bps, gross-negative at every quantile. The single val-positive cell (q0.9 +1,209 bps) had a negative cal half. No combination of existing predictions contains a tradeable edge.
5. Where this leaves the program
| phase | hypothesis | outcome |
|---|---|---|
| 3–5 | bar features, walk-forward GBR | fail |
| 6 | quote-era + aggregates | fail |
| 7 | regime-conditional (vol bands) | fail |
| 9 | extended grids + quantile scan | fail (val kills all) |
| 10 | long-horizon cells | fail |
| 11 | vol-band entries, ETH/SOL pair reversion | fail |
| 12a | trade-tape order flow | fail |
| 12b | stacking | fail |
| 12c | BTC cross-section pairs | fail (closed 2026-08-17) |
6. Open items
- CLOSED — pairs hypothesis dead:
pairs_btc_probe.pyrun on the complete BTC 1Day store (2,054 shared days, ETH-BTC; 1,636, SOL-BTC; w 20/60/90 × z 1.0–2.5). ETH-BTC: all 24 cells fail (cal or val negative); best cell w20 z2.0 (+2,375 / +222 bps) is neither sizeable nor consistent. SOL-BTC: the only both-positive cell (w20 z2.0, +2,919/+1,034) sits on the SOL 1Min gap (2023-07→2024-08) and the val-half blow-up (w90 z1.0 +32,375) is a phantom splice artifact — non-reportable per the phase-13 audit. Every pairs / cross-sectional hypothesis in the repo has now failed. - Deployment decision superseded by phase 13: the ETH 1Day trend overlay (after the 2026-08-17 audit: +258.9% @1x, +357.5% @1.25x, DD −17.4%/−21.7%) is the deployable strategy; no flat-book outcome.
Artifacts
data/processed/alpaca/pipeline/models_tape_run67.json(all 13 cells, OOS stats)data/processed/alpaca/pipeline/backtests_tape_run67.json(q=0.80 full-OOS backtests)validation_t4h24.json(cal/val sweep of the champion)stacking_probe.json(combiner probe)data/processed/alpaca/datasets/ETH_USD/{1Min,5Min,1Hour,4Hour,1Day}/h*_tape.parquetlogs/pipeline_run6.log,logs/pipeline_run7.log