STRASMORE/EXPLORE 2,401 QUERIES

monthly_mix

Answered against 22 years of US equities and 12 years of US options data and published with the query that produced it. This result is stored as of 2026-09-19, from upcoming-reverse-stock-splits.

as of series 12×5read in context →
monthly_mix — 12 rows by 5 columns, computed from US exchange, SIP and OPRA data.
monthmonth_labelreverse_splitsforward_splitsreverse_share_pct
2025-09-01Sep 2025955563.3
2025-10-01Oct 2025883273.3
2025-11-01Nov 2025693069.7
2025-12-01Dec 20251294772.9
2026-01-01Jan 2026692176.7
2026-02-01Feb 2026892478.8
2026-03-01Mar 20261355670.7
2026-04-01Apr 2026973275.2
2026-05-01May 20261024071.8
2026-06-01Jun 20261055864.4
2026-07-01Jul 20261194572.6
2026-08-01Aug 20261042083.9
Rows × columns
12 × 5
Period covered
to
Computed
Completeness
No missing values
Source
US exchange, SIP and OPRA market data
Licence
Strasmore terms · free, no signup
Formats
JSON · CSV · the SQL below

What each column holds

Column definitions for monthly_mix, derived from the stored result.
ColumnTypeRangeNotes
month date 2025-09-01 to 2026-08-01
month_label text 12 distinct values (Apr 2026, Aug 2026, Dec 2025…)
reverse_splits number 69 to 135
forward_splits number 20 to 58
reverse_share_pct number 63.3 to 83.9 percent

Computed from Strasmore's warehouse of US exchange, SIP and OPRA market data. Equity prices are delayed; options greeks and implied volatility are end-of-day. This result is stored, not recomputed on load — it is exactly the numbers that were returned on , and the query below is what returned them.

the exact SQL behind every number
SELECT
    toString(month_start)                                         AS month,
    formatDateTime(month_start, '%b %Y')                          AS month_label,
    countIf(from_shares > to_shares)                              AS reverse_splits,
    countIf(to_shares > from_shares)                              AS forward_splits,
    round(100.0 * countIf(from_shares > to_shares) / count(), 1)  AS reverse_share_pct
FROM
(
    SELECT
        toStartOfMonth(execution_date)  AS month_start,
        ticker,
        execution_date,
        max(toFloat64(split_from))      AS from_shares,
        max(toFloat64(split_to))        AS to_shares
    FROM global_markets.stocks_splits
    WHERE execution_date >= addMonths(toStartOfMonth(today()), -12)
      AND execution_date <  toStartOfMonth(today())
      AND split_from != split_to
      AND ticker NOT IN ('SPCX')
    GROUP BY month_start, ticker, execution_date
)
GROUP BY month_start
ORDER BY month_start

Run your own version of this

The same 22 years of US equities and 12 years of options data are queryable in SQL or plain English. A free account runs 100 queries a day and takes no card.

More from this analysisupcoming-reverse-stock-splits
upcoming_reverse table 19×6 yearly_mix ranking 8×4 price_mix table 3×5 spread_monthly series 604×5 One SPY $600 LEAPS call's price over two years (expired Jan 16 2026) series 470×2 3m10y and 2s10s spreads, monthly averages over twenty years series 241×4 See all 2,401 queries →