Methodology & caveats

How it was built.

A short, honest description of the data, the statistical framework, what was tested, what was kept, and what to be sceptical about.

The data

Two clean CSVs of S&P 500 cash index price action.

Daily and intraday tie out exactly: daily Open = first 5-min open; daily High/Low = max/min of intraday extremes; daily Close = last 5-min close. The 5-minute set covers the regular cash session (09:30-16:00 ET), expressed in static UTC stamps (14:35-21:00).

What was tested

Roughly 260 candidate edges across twelve families:

Day of week

O2C, C2C, overnight, range and abs-return per day. DOW × regime, DOW × gap class.

Seasonality

Per-month returns, day-of-month buckets, turn-of-month effect, OPEX week.

Gaps

Five-bucket gap classification, continuation vs. fade, gap-fill rates, gap × regime.

Regimes

Above/below 20/50/200 SMAs, combined regime score, RV20 quartiles.

Patterns & streaks

Inside / outside / NR7 / WR7, multi-day patterns, day-after-N-streaks.

Tail reversion

Decile bucketing of prior return, ±1%, ±2% threshold buckets.

Opening range

5/15/30/60-min ORB outcomes, first-break long/short strategies, OR-class continuation.

Time of day

30-min bucket means and win rates, time of high/low, FH × LH cross-tab.

Prior-range projections

PDH/PDL touches, ±0.25R/0.5R/1R extension touches, Camarilla pivots, static % bands.

Range expansion

Today / prior range ratio by decile, NR7 vs WR7 next-day behaviour.

Multi-factor

DOW × gap × regime, DOW × prior-direction, DOW × prior-close strength.

Composite scoring

5-factor score (gap dir, prev C2C, regime, close strength, DOW heuristic) → next-day return.

How edges were scored

Each candidate edge produces a conditional return distribution. For every one we record:

A composite quality score blends those terms with sample-size and effect-size thresholds. Edges with quality ≥ 9, n ≥ 50, and at least one p-value < 0.10 are included in the "significant" filter. The strongest survive both at p < 0.001.

Caveats & limitations

Sample bias. 2020-2026 is a structural bull market punctuated by short violent corrections (Mar-2020, Oct-2022, Aug-2024, Apr-2025). Mean drift is positive across virtually every slice. Many edges may be "bull-tax" rather than universal edge — the directional information is real, but conditional on regime persisting. Apply the trend filter religiously when deploying.
Multiple testing. 259 tests at α=0.05 implies ~13 false positives by chance. The recommended modules rest on edges that are significant at p < 0.001 and mechanically interpretable, but caution is warranted before treating any single sub-result as fact.
Pre-cost. Returns are gross of transaction costs. ORB-style edges of +0.05% per trade are barely above slippage on retail futures. Daily-swing edges of +0.18% are workable. Premium-selling structures absorb costs into the credit but bid-ask matters at 0DTE.
No out-of-sample. No formal walk-forward / OOS split was used. The natural next step before live deployment is to lock the rules and re-test on a held-out period (e.g. fit on 2020-2024, validate on 2025-2026).

Recommended next steps

  1. Out-of-sample validation. Refit on 2020-2024, test on 2025-2026. Drop edges that don't survive.
  2. Bear-regime stress test. Pull pre-2020 SPX data and test the swing module against 2008, 2015-16, and 2018-Q4.
  3. Cost modelling. For 0DTE option implementations, pull historical SPX option chains to estimate spread/commission drag.
  4. Volatility overlay. Add VIX or RV20 quintile filters — many edges look likely volatility-conditional.
  5. Position-sizing layer. Convert edge expectancy into Kelly-fraction sizing (with realistic capping).
  6. Live updates. Hook the dashboard to a live data feed so the regime/gap classification updates each morning automatically.

Toolchain

Built with Python (pandas, numpy, scipy), Chart.js + Grid.js for the dashboard, matplotlib for the playbook diagrams, python-docx-equivalent (docx-js) for the report, openpyxl for the workbook, and Pine v5 for the TradingView indicators. The whole pipeline is reproducible from the two source CSVs.

Disclaimer

This site presents historical statistical research only. Nothing here is financial advice, investment advice, or a solicitation to trade. Trading derivatives involves substantial risk of loss. Past statistical patterns may not persist. Do your own due diligence and size accordingly.