STRASMORE/EXPLORE 2,358 QUERIES

avg_volume_by_ticker

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-18, from free-stock-data-api-in-python.

as of series 4×4read in context →
avg_volume_by_ticker — 4 rows by 4 columns, computed from US exchange, SIP and OPRA data.
tickeravg_20d_millionsfirst_sessionlast_session
NVDA129.82026-08-202026-09-17
AAPL41.22026-08-202026-09-17
SPY39.82026-08-202026-09-17
MSFT20.12026-08-202026-09-17
Rows × columns
4 × 4
Period covered
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 avg_volume_by_ticker, derived from the stored result.
ColumnTypeRangeNotes
ticker text 4 distinct values (AAPL, MSFT, NVDA…)
avg_20d_millions number 20.1 to 129.8
first_session date 2026-08-20
last_session date 2026-09-17

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
    ticker,
    round(avg(vol) / 1e6, 1)   AS avg_20d_millions,
    toString(min(d))           AS first_session,
    toString(max(d))           AS last_session
FROM
(
    SELECT
        ticker,
        d,
        vol,
        row_number() OVER (PARTITION BY ticker ORDER BY d DESC) AS rn
    FROM
    (
        SELECT
            ticker,
            date                    AS d,
            toFloat64(max(volume))  AS vol
        FROM global_markets.stocks_daily_aggs
        WHERE ticker IN ('SPY', 'NVDA', 'AAPL', 'MSFT')
          AND date >= today() - 45
          AND date <  today()
        GROUP BY ticker, date
    )
)
WHERE rn <= 20
GROUP BY ticker
HAVING count() = 20
ORDER BY avg_20d_millions DESC

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 analysisfree-stock-data-api-in-python
aapl_volume_trace series 34×3 One SPY $600 LEAPS call's price over two years (expired Jan 16 2026) series 470×2 monthly series 241×4 2s10s spread, monthly average: last 20 years series 240×2 rolling_7y series 193×5 Growth of $100 in the 1x SOXX vs the 3x SOXL, Jan 2 to Jul 13 2026 series 131×3 See all 2,358 queries →