LEVEL REACTION STATS · SPX 0DTE
How SPX reacted when it reached the levels on our board: 1,090 sessions, May 16, 2022 → Oct 2, 2026, rebuilt with the same math as the live board.
The short answer
Across every level on the board, SPX held 62.1% of decided tests vs 61.4% at random lines (+0.7 pp, 90% CI −0.3 to +1.7). Other days' levels dropped onto the same candles did at least as well (+0.9 pp, 90% CI +0.3 to +1.4). As a group, the board adds nothing measurable beyond where levels tend to sit.
16,458 decided tests · 1,090 sessions · 90% CIs from a day-clustered bootstrap · a touch where levels coincide counts for each of them
Random line = an ordinary strike away from the board's levels, same test (VWAP: lines riding VWAP). Other days' levels are the shuffle control.
Where the board does differ
each shown only when its interval supports it · click a level for its breakdown−γ days ranged wider after 10:00
90% CI +0.11× to +0.20× EM · similar-IV days +0.14× · whole day +0.12× · an association, not a cause
Prior close ↓ held less often; Gamma flip ↑ with no other level within 2τ held more often than random lines
▴ / ▾ = firm call after multiple-testing control. Breakdown intervals are the held-% interval against the random-line rate.
Not after multiple-testing control
4 of 13 level-sides clear random lines at 90%; about 1.3 would by chance alone if they were independent (they aren't: levels often coincide), so only ▴ / ▾ is a firm call.
Left out, muted (≈ in the scorecard): Call wall #1 ↑, Call wall #2 ↑, Put wall #2 ↓, Gamma flip ↓, Pin ↑, EM low ↓, Day high ↑, where other days' levels on the same candles also differ from random lines, so random lines aren't a fair yardstick.
What doesn't show up
common readings of the map that the history doesn't backclosed between them from 10:00 vs the same distances on other days (−0.2 pp, CI −2.7 to +2.1); from 15:00: 68.2% vs 70.0% (CI −4.2 to +0.4)
the pin strike ended nearer the settle than ‘no move from 15:00’ (CI 24.5%–28.7%, null 27.0%); from 15:30: 24.7% vs 26.2%
call / put walls vs random lines, matched by other days' walls on the same candles (+1.9 / +1.3 pp), so the lead comes from where walls sit
call-wall tests went undecided more often than random lines, but so did non-wall levels (Gamma flip ↑ 17% vs 7%, EM high ↑ 28% vs 19%, Day high ↑ 19% vs 15%), so it isn't specific to walls
Levels are modeled from public open interest (customers assumed long calls / short puts). They are not actual dealer positions. These are past reactions, not predictions or advice.
Right now · nearest level above
Right now · nearest level below
Reading the numbers
- Held = a 1-min bar closed back on the approach side first; n counts decided tests (held + broke).
- ▴ ▾ held more / less often than random lines, after multiple-testing control. No glyph = no firm difference after that control.
- ≈muted: other days' levels on the same candles also differ from random lines there, so random lines aren't a fair yardstick; no glyphs.
- ~ the exact context was too thin, so a broader sample is shown.
- fewer than 30 decided tests: read as a hint only.
Scorecard · every level on the board
| Quarterly | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| 1,145 · 601d | 66% | ≈+3.8 pp | 26%rand 18% | ≈2rand ≈2.5 | ≈10rand ≈11 | ≈11.5rand ≈12 | 13%rand 16% | 601 / 1,090 | ||
| 766 · 525d | 63% | ≈+0.8 pp | 26%rand 20% | ≈2rand ≈2 | ≈10rand ≈10.5 | ≈11.5rand ≈12 | 14%rand 18% | 525 / 1,090 | ||
| 497 · 405d | 64% | +2.3 pp | 22%rand 17% | ≈2rand ≈2.5 | ≈10.5rand ≈11.5 | ≈12.5rand ≈12.5 | 12%rand 16% | 405 / 1,090 | ||
| 2,408 · 753d | 65% | ≈+2.5 pp | 25%rand 18% | ≈2rand ≈2.5 | ≈10rand ≈11 | ≈11.5rand ≈12 | 13%rand 17% | 753 / 1,090 | ||
| 1,390 · 530d | 62% | +1.7 pp | 11%rand 8% | ≈2.5rand ≈3 | ≈11.5rand ≈11.5 | ≈14rand ≈14.5 | 24%rand 28% | 530 / 1,090 | ||
| 1,104 · 486d | 59% | ≈−0.8 pp | 9%rand 7% | ≈3rand ≈3 | ≈11.5rand ≈12 | ≈14rand ≈14.5 | 23%rand 27% | 486 / 1,090 | ||
| 687 · 397d | 63% | +2.6 pp | 8%rand 7% | ≈3rand ≈3 | ≈12rand ≈12.5 | ≈14.5rand ≈14.5 | 27%rand 29% | 397 / 1,090 | ||
| 3,181 · 654d | 61% | ≈+1.1 pp | 10%rand 8% | ≈2.5rand ≈3 | ≈11.5rand ≈12 | ≈14rand ≈14.5 | 24%rand 28% | 654 / 1,090 | ||
| 755 · 426d | 63% | ≈+2.0 pp | 9%rand 9% | ≈3rand ≈3 | ≈11.5rand ≈11 | ≈14.5rand ≈15 | 20%rand 21% | 426 / 1,090 | ||
| 703 · 401d | 65% | +5.3 pp | 17%rand 7% | ≈2.5rand ≈3 | ≈11.5rand ≈12.5 | ≈12.5rand ≈13 | 21%rand 26% | 401 / 1,090 | ||
| 193 · 136d | 67% | +5.3 pp | 8%rand 12% | ≈2rand ≈3 | ≈10.5rand ≈11.5 | ≈12rand ≈14 | 28%rand 31% | 136 / 1,090 | ||
| 724 · 526d | 66% | ≈+3.7 pp | 22%rand 16% | ≈2rand ≈2.5 | ≈10.5rand ≈11 | ≈11rand ≈12 | 14%rand 17% | 526 / 1,090 | ||
| 117 · 90d | 63% | +1.7 pp | 6%rand 11% | ≈1rand ≈3 | ≈9.5rand ≈10.5 | ≈14rand ≈14 | 21%rand 25% | 90 / 1,090 | ||
| 285 · 280d | 63% | +0.8 pp | 28%rand 19% | ≈1.5rand ≈2 | ≈10.5rand ≈11 | ≈13rand ≈12 | 9%rand 19% | 280 / 1,090 | ||
| 448 · 261d | 62% | ≈+2.5 pp | 7%rand 7% | ≈3rand ≈3 | ≈13rand ≈12.5 | ≈13.5rand ≈14.5 | 28%rand 28% | 261 / 1,090 | ||
| 230 · 148d | 62% | +1.9 pp | 9%rand 8% | ≈2.5rand ≈3 | ≈11.5rand ≈12 | ≈14.5rand ≈14 | 23%rand 26% | 148 / 1,090 | ||
| 1,178 · 741d | 61% | −2.9 pp | 12%rand 13% | ≈2.5rand ≈2.5 | ≈11rand ≈11.5 | ≈13.5rand ≈12.5 | 21%rand 23% | 741 / 1,090 | ||
| 1,278 · 760d | 61% | −0.8 pp | 14%rand 15% | ≈2.5rand ≈2.5 | ≈11rand ≈12 | ≈12.5rand ≈12 | 21%rand 21% | 760 / 1,090 | ||
| 774 · 503d | 56%▾ | −6.2 pp | 9%rand 9% | ≈3rand ≈3 | ≈11.5rand ≈11.5 | ≈14rand ≈14 | 25%rand 24% | 503 / 1,090 | ||
| 699 · 456d | 61% | −1.0 pp | 14%rand 14% | ≈2.5rand ≈2.5 | ≈11rand ≈11.5 | ≈12.5rand ≈12 | 24%rand 21% | 456 / 1,090 | ||
| 1,497 · 820d | 63% | ≈+1.7 pp | 19%rand 15% | ≈2rand ≈2.5 | ≈11.5rand ≈11.5 | ≈12rand ≈13 | 20%rand 21% | 820 / 1,090 | ||
| 1,988 · 822d | 61% | −0.8 pp | 9%rand 8% | ≈2.5rand ≈3 | ≈12rand ≈12 | ≈13.5rand ≈14.5 | 24%rand 27% | 822 / 1,090 |
Regime × time of day
Positive gamma is supposed to make levels stickier. Here's what the tape says.
| Open09:35 | Mid10:30 | Aft13:30 | Close15:00 | All day | |
|---|---|---|---|---|---|
| +γ | |||||
| −γ | |||||
| All |
What the held % varies with
Exploratory: many comparisons, so a row is highlighted only after multiple-testing control (false-discovery rate 0.1 across every cell and breakdown). This level is muted (≈), so nothing here is highlighted: Other days' #1 call walls, dropped onto the same candles, held more often than random lines (+2.1 pp, 90% CI +0.3 to +3.8 pp), so random lines aren't a fair yardstick for this level. No ▴ / ▾.
How far through before it held
Conditional on holds: how far price traded through on tests that went on to hold. Tests that broke went further by definition, so this describes holds only.
What happened next
At the touch you don't know which path you're on. The band is every test.
Breaks
A break is a 1-min close ≈5.3 pts through (0.12× EM, 4–10 pts), so every run includes that threshold: the median run is ≈6 pts beyond it.
Latest tests
| Session | Level | Outcome | Move |
|---|---|---|---|
| Oct 2 15:38 | 7,730 | Held 17m | bounce ≈6.5 |
| Oct 2 10:18 | 7,750 | Undecided | — |
| Oct 2 09:45 | 7,750 | Held 6m | bounce ≈20.5 |
Did the day respect the map?
Whole sessions, not single tests · 1,090 days · anchors read as of the time shownExpected move
The median day used 1.04× of its EM (middle half 0.74×–1.42×).
Walls containment
Pin into the close
Regime vs range
−γ days ranged a median 0.16× EM wider after 10:00 (90% CI 0.11×–0.20×). Comparing days with similar implied vol: 0.14×. Whole day, including the minutes before the regime read: 0.12×. An association, not a cause: the 10:00 regime is partly set by how the day opened.
| +γ days | −γ days | |
|---|---|---|
| |10:00 → close| median | 0.45× | 0.51× |
| Trend days | 37% | 44% |
56% of sessions were +γ at 10:00; 77% kept the same regime at 15:30. Trend day = closed in the top or bottom 20% of a range after 10:00 ≥ 0.8× EM.
▶Methodology & robustness
definitions · baseline · robustness · diagnostics · caveats · method lrs-1.1
Definitions · at the typical EM of ±44.4 pts
A test starts once SPX has been at least 8.9 pts away from a level (0.20× that day's expected move) and then trades within 1.8 pts of it. It held if a 1-minute bar then closed 5.3 pts back on the side it came from before any bar closed 5.3 pts through. It broke if the reverse happened first. Neither within 30 minutes counts as undecided; those are shown but left out of held %.
Why ‘vs random lines’ matters: under these rules even a random price ‘holds’ about 61% of the time, because a test starts slightly on the near side of the level. So we run the identical test on ordinary strikes that weren't on the board (every 5-pt strike and the 2.5s between them; for VWAP, a line riding VWAP ± 0.25× EM), in the same regime, time of day and direction, matched for round numbers, how fast price arrived and how wide the day ran. A level only matters if it beats that.
Poke-through. Levels rarely hold to the tick. Poke-through is how far SPX traded past the level before it held. It is measured only on tests that held, so it is conditional on the hold and understates how far price goes on tests that break.
Failed break. Share of breaks where SPX closed back 5.3 pts on the original side within 30 minutes.
How the history is rebuilt
- Touch τ
- 0.04× EM, 1.5–3 pts → 1.8 pts today
- Arm A
- 0.2× EM, 6–14 pts → 8.9 pts today
- Hold / break D
- 0.12× EM, 4–10 pts → 5.3 pts today, on 1-min closes
- Decision window
- 30 min from the touch bar
- Tested windows
- 09:35–15:49 ET (first 5 min skipped, ≥10 min left)
- Known at the time
- levels from the snapshot 1 bar before the touch; VWAP and day high / low through the prior bar
- New levels
- a level shown < 3 bars is left out; one that moves onto price is not a test
- Level moves
- a jump of more than 5 pts (max of 0.5× A, 5 pts) is a new place: it voids the approach and restarts the age
- History steps
- 1-min greeks history, open interest as of 6:30 AM ET
- Intervals
- 90% day-clustered bootstrap (1,000 draws); FDR q = 0.1
- Minimums
- rate shown at 10+ decided; badge at 30+ on 15+ days; glyph at 40+
- Glyphs
- ▴ / ▾ after Benjamini–Hochberg over every cell and breakdown jointly; none for a level the shuffle control mutes
Robustness · held vs random at D = 0.08 / 0.12 / 0.18 × EM
| Level | 0.08× | 0.12× (used) | 0.18× |
|---|---|---|---|
| Call wall #1↑ | 68% / 64% | 66% / 62% | 64% / 62% |
| Call wall #2↑ | 65% / 64% | 63% / 62% | 63% / 61% |
| Call wall #3↑ | 66% / 64% | 64% / 62% | 61% / 61% |
| Call walls (any)↑ | 67% / 64% | 65% / 62% | 63% / 61% |
| Put wall #1↓ | 63% / 62% | 62% / 60% | 59% / 58% |
| Put wall #2↓ | 61% / 62% | 59% / 60% | 57% / 59% |
| Put wall #3↓ | 62% / 62% | 63% / 60% | 61% / 59% |
| Put walls (any)↓ | 62% / 62% | 61% / 60% | 59% / 59% |
| Gamma flip↓ | 66% / 63% | 63% / 61% | 61% / 60% |
| Gamma flip↑ | 68% / 62% | 65% / 60% | 65% / 59% |
| Pin↓ | 71% / 63% | 67% / 62% | 66% / 60% |
| Pin↑ | 67% / 64% | 66% / 62% | 64% / 61% |
| EM high↓ | 65% / 63% | 63% / 62% | 60% / 59% |
| EM high↑ | 65% / 64% | 63% / 62% | 64% / 61% |
| EM low↓ | 63% / 62% | 62% / 60% | 61% / 59% |
| EM low↑ | 67% / 62% | 62% / 60% | 55% / 59% |
| VWAP↓ | 63% / 65% | 61% / 64% | 59% / 63% |
| VWAP↑ | 64% / 64% | 61% / 62% | 60% / 62% |
| Prior close↓ | 57% / 63% | 56% / 62% | 54% / 61% |
| Prior close↑ | 62% / 63% | 61% / 62% | 60% / 61% |
| Day high↑ | 65% / 63% | 63% / 62% | 62% / 61% |
| Day low↓ | 62% / 63% | 61% / 61% | 60% / 60% |
held / random lines. A level whose lead over random survives a tighter and a looser barrier is not an artefact of one threshold.
Quarterly stability · held % by quarter
| Level | ’22Q2 | Q3 | Q4 | ’23Q1 | Q2 | Q3 | Q4 | ’24Q1 | Q2 | Q3 | Q4 | ’25Q1 | Q2 | Q3 | Q4 | ’26Q1 | Q2 | Q3 | Q4 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Call wall #1↑ | 71 | 64 | 51 | 68 | 67 | 70 | 71 | 58 | 66 | 63 | 78 | 76 | 62 | 65 | 69 | 62 | 73 | 65 | · |
| Call wall #2↑ | 58 | 63 | 53 | 66 | 74 | 65 | 64 | 73 | 51 | 46 | 54 | 57 | 53 | 69 | 64 | 68 | 70 | 69 | · |
| Call wall #3↑ | 42 | 50 | 71 | 63 | 57 | 62 | 65 | 70 | 81 | 67 | 63 | 56 | 58 | 79 | 74 | 68 | 62 | 44 | · |
| Call walls (any)↑ | 62 | 61 | 55 | 66 | 67 | 67 | 68 | 65 | 65 | 59 | 68 | 66 | 58 | 69 | 68 | 66 | 70 | 63 | · |
| Put wall #1↓ | 55 | 60 | 65 | 66 | 71 | 58 | 50 | 60 | 63 | 57 | 56 | 72 | 58 | 69 | 60 | 61 | 58 | 64 | · |
| Put wall #2↓ | 54 | 57 | 54 | 73 | 62 | 52 | 58 | 51 | 55 | 59 | 66 | 62 | 51 | 64 | 57 | 68 | 58 | 60 | · |
| Put wall #3↓ | 70 | 66 | 46 | 57 | 67 | 72 | 83 | 68 | 70 | 51 | 62 | 59 | 61 | 56 | 57 | 68 | 57 | 63 | · |
| Put walls (any)↓ | 58 | 60 | 58 | 67 | 67 | 58 | 61 | 58 | 61 | 57 | 60 | 65 | 57 | 64 | 58 | 65 | 58 | 63 | · |
| Gamma flip↓ | 46 | 60 | 59 | 57 | 67 | 67 | 70 | 80 | 62 | 60 | 59 | 65 | 64 | 60 | 61 | 59 | 63 | 65 | · |
| Gamma flip↑ | 39 | 67 | 61 | 56 | 66 | 58 | 61 | 75 | 57 | 68 | 66 | 69 | 64 | 82 | 67 | 64 | 69 | 68 | · |
| Pin↓ | · | 64 | · | · | 75 | 73 | · | 83 | · | 63 | · | 64 | 73 | · | · | · | · | 46 | · |
| Pin↑ | 61 | 65 | 51 | 65 | 69 | 68 | 67 | 68 | 67 | 63 | 77 | 65 | 60 | 70 | 65 | 66 | 73 | 64 | · |
| EM high↓ | · | · | · | · | · | · | · | 71 | · | 61 | · | · | · | · | · | · | · | · | · |
| EM high↑ | · | 63 | 55 | 53 | 33 | 60 | 55 | 52 | 57 | 75 | 64 | · | 62 | 82 | 82 | 71 | 61 | 73 | · |
| EM low↓ | 53 | 72 | 63 | 67 | 50 | 63 | 58 | 61 | 61 | 67 | 66 | 60 | 59 | 68 | 48 | 63 | 64 | 71 | · |
| EM low↑ | · | 60 | · | 89 | · | 55 | · | · | 58 | 67 | 36 | 74 | 46 | · | 62 | 50 | 77 | 65 | · |
| VWAP↓ | 54 | 61 | 52 | 53 | 62 | 61 | 56 | 63 | 72 | 58 | 71 | 62 | 57 | 66 | 56 | 67 | 61 | 63 | · |
| VWAP↑ | 70 | 64 | 64 | 56 | 61 | 68 | 58 | 66 | 56 | 56 | 58 | 54 | 45 | 61 | 67 | 67 | 66 | 63 | · |
| Prior close↓ | 35 | 42 | 56 | 55 | 68 | 56 | 52 | 66 | 50 | 52 | 56 | 52 | 53 | 50 | 63 | 71 | 64 | 51 | · |
| Prior close↑ | 67 | 63 | 59 | 64 | 44 | 60 | 54 | 91 | 58 | 62 | 57 | 56 | 48 | 70 | 60 | 63 | 73 | 53 | · |
| Day high↑ | 51 | 51 | 61 | 59 | 77 | 74 | 68 | 67 | 65 | 63 | 75 | 59 | 56 | 64 | 60 | 61 | 62 | 71 | · |
| Day low↓ | 64 | 60 | 54 | 67 | 63 | 55 | 56 | 61 | 62 | 57 | 68 | 59 | 58 | 65 | 62 | 65 | 55 | 58 | · |
Held % per calendar quarter (· = fewer than 10 decided; levels too thin for any quarter are left out). Tint vs the level's whole-window random-line rate:belowabove · ±15 ppMuted levels (≈) are left untinted.
Sample & provenance
- 1,090 sessions, May 16, 2022 → Oct 2, 2026. Every session in the window has a same-day SPXW expiry.
- Excluded: half-day sessions (9 days) · too many index bars missing (1 day).
- Provenance: 1,090 days rebuilt from historical option data (recon-1.0), 0 recorded by the live worker.
- Steps: 1,090 days at 1-min, 0 at 5-min. Typical EM over the window: 44.4 pts.
Diagnostics
- Every board level (a touch where levels coincide counts for each): held 62.1% vs 61.4% for random lines; vs random +0.7 pp (90% CI −0.3 pp…+1.7 pp).
- Shuffle test (other days' levels on each day's candles, 1 / 2 / 3 / 5 / 8 days apart): vs random +0.9 pp (90% CI +0.3 pp…+1.4 pp; 95% +0.2 pp…+1.5 pp), passes the publish gate (fails only beyond ±2.0 pp with the 95% CI excluding 0).
- Muted per level: other days' levels on the same candles also differed from random lines (90% CI excluding 0), in either direction, so random lines aren't a fair yardstick and there are no glyphs. Other days' vs random, then the level itself: Call wall #1 ↑ +2.1 pp (level +3.8 pp) · Call wall #2 ↑ +1.9 pp (level +0.8 pp) · Call walls (any) ↑ +1.9 pp (level +2.5 pp) · Put wall #2 ↓ +1.9 pp (level −0.8 pp) · Put walls (any) ↓ +1.3 pp (level +1.1 pp) · Gamma flip ↓ −1.9 pp (level +2.0 pp) · Pin ↑ +1.9 pp (level +3.7 pp) · EM low ↓ +2.7 pp (level +2.5 pp) · Day high ↑ +1.5 pp (level +1.7 pp).
- Levels that moved onto price (not tests): flip 1,348 (vs 1,678 times price came to it) · pin 4,801 (vs 1,144 times price came to it) · VWAP 2 (vs 2,829 times price came to it) · day high 10 (vs 1,852 times price came to it) · day low 14 (vs 2,178 times price came to it).
- Snapshot lag 0 / 1 / 2 bars: held 62.0% / 62.1% / 62.0% · random 61.1% / 61.4% / 61.4%.
- EM parity vs live: 70 live days, mean abs error 1.4%.
- Events: grid 28,087 · real 19,511 · fresh 176 · shadow 2,520 · migrated hod 10 · migrated lod 14 · migrated pin 4,801 · migrated flip 1,348 · migrated grid 0 · migrated real 6,175 · migrated vwap 2 · migrated shadow 23 · placebo discarded 33,316
Caveats
- Positioning is modeled from open interest, not known dealer positions.
- OI is the 6:30 AM print, so intraday 0DTE opening flow isn't in it.
- History is rebuilt at 1-minute steps, while the live board updates every 3s.
- Tests on the same day are correlated, so the intervals are day-clustered.
- With this many cells some will look strong by chance; significance is FDR-controlled.
- Where other days' levels on the same candles also differ from random lines (the shuffle control), the level is muted: random lines aren't a fair yardstick there.
- Levels often coincide, and a touch at coincident levels counts for each, so level-sides aren't independent tests.
- The EM uses calendar time, so after weekends and holidays it runs wide.
- Market structure drifts; see the quarterly chart.
- No costs or slippage are modeled.
Version
method lrs-1.1 · records recon-1.0 · generated Oct 2, 2026, 4:17 PM ET · seed 1729