STRASMORE/EXPLORE 3,256 QUERIES 22Y EQUITIES · 12Y OPTIONS

3,256 answered market questions

every one with its exact SQL, its result and the date it was computed · free, no signup

Short Squeeze Candidates This Week
Squeeze-shaped mechanics: crowded shorts among liquid names, with a rising priceranking · 2026-10-08 · 12×4Preview: 12 ranked values, largest first. The screened names ranked by short interest against shares outstanding (not float)table · 2026-10-08 · 10×5 Every past screened name, by what it did over the next 30 daysranking · 2026-10-08 · 6×3Preview: 6 ranked values, largest first. From the whole settlement file down to the screened list, one rule at a timeranking · 2026-10-08 · 4×2Preview: 4 ranked values, largest first. Every input behind this screen, and how many days old it isseries · 2026-10-08 · 3×3Preview: a 3-point series, ending lower. Liquid names at 5+ and 10+ days to cover, settlement by settlementseries · 2026-10-08 · 12×4Preview: a 12-point series, ending higher.
Stocks With the Highest Option Premiums
Premium as a percent of strike by tenor, against the square root of time estimateranking · 2026-10-04 · 5×3Preview: 5 ranked values, smallest first. The same calls ranked by premium as a percent of strikeranking · 2026-10-04 · 12×4Preview: 12 ranked values, largest first. Near the money 30 day calls ranked by dollar premiumtable · 2026-10-04 · 12×5 Percent of strike leaders at a 100 contract floor, with the flow behind themranking · 2026-10-04 · 12×3Preview: 12 ranked values, largest first.
Low P/E Stocks Near 52-Week Lows
Qualifying large caps as the distance band and the P/E ceiling widenranking · 2026-10-04 · 6×3Preview: 6 ranked values, smallest first. Large caps on a trailing P/E under 15, within 10% of a 52-week lowranking · 2026-10-04 · 15×3Preview: 15 ranked values, smallest first. KO month-end close against its trailing 12-month lowseries · 2026-10-04 · 15×4Preview: a 15-point series, ending higher.
Squeeze-shaped mechanics: crowded shorts among liquid names, with a rising price

Squeeze-shaped mechanics: crowded shorts among liquid names, with a rising price

most recentas of ranking 12×4read in context →
Squeeze-shaped mechanics: crowded shorts among liquid names, with a rising price — 12 rows by 4 columns, computed from US exchange, SIP and OPRA data.
tickerdays_to_covershares_short_mreturn_5d_pct
CNQ22.1182.92
IBRX15.9125.410
RXRX12.6178.715.4
URG11.457.50.9
WIT10.8103.63.4
QS10.597.81.4
CVNA10.262.20.4
RUN10.171.10.4
NVAX9.349.94.5
CVE959.60.8
UUUU8.955.72.4
KDP8.9790.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
$