STRASMORE/EXPLORE 3,214 QUERIES

tehran_session_map

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 us-daylight-saving-switch-tehran-time.

as of series 5×6read in context →
tehran_session_map — 5 rows by 6 columns, computed from US exchange, SIP and OPRA data.
milestonenew_york_clocktehran_edt_clocktehran_est_clocktehran_hour_edttehran_hour_est
آغاز پیش‌بازار04:0011:3012:3011.512.5
بازگشایی نشست اصلی09:3017:0018:001718
پایان نخستین ساعت10:3018:0019:001819
بسته شدن نشست اصلی16:0023:3000:3023.524.5
پایان پس‌بازار20:0003:3004:3027.528.5
Rows × columns
5 × 6
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 tehran_session_map, derived from the stored result.
ColumnTypeRangeNotes
milestone text 5 distinct values
new_york_clock text 5 distinct values (04:00, 09:30, 10:30…)
tehran_edt_clock text 5 distinct values (03:30, 11:30, 17:00…)
tehran_est_clock text 5 distinct values (00:30, 04:30, 12:30…)
tehran_hour_edt number 11.5 to 27.5
tehran_hour_est number 12.5 to 28.5

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
    milestone,
    new_york_clock,
    formatDateTime(toTimeZone(edt_ts, 'Asia/Tehran'), '%H:%i') AS tehran_edt_clock,
    formatDateTime(toTimeZone(est_ts, 'Asia/Tehran'), '%H:%i') AS tehran_est_clock,
    round((toUnixTimestamp(edt_ts)
           - toUnixTimestamp(toDateTime(concat(toString(edt_date), ' 00:00:00'), 'Asia/Tehran'))) / 3600.0, 2) AS tehran_hour_edt,
    round((toUnixTimestamp(est_ts)
           - toUnixTimestamp(toDateTime(concat(toString(est_date), ' 00:00:00'), 'Asia/Tehran'))) / 3600.0, 2) AS tehran_hour_est
FROM
(
    SELECT
        m.1                                                                  AS sort_order,
        m.2                                                                  AS milestone,
        substring(m.3, 1, 5)                                                 AS new_york_clock,
        edt_date,
        est_date,
        toDateTime(concat(toString(edt_date), ' ', m.3), 'America/New_York') AS edt_ts,
        toDateTime(concat(toString(est_date), ' ', m.3), 'America/New_York') AS est_ts
    FROM
    (
        SELECT
            arrayJoin([
                (1, 'آغاز پیش‌بازار',       '04:00:00'),
                (2, 'بازگشایی نشست اصلی',   '09:30:00'),
                (3, 'پایان نخستین ساعت',    '10:30:00'),
                (4, 'بسته شدن نشست اصلی',   '16:00:00'),
                (5, 'پایان پس‌بازار',       '20:00:00')
            ])            AS m,
            est_date,
            est_date - 4  AS edt_date
        FROM
        (
            SELECT nov1 + ((7 - toDayOfWeek(nov1)) % 7) AS est_date
            FROM ( SELECT toDate('2026-11-01') AS nov1 )
        )
    )
)
ORDER BY sort_order
⌘/Ctrl + Enter

Work with this data in your AI assistant

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