bos_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-09-22, from market-structure-and-break-of-structure.
| session_date | close | swing_high_level | pivot_label |
|---|---|---|---|
| 2025-03-25 | 223.75 | 212.94 | 14/04/2025 |
| 2025-03-26 | 221.53 | 212.94 | 14/04/2025 |
| 2025-03-27 | 223.85 | 212.94 | 14/04/2025 |
| 2025-03-28 | 217.9 | 212.94 | 14/04/2025 |
| 2025-03-31 | 222.13 | 212.94 | 14/04/2025 |
| 2025-04-01 | 223.19 | 212.94 | 14/04/2025 |
| 2025-04-02 | 223.89 | 212.94 | 14/04/2025 |
| 2025-04-03 | 203.19 | 212.94 | 14/04/2025 |
| 2025-04-04 | 188.38 | 212.94 | 14/04/2025 |
| 2025-04-07 | 181.46 | 212.94 | 14/04/2025 |
| 2025-04-08 | 172.42 | 212.94 | 14/04/2025 |
| 2025-04-09 | 198.85 | 212.94 | 14/04/2025 |
| 2025-04-10 | 190.42 | 212.94 | 14/04/2025 |
| 2025-04-11 | 198.15 | 212.94 | 14/04/2025 |
| 2025-04-14 | 202.52 | 212.94 | 14/04/2025 |
| 2025-04-15 | 202.14 | 212.94 | 14/04/2025 |
| 2025-04-16 | 194.27 | 212.94 | 14/04/2025 |
| 2025-04-17 | 196.98 | 212.94 | 14/04/2025 |
| 2025-04-21 | 193.16 | 212.94 | 14/04/2025 |
| 2025-04-22 | 199.74 | 212.94 | 14/04/2025 |
| 2025-04-23 | 204.6 | 212.94 | 14/04/2025 |
| 2025-04-24 | 208.37 | 212.94 | 14/04/2025 |
| 2025-04-25 | 209.28 | 212.94 | 14/04/2025 |
| 2025-04-28 | 210.14 | 212.94 | 14/04/2025 |
| 2025-04-29 | 211.21 | 212.94 | 14/04/2025 |
| 2025-04-30 | 212.5 | 212.94 | 14/04/2025 |
| 2025-05-01 | 213.32 | 212.94 | 14/04/2025 |
| 2025-05-02 | 205.35 | 212.94 | 14/04/2025 |
| 2025-05-05 | 198.89 | 212.94 | 14/04/2025 |
| 2025-05-06 | 198.51 | 212.94 | 14/04/2025 |
| 2025-05-07 | 196.25 | 212.94 | 14/04/2025 |
| 2025-05-08 | 197.49 | 212.94 | 14/04/2025 |
| 2025-05-09 | 198.53 | 212.94 | 14/04/2025 |
| 2025-05-12 | 210.79 | 212.94 | 14/04/2025 |
| 2025-05-13 | 212.93 | 212.94 | 14/04/2025 |
| 2025-05-14 | 212.33 | 212.94 | 14/04/2025 |
| 2025-05-15 | 211.45 | 212.94 | 14/04/2025 |
| 2025-05-16 | 211.26 | 212.94 | 14/04/2025 |
| 2025-05-19 | 208.78 | 212.94 | 14/04/2025 |
| 2025-05-20 | 206.86 | 212.94 | 14/04/2025 |
| 2025-05-21 | 202.09 | 212.94 | 14/04/2025 |
| 2025-05-22 | 201.36 | 212.94 | 14/04/2025 |
| 2025-05-23 | 195.27 | 212.94 | 14/04/2025 |
| 2025-05-27 | 200.21 | 212.94 | 14/04/2025 |
| 2025-05-28 | 200.42 | 212.94 | 14/04/2025 |
| 2025-05-29 | 199.95 | 212.94 | 14/04/2025 |
| 2025-05-30 | 200.85 | 212.94 | 14/04/2025 |
| 2025-06-02 | 201.7 | 212.94 | 14/04/2025 |
| 2025-06-03 | 203.27 | 212.94 | 14/04/2025 |
| 2025-06-04 | 202.82 | 212.94 | 14/04/2025 |
| 2025-06-05 | 200.63 | 212.94 | 14/04/2025 |
| 2025-06-06 | 203.92 | 212.94 | 14/04/2025 |
| 2025-06-09 | 201.45 | 212.94 | 14/04/2025 |
| 2025-06-10 | 202.67 | 212.94 | 14/04/2025 |
| 2025-06-11 | 198.78 | 212.94 | 14/04/2025 |
| 2025-06-12 | 199.2 | 212.94 | 14/04/2025 |
| 2025-06-13 | 196.45 | 212.94 | 14/04/2025 |
- Rows × columns
- 57 × 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 | 2025-03-25 to 2025-06-13 | |
close |
number | 172.42 to 223.89 | US dollars |
swing_high_level |
number | every row is 212.94 | US dollars |
pivot_label |
text | 1 distinct value (14/04/2025) |
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
px AS
(
SELECT
date,
toFloat64(high) AS h,
toFloat64(close) AS c
FROM global_markets.stocks_daily_aggs
WHERE ticker = 'AAPL'
AND date >= '2025-01-02'
AND date < '2025-08-01'
),
flagged AS
(
SELECT
date,
h,
c,
max(h) OVER w_prev AS prev_high,
max(h) OVER w_next AS next_high,
count() OVER w_prev AS bars_before,
count() OVER w_next AS bars_after
FROM px
WINDOW
w_prev AS (ORDER BY date ROWS BETWEEN 3 PRECEDING AND 1 PRECEDING),
w_next AS (ORDER BY date ROWS BETWEEN 1 FOLLOWING AND 3 FOLLOWING)
),
pivot AS
(
SELECT
date AS pivot_date,
h AS level
FROM flagged
WHERE bars_before = 3
AND bars_after = 3
AND h > prev_high
AND h > next_high
AND date <= '2025-04-30'
ORDER BY date DESC
LIMIT 1
)
SELECT
toString(f.date) AS session_date,
round(f.c, 2) AS close,
round(p.level, 2) AS swing_high_level,
formatDateTime(p.pivot_date, '%d/%m/%Y') AS pivot_label
FROM flagged AS f
CROSS JOIN pivot AS p
WHERE f.date >= p.pivot_date - 20
AND f.date <= p.pivot_date + 60
ORDER BY f.date