STRASMORE/EXPLORE 2,170 QUERIES

Every weekday month-end since 2020: filings indexed on the month's last calendar day

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-07-26, from SEC EDGAR Index Gap: the Missing Month-Ends.

as of table 55×2read in context →
Every weekday month-end since 2020: filings indexed on the month's last calendar day — 55 rows by 2 columns, computed from US exchange, SIP and OPRA data.
month_endfilings
2020-01-313290
2020-03-313710
2020-04-304605
2020-06-304010
2020-07-314266
2020-08-312880
2020-09-302747
2020-11-302574
2020-12-312286
2021-03-314904
2021-04-306900
2021-05-310
2021-06-303034
2021-08-312787
2021-09-302682
2021-11-302407
2021-12-311
2022-01-314099
2022-02-287272
2022-03-315273
2022-05-314243
2022-06-302621
2022-08-312778
2022-09-302817
2022-10-313245
2022-11-302308
2023-01-313876
2023-02-287825
2023-03-315691
2023-05-313380
2023-06-303723
2023-07-313634
2023-08-313163
2023-10-313254
2023-11-302706
2024-01-313638
2024-02-296178
2024-04-304819
2024-05-313595
2024-07-313625
2024-09-303237
2024-10-313819
2024-12-312601
2025-01-313984
2025-02-287819
2025-03-315105
2025-04-30928
2025-06-303828
2025-07-313843
2025-09-303460
2025-10-313601
2025-12-312289
2026-03-3155
2026-04-3034
2026-06-3031
Rows × columns
55 × 2
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 Every weekday month-end since 2020: filings indexed on the month's last calendar day, derived from the stored result.
ColumnTypeRangeNotes
month_end date 2020-01-31 to 2026-06-30
filings number 0 to 7,825

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
WITH month_ends AS (
    SELECT arrayJoin(arrayMap(i -> toLastDayOfMonth(addMonths(toDate('2020-01-01'), i)), range(78))) AS me
),
daily AS (
    SELECT filing_date, uniqExact(accession_number) AS filings
    FROM global_markets.stocks_sec_edgar_index
    WHERE filing_date >= toDate('2020-01-01') AND filing_date <= toDate('2026-06-30')
    GROUP BY filing_date
)
SELECT toString(e.me) AS month_end, toUInt32(ifNull(d.filings, 0)) AS filings
FROM month_ends AS e
LEFT JOIN daily AS d ON d.filing_date = e.me
WHERE toDayOfWeek(e.me) <= 5
ORDER BY e.me

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 analysisSEC EDGAR Index Gap: the Missing Month-Ends
Every weekday month-end since 2020 with fewer than 1,000 filings: count, companies touched, and the neighbouring days' average table 6×6 Form types on the gap day (June 30, 2026) against the trading day before it ranking 14×3 When each day's rows actually landed in the warehouse, June 26 to the front edge ranking 10×3 Filing counts on the last weekday of each 2026 month, with prior-year weekday month-ends as controls ranking 8×3 Is June 30, 2026 missing anywhere else? The same day across five date-keyed datasets ranking 5×3 Status receipt: the March and April boundary days, their arrival times, and their counts as of this run scalar 1×6 See all 2,170 queries →