daily_ranges
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-22, from do-mutual-funds-trade-in-the-primary-market.
| session_date | session_label | intraday_range_pct | open_to_close_pct |
|---|---|---|---|
| 2026-08-03 | Aug 3 | 1.31 | 1.1 |
| 2026-08-04 | Aug 4 | 1.69 | 1.41 |
| 2026-08-05 | Aug 5 | 0.95 | 0.78 |
| 2026-08-06 | Aug 6 | 0.57 | 0.21 |
| 2026-08-07 | Aug 7 | 0.56 | 0.29 |
| 2026-08-10 | Aug 10 | 0.44 | 0.06 |
| 2026-08-11 | Aug 11 | 0.7 | 0.51 |
| 2026-08-12 | Aug 12 | 0.47 | 0.29 |
| 2026-08-13 | Aug 13 | 0.68 | 0.39 |
| 2026-08-14 | Aug 14 | 0.43 | 0.28 |
| 2026-08-17 | Aug 17 | 0.55 | 0.45 |
| 2026-08-18 | Aug 18 | 0.34 | 0.16 |
| 2026-08-19 | Aug 19 | 0.57 | 0.17 |
| 2026-08-20 | Aug 20 | 0.8 | 0.44 |
| 2026-08-21 | Aug 21 | 0.48 | 0.04 |
| 2026-08-24 | Aug 24 | 0.41 | 0.17 |
| 2026-08-25 | Aug 25 | 0.49 | 0.03 |
| 2026-08-26 | Aug 26 | 0.45 | 0.18 |
| 2026-08-27 | Aug 27 | 0.68 | 0.34 |
| 2026-08-28 | Aug 28 | 0.91 | 0.31 |
| 2026-08-31 | Aug 31 | 0.43 | 0.04 |
- Rows × columns
- 21 × 4
- Period covered
- to
- Computed
- Completeness
- No missing values
- Source
- US exchange, SIP and OPRA market data
- Licence
- Strasmore terms · free, no signup
What each column holds
| Column | Type | Range | Notes |
|---|---|---|---|
session_date |
date | 2026-08-03 to 2026-08-31 | |
session_label |
text | 21 distinct values (Aug 10, Aug 11, Aug 12…) | |
intraday_range_pct |
number | 0.34 to 1.69 | percent |
open_to_close_pct |
number | 0.03 to 1.41 | percent |
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(date) AS session_date,
formatDateTime(date, '%b %e') AS session_label,
round(100 * (toFloat64(high) - toFloat64(low)) / toFloat64(low), 2) AS intraday_range_pct,
round(100 * abs(toFloat64(close) - toFloat64(open)) / toFloat64(open), 2) AS open_to_close_pct
FROM global_markets.stocks_daily_aggs
WHERE ticker = 'SPY'
AND date >= toDate('2026-08-03')
AND date <= toDate('2026-08-31')
ORDER BY date