STRASMORE/EXPLORE 2,170 QUERIES

Symbols that printed a final daily bar, by year

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-22, from Survivorship Bias in Stock Data, Explained.

as of ranking 10×3read in context →
Symbols that printed a final daily bar, by year — 10 rows by 3 columns, computed from US exchange, SIP and OPRA data.
yeargone_dark_countavg_bars_on_tape
2016847270
2017838428
2018822559
2019908656
2020929781
20211311705
20221471675
20231864713
20241484854
202512811001
Rows × columns
10 × 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 Symbols that printed a final daily bar, by year, derived from the stored result.
ColumnTypeRangeNotes
year text 10 distinct values (2016, 2017, 2018…)
gone_dark_count number 822 to 1,864 count
avg_bars_on_tape number 270 to 1,001

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(toYear(last_bar))  AS year,
    count()                     AS gone_dark_count,
    round(avg(bars_on_tape))    AS avg_bars_on_tape
FROM
(
    SELECT
        ticker,
        max(date) AS last_bar,
        count()   AS bars_on_tape
    FROM global_markets.stocks_daily_aggs
    WHERE date >= '2015-01-01'
      AND ticker NOT IN ('SPCX')
    GROUP BY ticker
    HAVING max(date) >= toDate('2016-01-01')
       AND max(date) <  toDate('2026-01-01')
)
GROUP BY year
ORDER BY year

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 analysisSurvivorship Bias in Stock Data, Explained
The January 2019 universe, grouped by what happened to each name ranking 9×4 Symbols relisted under a new issuer after a long silence ranking 5×4 Survivors-only average vs whole-cohort average, by starting year table 7×6 Trading sessions per year under FB and META ranking 15×3 New listings landing on a symbol that already had history ranking 11×3 Split multiples for large US stock splits since 2020 ranking 10×3 See all 2,170 queries →