STRASMORE/EXPLORE 3,214 QUERIES

spy_close_trace

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-08, from dse-last-trade-price-vs-closing-price.

as of series 21×2read in context →
spy_close_trace — 21 rows by 2 columns, computed from US exchange, SIP and OPRA data.
session_dategap_bps
2026-09-011.58
2026-09-020.26
2026-09-030.91
2026-09-04-0.52
2026-09-080.26
2026-09-090.79
2026-09-100
2026-09-111.24
2026-09-141.31
2026-09-150.13
2026-09-16-0.6
2026-09-17-0.39
2026-09-180.66
2026-09-21-0.26
2026-09-220.26
2026-09-230.78
2026-09-24-0.91
2026-09-250.65
2026-09-280.78
2026-09-29-0.39
2026-09-302.23
Rows × columns
21 × 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 spy_close_trace, derived from the stored result.
ColumnTypeRangeNotes
session_date date 2026-09-01 to 2026-09-30
gap_bps number -0.91 to 2.23

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.

WITH
    last_prints AS
    (
        SELECT
            toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
            argMax(close, window_start)                          AS last_regular_print
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND window_start >= '2026-09-01 00:00:00'
          AND window_start <  '2026-10-01 00:00:00'
          AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
               + toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
          AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
               + toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
        GROUP BY session_date
    ),
    daily_bars AS
    (
        SELECT
            date       AS session_date,
            any(close) AS daily_bar_close
        FROM global_markets.stocks_daily_aggs
        WHERE ticker = 'SPY'
          AND date >= '2026-09-01'
          AND date <  '2026-10-01'
        GROUP BY session_date
    )
SELECT
    toString(l.session_date) AS session_date,
    round((toFloat64(d.daily_bar_close) / toFloat64(l.last_regular_print) - 1) * 10000, 2) AS gap_bps
FROM last_prints AS l
INNER JOIN daily_bars AS d
    ON l.session_date = d.session_date
WHERE toFloat64(l.last_regular_print) > 0
ORDER BY l.session_date
⌘/Ctrl + Enter

Work with this data in your AI assistant

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