CGK·router

0DTE Scanner — what's in play

loading…auto-refresh 120s · paused when market closed
Glance tiers (one shared definition with the Discord alert): IN PLAY = score ≥ 70 + flow/price aligned + < 50% of the expected move used (bordered + glow, green bull / red bear); setup = same shape at half the heat (score ≥ 35, thin border); move spent = ≥ 80% of the expected move already used — card dims even if it ranks #1, because hottest and best-entry are different axes. Score = conviction (one-sidedness + net-$ heft) + premium vs own time-of-day norm + range vs own time-of-day norm, weighted 30/30/25 and renormalised to 100. Gamma is shown as context and is NOT scored. A ticker with no options-flow data is left unscored (—) rather than ranked on price alone. Exp move = fastest-expiry ATM straddle × 0.8; the ATM pick shows its premium as % of that move (lower = cheaper convexity). Tier thresholds are starting guesses graded forward by the signal log. v1.8: the struct row is position vs prev-day range (PD), prev-day value area (VA), the 15-min opening range (OR) and 30-min initial balance (IB) — hover for numeric levels incl. premarket range and the heaviest dark-pool price. These are price-derived and logged with every event so setups can be graded conditional on them. The gex lv row (HVL / C1 / P1, Tanuki naming) is charter-A1 context for your eyes only — logged, displayed, never in a trigger. Baselines self-build and are written only during RTH. Live UW poll, 120s cache; rebuilds pause when the market is closed.