STRASMORE/EXPLORE 2,948 QUERIES

form4_timing

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-10-02, from china-dragon-tiger-list.

as of series 14×4read in context →
form4_timing — 14 rows by 4 columns, computed from US exchange, SIP and OPRA data.
monthmonth_prettywithin_two_days_pctfiling_count
2025-08-01Aug 202560.697812
2025-09-01Sep 202565.192544
2025-10-01Oct 202579.984840
2025-11-01Nov 202560.588842
2025-12-01Dec 202564.9102321
2026-01-01Jan 202649.797473
2026-02-01Feb 202662167529
2026-03-01Mar 202666.8182976
2026-04-01Apr 202675.697026
2026-05-01May 202660.1135270
2026-06-01Jun 202662.9147738
2026-07-01Jul 202670.527508
2026-08-01Aug 202662.436022
2026-09-01Sep 202667.831001
Rows × columns
14 × 4
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 form4_timing, derived from the stored result.
ColumnTypeRangeNotes
month date 2025-08-01 to 2026-09-01
month_pretty text 14 distinct values (Apr 2026, Aug 2025, Aug 2026…)
within_two_days_pct number 49.7 to 79.9 percent
filing_count number 27,508 to 182,976 count

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.

Run it yourself

This is the exact query behind the result above. Change a ticker, a date or a column and run it against the warehouse — no account, no key. The no-signup tier is smaller than the one this page was computed on; a query that reaches past it comes back saying which plan runs it.

SELECT
    toString(toStartOfMonth(filing_date))                AS month,
    formatDateTime(toStartOfMonth(filing_date), '%b %Y') AS month_pretty,
    round(100 * countIf(lag_days <= 2) / count(), 1)     AS within_two_days_pct,
    count()                                              AS filing_count
FROM
(
    SELECT
        filing_date,
        dateDiff('day', transaction_date, filing_date) AS lag_days
    FROM global_markets.stocks_form4
    WHERE filing_date >= toStartOfMonth(today() - 400)
      AND filing_date <  toStartOfMonth(today())
      AND dateDiff('day', transaction_date, filing_date) BETWEEN 0 AND 180
)
GROUP BY month, month_pretty
ORDER BY month
⌘/Ctrl + Enter

Work with this data in your AI assistant

Opens ready to query, with this page's data. Free, no account.

More from this analysischina-dragon-tiger-list
threshold_tail ranking 6×3 → short_volume_mix ranking 6×3 → The 2s10s spread by month, full history series 604×5 → One SPY $600 LEAPS call's price over two years (expired Jan 16 2026) series 470×2 → The 5s30s spread month by month, with both legs series 241×4 → 5s30s and 2s10s, monthly averages over 20 years series 241×3 → See all 2,948 queries →