STRASMORE/EXPLORE 2,170 QUERIES

SPY share volume around the turn of the year, averaged since 2011

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-08-11, from The January Effect: Does It Still Work?.

as of ranking 19×3read in context →
SPY share volume around the turn of the year, averaged since 2011 — 19 rows by 3 columns, computed from US exchange, SIP and OPRA data.
labelavg_volume_millionsrelative_activity
Dec 21126.21.24
Dec 2285.80.85
Dec 2371.50.7
Dec 2450.80.5
Dec 2673.50.72
Dec 2780.60.79
Dec 2883.20.82
Dec 2980.10.79
Dec 3067.20.66
Dec 31105.31.04
Jan 02107.71.06
Jan 03104.41.03
Jan 04114.51.13
Jan 05105.21.04
Jan 061071.05
Jan 07102.41.01
Jan 0896.60.95
Jan 0982.60.81
Jan 10900.89
Rows × columns
19 × 3
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 SPY share volume around the turn of the year, averaged since 2011, derived from the stored result.
ColumnTypeRangeNotes
label text 19 distinct values (Dec 21, Dec 22, Dec 23…)
avg_volume_millions number 50.8 to 126.2 count
relative_activity number 0.5 to 1.24

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
    concat(
        if(toMonth(date) = 12, 'Dec ', 'Jan '),
        if(toDayOfMonth(date) < 10, concat('0', toString(toDayOfMonth(date))), toString(toDayOfMonth(date)))
    )                                      AS label,
    round(avg(toFloat64(volume)) / 1e6, 1) AS avg_volume_millions,
    round(avg(toFloat64(volume)) / (
        SELECT avg(toFloat64(volume))
        FROM global_markets.stocks_daily_aggs
        WHERE ticker = 'SPY'
          AND date >= '2011-01-01'
          AND date <  '2026-08-01'
    ), 2)                                  AS relative_activity
FROM global_markets.stocks_daily_aggs
WHERE ticker = 'SPY'
  AND date >= '2011-01-01'
  AND date <  '2026-08-01'
  AND ((toMonth(date) = 12 AND toDayOfMonth(date) >= 21)
    OR (toMonth(date) = 1  AND toDayOfMonth(date) <= 10))
GROUP BY toMonth(date), toDayOfMonth(date)
ORDER BY if(toMonth(date) = 12, 0, 1), toDayOfMonth(date)

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 analysisThe January Effect: Does It Still Work?
Every January on the daily tape, in trading sessions ranking 23×2 Distinct symbols printing at least one session, by year ranking 20×2 The tape by average dollar volume, June 2026 ranking 5×3 Growth of one dollar: holding all year vs holding only November through April ranking 21×3 S&P 500 tracker: May to October vs November to April, season by season ranking 21×3 SPY distributions by ex-dividend month: inside the May to October window vs outside it ranking 19×3 See all 2,170 queries →