STRASMORE/EXPLORE 2,469 QUERIES

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.

as of series 57×4read in context →
bos_trace — 57 rows by 4 columns, computed from US exchange, SIP and OPRA data.
session_datecloseswing_high_levelpivot_label
2025-03-25223.75212.9414/04/2025
2025-03-26221.53212.9414/04/2025
2025-03-27223.85212.9414/04/2025
2025-03-28217.9212.9414/04/2025
2025-03-31222.13212.9414/04/2025
2025-04-01223.19212.9414/04/2025
2025-04-02223.89212.9414/04/2025
2025-04-03203.19212.9414/04/2025
2025-04-04188.38212.9414/04/2025
2025-04-07181.46212.9414/04/2025
2025-04-08172.42212.9414/04/2025
2025-04-09198.85212.9414/04/2025
2025-04-10190.42212.9414/04/2025
2025-04-11198.15212.9414/04/2025
2025-04-14202.52212.9414/04/2025
2025-04-15202.14212.9414/04/2025
2025-04-16194.27212.9414/04/2025
2025-04-17196.98212.9414/04/2025
2025-04-21193.16212.9414/04/2025
2025-04-22199.74212.9414/04/2025
2025-04-23204.6212.9414/04/2025
2025-04-24208.37212.9414/04/2025
2025-04-25209.28212.9414/04/2025
2025-04-28210.14212.9414/04/2025
2025-04-29211.21212.9414/04/2025
2025-04-30212.5212.9414/04/2025
2025-05-01213.32212.9414/04/2025
2025-05-02205.35212.9414/04/2025
2025-05-05198.89212.9414/04/2025
2025-05-06198.51212.9414/04/2025
2025-05-07196.25212.9414/04/2025
2025-05-08197.49212.9414/04/2025
2025-05-09198.53212.9414/04/2025
2025-05-12210.79212.9414/04/2025
2025-05-13212.93212.9414/04/2025
2025-05-14212.33212.9414/04/2025
2025-05-15211.45212.9414/04/2025
2025-05-16211.26212.9414/04/2025
2025-05-19208.78212.9414/04/2025
2025-05-20206.86212.9414/04/2025
2025-05-21202.09212.9414/04/2025
2025-05-22201.36212.9414/04/2025
2025-05-23195.27212.9414/04/2025
2025-05-27200.21212.9414/04/2025
2025-05-28200.42212.9414/04/2025
2025-05-29199.95212.9414/04/2025
2025-05-30200.85212.9414/04/2025
2025-06-02201.7212.9414/04/2025
2025-06-03203.27212.9414/04/2025
2025-06-04202.82212.9414/04/2025
2025-06-05200.63212.9414/04/2025
2025-06-06203.92212.9414/04/2025
2025-06-09201.45212.9414/04/2025
2025-06-10202.67212.9414/04/2025
2025-06-11198.78212.9414/04/2025
2025-06-12199.2212.9414/04/2025
2025-06-13196.45212.9414/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
Formats
JSON · CSV · the SQL below

What each column holds

Column definitions for bos_trace, derived from the stored result.
ColumnTypeRangeNotes
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
⌘/Ctrl + Enter