# Pre-registration — backtest of claimed "profitable prop trader" strategies **Frozen:** 2026-09-16, before any arm below was run. Nothing in this file may change after results exist; additions go in a dated addendum. **Claims under test:** `/Volumes/X10/prop-firm-strategy-claims/CATALOG.md` (public web scrape, same date). **Already settled elsewhere, not re-tested as their own question:** 5m-close ORB family (pn-001; `fp-data/studies/2026-09-15-why-the-tape-loses.md`), RTH-long and overnight splits (`fp-context/studies/2026-09-16-product-strategies-*`). The ORB arms below exist only because the catalog states *different* rules (15-min range, 2× range target, midpoint stop, let-it-run) and because the prop simulator needs a stream from the most-sold family. ## Data and mechanics (all arms) - **Tape:** GLBX 1m `.v.0` volume front, NQ and ES, `/Volumes/X10/fp-data/glbx/{NQ,ES}/1m/2019..2026.csv`. **In-sample 2019-01-01 → 2023-12-31; out-of-sample 2024-01-01 → last bar.** - **Instrument traded:** micros (MNQ $2/pt, MES $5/pt), the size every prop page in the catalog recommends. - **Costs per micro, round turn:** $1.50 commission+fees; **+1 tick slippage each way** on market and stop orders. Limit orders get no slippage but fill only if price trades **1 tick through** the limit. News-arm stop entries: **+4 ticks** entry slippage (sensitivity: 1 tick). - **Signals** evaluated on bar close; market entries fill at the next 1m open. Stops and targets on 1m high/low; **stop wins ties**. Everything flat at **15:55 ET** (prop flatten rule) unless an arm says earlier. - **Event days** = FOMC statement, CPI, NFP dates from `/Volumes/X10/fp-context/events` (exact timestamps). - Every result is reported **gross and net** (the 9/16 gotcha: a constant cost on a quiet series manufactures t). ## Tape arms (each on NQ and on ES → 26 cells) | id | claim (catalog §) | frozen rules | |---|---|---| | ORB15-2X | §1 15-min ORB | range 09:30–09:45; entry on 1m close beyond the range, skipped if the close is >25% of range past it; stop opposite rail; target 2× range; first break only | | ORB15-RUN | §1 "let it run" | same entry; stop at range midpoint; exit 15:55 | | IB-EXT | §5 IB extension | range 09:30–10:30; 5m close beyond; stop IB midpoint; exit 15:55 | | IB-FADE | §5 failed extension | a 5m close ≥10% of IB beyond IB, then a 5m close back inside within 30 min → enter toward IB mid (target), stop at the extension extreme | | RANGE-FADE | §5 range fade after 10:00 | from 10:00, limit at the 09:30–10:00 high/low on first touch, fade to range mid; stop 0.5× range beyond | | ICT-SB-AM | §2 Silver Bullet NY AM | window 10:00–11:00; liquidity = 09:30–10:00 H/L and overnight 18:00–09:30 H/L; sweep = trade ≥1 tick through a level; MSS = 1m close through the most recent opposite 5-bar fractal swing within 20 min of the sweep; FVG = 3-bar 1m imbalance inside the MSS displacement; limit entry at FVG 50%; stop 1 tick beyond sweep extreme; target 2R; skip event days; ≤1 trade per window | | ICT-SB-AM-3R | §2 | identical, target 3R | | ICT-SB-LDN | §2 London window | window 03:00–04:00 ET, liquidity = 18:00–03:00 H/L; otherwise identical, 2R, flat 09:30 | | VWAP-FADE | §3 ±2σ band fade | RTH VWAP and volume-weighted σ from 09:30; from 10:00, a 1m bar that tagged ±2σ closes back inside → market fade, target VWAP, stop 12 ticks (NQ) / 4 ticks (ES) beyond the tag extreme as claimed; skip event days and "trend days" (first-hour range > 1.5× its 20-day mean); ≤2 trades/day | | VWAP-TREND | §3 trend-day pullback | trend day = every 5m close 09:30–10:30 on one side of VWAP; limit at VWAP on first touch after 10:30 in trend direction; stop VWAP ∓ 1σ; exit 15:55 | | EMA-9-21 | §5 | RTH 5m EMA9/EMA21 cross → market; stop at the prior 5-bar swing; target 2R; ≤3 trades/day | | NEWS-STRADDLE | §4 straddle | CPI/NFP 08:30, FOMC 14:00: at T−2 min stop orders ±D (D = 40 NQ pts / 10 ES pts as claimed); first fill cancels the other; stop = entry ∓ D; target entry ± 2D; time stop T+60 | | NEWS-FADE | §4 post-spike fade | at T+15 min, if |close(T+15) − close(T−1)| ≥ 0.25× 20-day mean daily range, fade it; target close(T−1); stop at the T..T+15 extreme; time stop T+120 | **Tape verdict rule (frozen):** an arm is **VALIDATED** only if net mean P&L per trade is > 0 in **both** IS and OOS **and** the full-sample t-statistic on per-trade net P&L is **≥ 3.0** (≈ Bonferroni over 26 cells) **and** gross is > 0. Anything else: **REFUTED** (net ≤ 0 or wrong sign OOS) or **INCONCLUSIVE** (right sign both halves, t < 3). Fewer than 100 trades in either half → **INSUFFICIENT**. ## Prop-account simulator (catalog §0, §6) Streams: every tape arm above **plus a zero-edge control** — each arm re-run with its direction replaced by a seeded coin flip (same times, stop and target geometry, same bars). **Account rules (from the 2026-09-16 scraped firm pages; numbers are assumptions, reported with sensitivity):** - **Topstep 50K Combine:** target +$3,000; MLL $2,000 trailing the **end-of-day** balance high, locked at $50,000; consistency: pass only when best day ≤ 50% of total profit; ≥2 trading days; timeout 60 trading days; fee $49 per started 21 trading days. - **Topstep Express (funded):** MLL as above; first payout when ≥5 winning days of ≥ +$150; payout = min(50% of profit, $5,000); timeout 120 trading days; activation fee sensitivity **$0 / $149**. - **Apex 50K eval:** target +$3,000; trailing $2,500 on the **intraday** equity high (tracked minute by minute inside open trades), trail stops at $50,100; no consistency; timeout 60 trading days; fee sensitivity **$35 / $167** per started 21 trading days. - **Apex PA (funded):** same trail; first payout after ≥8 trading days with ≥5 days ≥ +$50, balance ≥ $52,600, no day > 30% of total profit; payout = min(balance − $52,600, $2,000); activation sensitivity **$0 / $85 / $140**. **Overlays (catalog §0), applied per account:** O0 1 micro per trade · O1 contracts = floor($25 ÷ stop risk per micro), skip if 0 · O2 micro→mini ladder (1 micro; 1 mini once profit ≥ $1,000; back to 1 micro within $500 of target) · O3 best-day cap (stop for the day at +$1,500) · O4 stop after 2 losing trades or at +$300 on the day · O5 = O2+O3+O4. Copying N accounts is reported as N × one account (identical streams pass and fail together). **Attempts** start on every trading day of the half (overlapping, chronological, no resampling). **Metrics:** P(pass), P(first payout | funded), P(payout per attempt), mean days to payout, **EV per attempt = P(pass)·P(payout|funded)·E[payout] − E[fees]**. **Prop hypothesis (frozen):** H-P1 — overlays O3–O5 raise P(payout per attempt) on the **zero-edge control** relative to O0. H-P2 — no stream with a non-VALIDATED tape arm has EV per attempt > 0 at list-price fees in **both** halves. A stream "harvests the rules" if H-P1 holds for it; it is a **business** only if its EV per attempt > 0 in both halves at the stated fees.