apps2 · divergence

all-stocks ranked divergence screener — every stock in the collection, ranked most-bearish / most-bullish by live price↔RSI (momentum) & price↔OBV (volume) divergences at 1h · 4h · 8h · 1d × short/med/long swings — plus the multi-scale cross-asset panel below hubsectorsdecoupmoverslandscapecohortsfxratiosignaldivergence loading… screener matrix: loading…
All-stocks divergence screener — ranked Every stock in the apps2/stocks screener collection, scanned server-side (precomputed matrix, ~3×/day) for LIVE price↔RSI and price↔OBV divergences at 1h · 4h · 8h · 1d × short 5 / med 13 / long 33 bar swing lookbacks — the exact same engine the chart below draws (divergences with maxSpan = lookback×7, minSpan = lookback; a read expires after lookback×7 bars). Pick a Direction + Oscillator + anchor cell (timeframe × lookback): rows with a matching divergence in the anchor cell rank first, sub-sorted by how many of that oscillator's 9 cells agree (the Σ column), then anchor strength×freshness, then freshest, then ticker. The anchor column is pulled to the FRONT of its oscillator block and outlined. Click any column header to re-anchor; click Σ▼/Σ▲ to flip direction; click a row to draw its price + oscillator chart with the exact swing pairs. Grey hatch = honest gap (no hourly file → intraday cells N/A; no usable volume → OBV block N/A) — never faked.
loading…
Reading a cell: SIZE = strength weak → strong (bigger price↔osc gap) FADE = age fresh → older TYPE: bull · hidden-bull · hidden-bear · bear blank = none · hatch = N/A (no volume / no hourly)
Market vol regime — VIXloading…
loading all-stocks divergence matrix…
Retail P/C ref VIX regime band
Multi-scale divergence — price↔RSI / price↔OBV across 1h · 4h · 1d A divergence is when price and an oscillator disagree — a computed read you can't get by eyeballing the line, so it's the one class of marker we label (R-UI-23). Pick the Oscillator: RSI (momentum — price grinds to a new high while momentum quietly rolls over = a top warning; a new low while momentum turns up = a bottom warning; works on ANY price) or OBV (On-Balance-Volume — running cumulative volume: +volume on up-closes, −volume on down-closes; a price↔OBV divergence means the VOLUME isn't backing the move — distribution at a high, accumulation at a low). OBV needs real traded volume, so only equities & futures get it directly, and SPX/NAS100 via a volume proxy (SPY/QQQ or ES/NQ) — other FX / cash & vol indices / rates show an honest N/A — no volume (never faked). Each instrument gets 9 cells = 3 timeframes (1h / 4h / 1d) × 3 swing lookbacks (short 5 / normal 13 / wide 34). Cell color = type (bear ▼, bull ▲, hidden-bear ▿, hidden-bull ▵); size = strength; it fades as it ages; blank = none; grey hatch = no intraday history. Confluence nets bull vs bear across all 9 — a divergence confirmed across many scales is far higher-conviction than one lone cell. SPX · NAS100 are pinned on top as the always-present benchmarks. Pick a view mode for a different lens (each explained on-screen); click any row to load it in the price+oscillator chart, which draws the exact swing pair the read is computed from and joins the page-wide dateline.
Retail P/C ref
loading…
loading divergence grid…
RSI — every instrumentRSI (momentum) is computed for every instrument — it needs only price.
OBV — equities & futuresOBV (On-Balance-Volume) needs real traded volume, so it is available directly for the equities & futures (NVDA · TSLA · QQQ · IWM · SK Hynix · 10Y ZN · 30Y ZB · gold · oil).
SPX & NAS100 — volume proxySPX & NAS100 are cash indices with no native volume, so their OBV is built from a volume proxy (SPX ← SPY or ES=F, NAS100 ← QQQ or NQ=F — pick with the SPX/NAS OBV proxy control).
No volume, no proxy → N/AThe remaining vol indices (VIX · VVIX · SKEW), FX (USDJPY · USDCNY · USDCHF · USDKRW · DXY) and Asian cash indices (HSI · N225) have no traded volume and no proxy, so their OBV cells read N/A — no volume (we show the honest gap rather than fabricate a signal). RSI still works on all of them.
What this isapps2/divergence — the all-stocks ranked divergence screener (headline) + the dedicated home of the multi-scale cross-asset divergence panel (also embedded in decoup · signal · movers · landscape · fx · ratio · cohorts).
Screener collection & freshnessThe screener universe is the apps2/stocks screener collection (universe.json: name · sector · industry · region · themes per ticker). The divergence matrix is precomputed server-side ~3×/day by the Node builder from the recorded daily + hourly candle files — the header shows the matrix build time and the universe fetch time, and the row-count line always states exactly how many rows are shown.
Screener honest gapsNo hourly candle file for a ticker → its intraday cells (1h · 4h · 8h) render a grey hatch — the 1d column still works. No usable traded volume → the whole OBV block reads N/A (On-Balance-Volume can't be computed). Gaps are shown, never faked; the 8h column is honestly ~1–2 bars per 6.5h US session (epoch-aligned 8h buckets of 1h bars, between 4h and 1d).
Hidden divergences (▿/▵)Regular divergences warn of REVERSAL: price makes a new extreme the oscillator refuses to confirm. HIDDEN divergences signal trend CONTINUATION: hidden-bear ▿ = price lower high while the oscillator makes a higher high (downtrend intact); hidden-bull ▵ = price higher low while the oscillator makes a lower low (uptrend intact — dips being bought). Both count toward their direction in the ranking.
Why matrix + chart always agreeCell and chart run the SAME engine with the SAME parameters: oscillator = Wilder RSI(14) or OBV, divergences(close, osc, {look, maxSpan: look×7, minSpan: look}), 4h/8h bucketed from the same 1h file (close = last-in-bucket, volume summed, empty-volume bucket = null). The chart draws the exact swing pair each cell reports — a cell is never a claim you can't verify below.
Retail (volume → OBV)NVDA · TSLA · QQQ · IWM
Rates / Commodities (volume → OBV)10Y ZN · 30Y ZB · gold · oil
Custom (volume → OBV)SK Hynix
Volatility / FX / Indices (no volume → RSI only)VIX · VVIX · SKEW · USDJPY · USDCNY · USDCHF · USDKRW · DXY · HSI · N225
BenchmarksSPX · NAS100 (pinned top; OBV via SPY/QQQ or ES/NQ volume proxy).
SourceYahoo v8 (price + volume) & FRED via one decoup/data.php fetch (a daily span + a 1-year 1h intraday fetch, both with syms= sanitized keys). On-access / cache-first — no timers.