Short Squeeze Candidates This Week
Squeeze-shaped mechanics: crowded shorts among liquid names, with a rising priceranking ·
2026-08-24 · 12×4
The screened names ranked by short interest against shares outstanding (not float)table ·
2026-08-24 · 10×5
Every past screened name, by what it did over the next 30 daysranking ·
2026-08-24 · 6×3
From the whole settlement file down to the screened list, one rule at a timeranking ·
2026-08-24 · 4×2
Every input behind this screen, and how many days old it isseries ·
2026-08-24 · 3×3
Liquid names at 5+ and 10+ days to cover, settlement by settlementseries ·
2026-08-24 · 12×4
What Is FINRA Short Interest? Days to Cover
TSLA short interest vs. average daily volume, bi-monthly (last 2 years)series ·
2026-08-22 · 47×3
Short interest reporting dates: recent settlements, weekday, coverage and publication lagseries ·
2026-08-22 · 9×5
How liquid US stocks distribute by short interest as a percent of shares outstandingranking ·
2026-08-22 · 5×4
The latest FINRA short interest file: one snapshot of the whole marketscalar ·
2026-08-22 · 1×422,339
GameStop, Nov 2020 – Mar 2021: short interest, days to cover and the closing price at each settlementseries ·
2026-08-22 · 10×4
Days to cover across all liquid US tickers, latest settlement (min 1M shares/day)scalar ·
2026-08-22 · 1×62,632
Six household names at the latest settlement: shares short, percent of shares outstanding, days to covertable ·
2026-08-22 · 6×6
Short Interest vs Short Volume: The Difference
Data points per dataset: AAPL, last 60 daysranking ·
2026-08-22 · 2×2
Highest days to cover, latest settlement date (min 1M shares/day traded)ranking ·
2026-08-22 · 10×3
AAPL daily short volume ratio (last ~60 days)series ·
2026-08-22 · 33×2
AAPL short interest vs. average daily volume, bi-monthly (last 2 years)series ·
2026-08-22 · 47×3
AAPL days to cover at each settlement date (last 2 years)series ·
2026-08-22 · 47×3
Highest Days to Cover Stocks Right Now
The receipts: file size, liquid names, thin names, and the liquid medianscalar ·
2026-08-22 · 1×522,339
Highest days to cover among liquid names: 5M average-volume floorranking ·
2026-08-22 · 12×4
Today's liquid top-3 days-to-cover names, traced back eight settlementsseries ·
2026-08-22 · 8×4
Highest days to cover, latest settlement: 500k average-volume floortable ·
2026-08-22 · 12×5
Days to cover by liquidity band: median stays low, the extremes live in thin namesranking ·
2026-08-22 · 5×4
What Is Days to Cover? Short Interest Ratio
Every settlement since March 2026: and how long it took to arriveseries ·
2026-07-26 · 8×6
GME days to cover, settlement by settlement: June 2020 through the January 29, 2021 squeeze printseries ·
2026-07-26 · 15×5
Days to cover, four familiar names: settlement of June 30, 2026ranking ·
2026-07-26 · 4×4
Days to cover across liquid names (5M+ shares/day ADV): settlement of June 30, 2026ranking ·
2026-07-26 · 5×2
Two crowding measures, six names: short interest as % of shares outstanding vs. days to covertable ·
2026-07-26 · 6×5
Highest days to cover among liquid names (5M+ shares/day ADV): settlement of June 30, 2026ranking ·
2026-07-26 · 12×4
Days to cover by trading-volume tier: every name in the June 30, 2026 settlementtable ·
2026-07-26 · 4×7
Squeeze-shaped mechanics: crowded shorts among liquid names, with a rising price
Squeeze-shaped mechanics: crowded shorts among liquid names, with a rising price
| ticker | days_to_cover | shares_short_m | return_5d_pct |
|---|---|---|---|
| IBRX | 14.5 | 129 | 5 |
| GERN | 9.9 | 76.8 | 1.6 |
| ABCL | 9.7 | 48.3 | 16 |
| XBI | 9.5 | 78.8 | 6.4 |
| RXRX | 9.3 | 180.8 | 6.1 |
| ALLO | 9.2 | 60.8 | 8.5 |
| PTON | 8.9 | 61.1 | 0.9 |
| CLVT | 8.8 | 52.8 | 9.4 |
| NUVB | 8.7 | 53.4 | 12.9 |
| FLO | 8.6 | 44 | 4 |
| WEN | 8.5 | 58.8 | 3.1 |
| CPB | 8.4 | 48.2 | 5.3 |
the exact SQL behind every number
WITH latest AS (
SELECT max(settlement_date) AS d FROM global_markets.stocks_short_interest
),
sessions AS (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= now() - INTERVAL 20 DAY
AND toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York')) >= 570
AND toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York')) < 960
GROUP BY session
HAVING count() >= 380
ORDER BY session DESC
LIMIT 6
),
crowded AS (
SELECT ticker, days_to_cover, short_interest
FROM global_markets.stocks_short_interest
WHERE settlement_date = (SELECT d FROM latest)
AND avg_daily_volume >= 5000000
AND days_to_cover >= 5
AND ticker NOT IN ('SPCX')
AND ticker NOT IN ('KORU','SOXL','SOXS','TQQQ','SQQQ','NVDL','NVDS','NVD','TSLL','TSLQ','TSLZ','SPXL','SPXS','UPRO','SPXU','LABU','LABD','FAS','FAZ','TNA','TZA','YINN','YANG','UDOW','SDOW','BOIL','KOLD','UCO','SCO','USD','SSO','SDS','QLD','QID','ERX','ERY','DRN','DRV','CURE','SOXY','MUU','SNXX','UVXY','SVXY','UVIX','SVIX','BULZ','WEBL','WEBS','DPST','DRIP','GUSH','AGQ','ZSL','BITX','ETHU','MSTX','MSTU','CONL','DUST','JNUG','JDST','NUGT')
AND ticker NOT IN (SELECT ticker FROM global_markets.stocks_splits
WHERE execution_date BETWEEN today() - 60 AND today())
),
tape AS (
SELECT ticker,
toDate(toTimeZone(window_start, 'America/New_York')) AS session,
argMax(close, window_start) AS rth_close
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN (SELECT ticker FROM crowded)
AND toDate(toTimeZone(window_start, 'America/New_York')) IN (SELECT session FROM sessions)
AND toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York')) >= 570
AND toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York')) < 960
GROUP BY ticker, session
),
moves AS (
SELECT ticker,
round((argMax(rth_close, session) / argMin(rth_close, session) - 1) * 100, 1) AS return_5d_pct
FROM tape
GROUP BY ticker
HAVING count() = 6 AND return_5d_pct > 0
)
SELECT c.ticker AS ticker,
round(c.days_to_cover, 1) AS days_to_cover,
round(c.short_interest / 1e6, 1) AS shares_short_m,
m.return_5d_pct AS return_5d_pct
FROM crowded c
INNER JOIN moves m ON m.ticker = c.ticker
ORDER BY c.days_to_cover DESC, c.ticker
LIMIT 12
More from this analysisShort Squeeze Candidates This Week
Every past screened name, by what it did over the next 30 days
ranking 6×3
→
From the whole settlement file down to the screened list, one rule at a time
ranking 4×2
→
Liquid names at 5+ and 10+ days to cover, settlement by settlement
series 12×4
→
The screened names ranked by short interest against shares outstanding (not float)
table 10×5
→
See all 2,170 queries →