Strasmore Research
การเรียนรู้ Matt Connorโดย Matt Connor · อัปเดตเมื่อ 2026-07-24 · data as of July 24, 2026 · refreshed weekly

ตลาดหุ้นสหรัฐฯ เปิดและปิดกี่โมง

เวลาซื้อขายปกติของ NYSE และ Nasdaq คือ 9:30 น. ถึง 16:00 น. ตามเวลา ET โดยมีช่วง premarket และ after-hours เพิ่มเติม และตลาดจะปิดทำการในวันเสาร์และอาทิตย์

ตลาดหุ้นสหรัฐฯ เปิดทำการตั้งแต่เวลา 9:30 น. ถึง 16:00 น. ตามเวลา Eastern Time ตั้งแต่วันจันทร์ถึงวันศุกร์ โดยทั้ง NYSE และ Nasdaq จะเริ่มการซื้อขายปกติในเวลา 9:30 น. ET และปิดการซื้อขายในเวลา 16:00 น. ET นอกจากช่วงเวลาซื้อขายปกติแล้ว ยังมีช่วงเวลาซื้อขายพิเศษอีกสองช่วง ได้แก่ การซื้อขายก่อนตลาดเปิด (premarket trading) ตั้งแต่เวลา 4:00 น. ET และการซื้อขายหลังตลาดปิด (after-hours trading) จนถึงเวลา 20:00 น. ET โดยตลาดจะปิดทำการในวันเสาร์-อาทิตย์ และวันหยุดนักขัตฤกษ์ประมาณสิบวันต่อปี ข้อมูลทุกตัวเลขในหน้านี้วัดจากบันทึกการซื้อขายจริง ซึ่งสามารถตรวจสอบคำสั่งดึงข้อมูลที่อยู่เบื้องหลังตัวเลขแต่ละตัวได้เพียงคลิกเดียว (สำหรับข้อมูลสรุป เช่น เวลาปิดตลาดครั้งถัดไป หรือเซสชันล่าสุด โปรดดูที่ ตลาดหุ้นเปิดทำการวันนี้หรือไม่)

ตลาดหุ้นเปิดและปิดทำการเวลาใด?

ช่วงเวลาซื้อขายปกติ ซึ่งเป็นช่วงเวลาที่ใช้ในการระบุราคา ดัชนี และข่าวสารในช่วงเย็น เริ่มต้นตั้งแต่เสียงระฆังเปิดตลาดเวลา 9:30 a.m. ET จนถึงเสียงระฆังปิดตลาดเวลา 4:00 p.m. ET รวมระยะเวลาหกชั่วโมงครึ่ง ต่อเนื่องห้าวันต่อสัปดาห์ ตลาดหลักทรัพย์หลักทั้งสองแห่งในสหรัฐฯ ใช้เวลามาตรฐานเดียวกัน และคำสั่งซื้อขายผ่านโบรกเกอร์ทั่วไปจะดำเนินการภายในช่วงเวลานี้โดยค่าเริ่มต้น

ช่วงเวลาการซื้อขายผ่านระบบอิเล็กทรอนิกส์ทั้งหมดนั้นยาวนานกว่าช่วงเวลาเปิด-ปิดตลาด:

  • Premarket: 4:00 a.m. ถึง 9:30 a.m. ET — การซื้อขายผ่านระบบอิเล็กทรอนิกส์ก่อนเสียงระฆังเปิดตลาด
  • Regular session: 9:30 a.m. ถึง 4:00 p.m. ET — ช่วงเวลาที่มีปริมาณการซื้อขายส่วนใหญ่ของวัน
  • After-hours: 4:00 p.m. ถึง 8:00 p.m. ET — การซื้อขายผ่านระบบอิเล็กทรอนิกส์หลังเสียงระฆังปิดตลาด

มีการประมูลสองช่วงที่ขนาบข้างช่วงเวลาซื้อขายปกติ การประมูลเปิดตลาดจะกำหนดราคาเปิดอย่างเป็นทางการของหุ้นแต่ละตัวในเวลา 9:30 a.m. และ การประมูลปิดตลาด ซึ่งเป็นการจับคู่คำสั่งซื้อขายขนาดใหญ่เพียงครั้งเดียวในช่วงเวลาไม่นานหลังจาก 4:00 p.m. จะเป็นตัวกำหนดราคาปิดอย่างเป็นทางการที่ใช้ระบุในทุกแห่งในช่วงเย็นวันนั้น เวลาทั้งหมดในหน้านี้เป็นเวลาฝั่งตะวันออก (Eastern Time) โดยช่วงเวลาซื้อขายปกติเดียวกันนี้จะตรงกับเวลา 6:30 a.m. ถึง 1:00 p.m. ทางฝั่งชายฝั่งตะวันตกของสหรัฐฯ

ช่วงเวลาการซื้อขายในตลาดหุ้นแสดงผลอย่างไรบน tape?

คำจำกัดความคือสิ่งหนึ่ง แต่ tape คือหลักฐาน แผงข้อมูลด้านล่างแสดงข้อมูลการซื้อขายเต็มรูปแบบล่าสุดของ SPY ซึ่งคือ 2026-07-20 ซึ่งเป็น Monday ที่ล่าสุดที่สุดที่มีข้อมูลครบถ้วน (เนื่องจากข้อมูลจะล่าช้ากว่าเหตุการณ์จริงหนึ่งถึงสองวัน) โดยตรวจสอบจากการนับแท่งกราฟรายนาทีในช่วงเวลาทำการปกติ: มีทั้งหมด 390 แท่ง หรือหนึ่งแท่งต่อทุกหนึ่งนาทีระหว่างเสียงระฆังเปิดและปิดตลาด แท่งแรกของเซสชันปรากฏขึ้นที่เวลา 04:00 ET และแท่งสุดท้ายที่เวลา 19:59 ET ซึ่งครอบคลุมช่วงเวลาการซื้อขายแบบ extended day ตั้งแต่ 4:00 น. ถึง 20:00 น.

คำสั่งดึงข้อมูลข้อมูลการซื้อขาย SPY ตลอดทั้งวัน แบ่งตามช่วงเวลาการซื้อขาย (เซสชันเต็มล่าสุด)
SQL เบื้องหลังตัวเลขแต่ละตัว
WITH
(
    SELECT max(d)
    FROM
    (
        SELECT
            toDate(toTimeZone(window_start, 'America/New_York')) AS d,
            countIf((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) AS rth_bars
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND window_start >= today() - 21
          AND window_start < today() - 2
        GROUP BY d
        HAVING rth_bars = 390
    )
) AS session_day
SELECT
    toString(session_day)                     AS session_date,
    formatDateTime(session_day, '%W')         AS weekday,
    countIf(et_min >= 570 AND et_min < 960)   AS regular_session_bars,
    min(et_min)                               AS first_bar_minute_of_day,
    max(et_min)                               AS last_bar_minute_of_day,
    formatDateTime(min(et_ts), '%H:%i')       AS first_bar_et,
    formatDateTime(max(et_ts), '%H:%i')       AS last_bar_et,
    round(sum(volume) / 1e6, 1)               AS total_shares_m,
    round(100.0 * sumIf(volume, et_min < 570) / sum(volume), 1)                    AS premarket_pct,
    round(100.0 * sumIf(volume, et_min >= 570 AND et_min < 960) / sum(volume), 1)  AS regular_pct,
    round(100.0 * sumIf(volume, et_min >= 960 AND et_min < 990) / sum(volume), 1)  AS post_close_30min_pct,
    round(100.0 * sumIf(volume, et_min >= 990) / sum(volume), 1)                   AS evening_pct,
    round(100.0 * sumIf(volume, et_min >= 570 AND et_min < 600) / sum(volume), 1)  AS first_30min_pct,
    round(100.0 * sumIf(volume, et_min >= 930 AND et_min < 960) / sum(volume), 1)  AS last_30min_pct,
    round(100.0 * sumIf(volume, et_min >= 750 AND et_min < 780) / sum(volume), 1)  AS midday_half_hour_pct
FROM
(
    SELECT
        volume,
        toTimeZone(window_start, 'America/New_York') AS et_ts,
        toHour(toTimeZone(window_start, 'America/New_York')) * 60
        + toMinute(toTimeZone(window_start, 'America/New_York')) AS et_min
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND toDate(toTimeZone(window_start, 'America/New_York')) = session_day
)

สัดส่วนปริมาณการซื้อขายคือบทเรียนสำคัญ จากจำนวนหุ้น SPY ทั้งหมด 48.4 ล้านหุ้นที่มีการซื้อขายตลอดช่วงเวลาสิบหกชั่วโมงนี้ ช่วงเวลาทำการปกติมีปริมาณการซื้อขายอยู่ที่ 82.7% ช่วง premarket ระยะเวลาห้าชั่วโมงครึ่งมีปริมาณการซื้อขายอยู่ที่ 1.9% ช่วงครึ่งชั่วโมงหลังปิดตลาดทันทีมีปริมาณการซื้อขายอยู่ที่ 14.8% ซึ่งเป็นช่วงเวลาที่รวมรายการซื้อขายขนาดใหญ่แบบเจรจาต่อรองที่จะรายงานลงใน tape เมื่อสิ้นสุดเซสชัน และช่วงเวลาสามชั่วโมงครึ่งที่เหลือในช่วงเย็นมีปริมาณการซื้อขายรวมกันอยู่ที่ 0.6%

ข้อมูลปริมาณการซื้อขายรายครึ่งชั่วโมงแสดงให้เห็นถึงรูปแบบของวัน:

คำสั่งดึงข้อมูลปริมาณการซื้อขาย SPY รายครึ่งชั่วโมง ตั้งแต่ช่วง premarket ถึง after-hours (เซสชันเดียวกัน ตามเวลา ET)
SQL เบื้องหลังตัวเลขแต่ละตัว
WITH
(
    SELECT max(d)
    FROM
    (
        SELECT
            toDate(toTimeZone(window_start, 'America/New_York')) AS d,
            countIf((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) AS rth_bars
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND window_start >= today() - 21
          AND window_start < today() - 2
        GROUP BY d
        HAVING rth_bars = 390
    )
) AS session_day
SELECT
    formatDateTime(toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 30 MINUTE), '%H:%i') AS et_half_hour,
    round(sum(volume) / 1e6, 2) AS shares_m
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
  AND toDate(toTimeZone(window_start, 'America/New_York')) = session_day
GROUP BY et_half_hour
ORDER BY et_half_hour

ในเซสชันนี้ ช่วงครึ่งชั่วโมงก่อนปิดตลาดมีปริมาณการซื้อขายคิดเป็น 19% ของปริมาณการซื้อขายทั้งวัน เมื่อเทียบกับ 5.8% ของช่วงครึ่งชั่วโมงระหว่างเวลา 12:30 ถึง 13:00 น. และช่วงครึ่งชั่วโมงแรกของการเปิดตลาดมีปริมาณการซื้อขายอยู่ที่ 9.5% ปริมาณการซื้อขายที่หนาแน่นในช่วงปิดตลาดมีสาเหตุเชิงกลไก เนื่องจาก index funds, mutual funds และสถาบันที่อ้างอิงดัชนีจะทำธุรกรรมที่ราคาปิดอย่างเป็นทางการ และคำสั่งซื้อขายของหน่วยงานเหล่านี้จะรวมกันในการประมูลช่วงปิดตลาด (closing auction) โดยรวมแล้ว ปริมาณการซื้อขายถูกแบ่งออกเป็น 32 ช่วงครึ่งชั่วโมงตลอดช่วงเวลา extended day

การซื้อขายช่วง premarket และ after-hours คืออะไร?

Premarket (04:00 น. ถึง 09:30 น. ET) และ after-hours (16:00 น. ถึง 20:00 น. ET) คือช่วงเวลาการซื้อขายผ่านระบบอิเล็กทรอนิกส์ที่อยู่รอบช่วงเวลาทำการปกติ จำนวนผู้เข้าร่วมตลาดในช่วงนี้มีน้อยกว่าปกติ ส่งผลให้ bid-ask spread กว้างขึ้น และโบรกเกอร์ส่วนใหญ่จะรับเฉพาะคำสั่งซื้อขายแบบ limit orders เท่านั้น ข่าวสารของบริษัทมักจะประกาศในช่วงเวลานี้ โดยเฉพาะการประกาศผลประกอบการที่มักจะเกิดขึ้นหลังตลาดปิดเวลา 16:00 น. หรือในช่วงไม่กี่ชั่วโมงก่อนตลาดเปิด ซึ่งเป็นช่วงที่ราคาหุ้นอาจเกิด gap จากราคาปิดก่อนหน้าอย่างมาก ราคาที่ปรากฏ ณ เวลา 19:00 น. ไม่สามารถรับประกันได้ว่าราคาหุ้นจะเปิดที่ระดับใดในเช้าวันถัดไป

ข้อมูลส่วนแบ่งปริมาณการซื้อขายในแต่ละช่วงเวลา ต้นทุน bid-ask spread และเวลาที่ข่าวพาดหัวปรากฏขึ้นจริง สามารถดูได้ใน การซื้อขายช่วง after-hours และ premarket ซึ่งเป็นบทความประกอบของหน้านี้ สรุปใจความสำคัญที่ปรากฏในแผงข้อมูลด้านบนคือ ช่วงเวลาการซื้อขายที่ขยายออกไป (extended sessions) นั้นมีการซื้อขายเกิดขึ้นจริง แต่มีสภาพคล่องต่ำเมื่อเทียบกับช่วงเวลาทำการปกติ

สัญญา options และ futures ซื้อขายในช่วงเวลาใด?

Options ของหุ้นรายบริษัทซื้อขายตั้งแต่เวลา 9:30 น. ถึง 16:00 น. ตามเวลา ET โดยไม่มีช่วง premarket หรือ after-hours ส่วน Options ของ ETF ดัชนีตลาดกว้างบางรายการ เช่น SPY, QQQ, IWM และ index options อย่าง SPX และ VIX จะมีเวลาซื้อขายเพิ่มขึ้น 15 นาที จนถึงเวลา 16:15 น. ตามเวลา ET ข้อมูลการซื้อขายแสดงการแยกส่วนในช่วง 2026-07-20 ซึ่งเป็นช่วงเวลาเดียวกับที่วัดไว้ด้านบน:

คำสั่งดึงข้อมูลปริมาณการซื้อขายออปชันรายชื่อหุ้นเทียบกับ ETF ณ เวลา 16:00 น. — การซื้อขายออปชัน AAPL และ SPY ช่วงใกล้ปิดตลาด (เซสชันเดียวกัน)
SQL เบื้องหลังตัวเลขแต่ละตัว
WITH
(
    SELECT max(d)
    FROM
    (
        SELECT
            toDate(toTimeZone(window_start, 'America/New_York')) AS d,
            countIf((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) AS rth_bars
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND window_start >= today() - 21
          AND window_start < today() - 2
        GROUP BY d
        HAVING rth_bars = 390
    )
) AS session_day
SELECT
    if(startsWith(ticker, 'O:SPY'), 'SPY options (ETF)', 'AAPL options (single name)') AS contract,
    toString(session_day)                                                              AS session_date,
    countIf(sip_timestamp >= toDateTime(concat(toString(session_day), ' 15:45:00'), 'America/New_York')
        AND sip_timestamp <  toDateTime(concat(toString(session_day), ' 16:00:00'), 'America/New_York')) AS trades_345_to_400,
    countIf(sip_timestamp >= toDateTime(concat(toString(session_day), ' 16:00:00'), 'America/New_York')
        AND sip_timestamp <  toDateTime(concat(toString(session_day), ' 16:15:00'), 'America/New_York')) AS trades_400_to_415,
    formatDateTime(toTimeZone(max(sip_timestamp), 'America/New_York'), '%H:%i') AS last_trade_et,
    toHour(toTimeZone(max(sip_timestamp), 'America/New_York')) * 60
    + toMinute(toTimeZone(max(sip_timestamp), 'America/New_York'))              AS last_trade_minute_of_day
FROM global_markets.options_trades
WHERE (startsWith(ticker, 'O:SPY') OR startsWith(ticker, 'O:AAPL'))
  AND match(ticker, '^O:(SPY|AAPL)[0-9]{6}[CP][0-9]{8}$')
  AND sip_timestamp >= toDateTime(concat(toString(session_day), ' 15:45:00'), 'America/New_York')
  AND sip_timestamp <  toDateTime(concat(toString(session_day), ' 23:00:00'), 'America/New_York')
GROUP BY contract
ORDER BY contract

ช่วง 15 นาทีสุดท้ายของตลาดปกติมีการซื้อขายหนาแน่นในทั้งสองกระดาน โดยมีการซื้อขาย AAPL options จำนวน 8828 และ SPY จำนวน 54842 ช่วงเวลา 15 นาทีหลังปิดตลาดทำให้เกิดการแยกส่วนกัน โดย AAPL มีรายการซื้อขายที่หลุดจากช่วงเวลาปกติจำนวน 0 (รายการสุดท้ายคือเวลา 15:59 ET) ในขณะที่ SPY มีรายการซื้อขายจำนวน 25621 โดยรายการสุดท้ายคือเวลา 16:14 ET สำหรับวันหมดอายุจะมีกำหนดเวลาเฉพาะของตนเอง ซึ่งสามารถดูรายละเอียดได้ที่ options 0DTE ซื้อขายเมื่อใด

Futures มีกำหนดเวลาที่แตกต่างออกไปโดยสิ้นเชิง โดย CME equity-index futures ซื้อขายเกือบ 24 ชั่วโมง ตั้งแต่วันอาทิตย์เวลา 18:00 น. ถึงวันศุกร์เวลา 17:00 น. ตามเวลา ET และมีการหยุดพักวันละหนึ่งชั่วโมงตอนเวลา 17:00 น. ซึ่งเป็นข้อมูลการซื้อขายช่วง overnight ที่อยู่เบื้องหลังพาดหัวข่าว "futures ปรับตัวขึ้นเมื่อเช้านี้" ส่วนตลาดพันธบัตรเป็นการซื้อขายแบบ over-the-counter ตามเวลาที่ SIFMA แนะนำ คือประมาณ 08:00 น. ถึง 17:00 น. ตามเวลา ET และมีปฏิทินวันหยุดเป็นของตนเอง โดยตลาดพันธบัตรจะปิดทำการในวัน Columbus Day และ Veterans Day ในขณะที่ตลาดหุ้นยังคงซื้อขายตามปกติ

ตลาดหุ้นปิดทำการเมื่อใด?

ตลาดหุ้นสหรัฐฯ ปิดทำการในช่วงวันหยุดสุดสัปดาห์ และวันหยุดนักขัตฤกษ์ประมาณสิบวันต่อปี นอกจากนี้ยังมีการปิดตลาดเร็วขึ้นในเวลา 13:00 น. ET ในบางวันที่มีกำหนดการปิดครึ่งวัน ปฏิทินด้านล่างนี้อ้างอิงจากกำหนดการของตลาดหลักทรัพย์โดยตรงและมีการอัปเดตข้อมูลอัตโนมัติ โดยวันหยุดที่ผ่านไปแล้วจะถูกลบออก และวันหยุดถัดไปจะถูกเลื่อนขึ้นมาแทนที่

คำสั่งดึงข้อมูลวันหยุดตลาดหุ้นสหรัฐฯ และเวลาปิดตลาดเร็วที่กำลังจะถึง จากปฏิทินตลาดหลักทรัพย์
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
    toString(date)                       AS holiday_date,
    formatDateTime(date, '%a')           AS weekday,
    any(name)                            AS holiday,
    any(status)                          AS day_status,
    any(if(status = 'early-close',
           formatDateTime(toTimeZone(close, 'America/New_York'), '%I:%i %p'),
           ''))                          AS early_close_et,
    dateDiff('day', today(), date)       AS days_away
FROM global_markets.stocks_market_holidays
WHERE date >= today()
GROUP BY date
ORDER BY date

การปิดตลาดครั้งถัดไปที่มีกำหนดการคือ Labor Day ในวันที่ 2026-09-07 ซึ่งเหลือเวลาอีก 46 วัน และปฏิทินที่แสดงข้อมูลระบุวันปิดตลาดที่กำลังจะมาถึงทั้งหมด 12 วัน โดยแต่ละวันจะระบุว่าเป็นวันปิดตลาดเต็มวันหรือการปิดตลาดเร็ว ในวันที่ปิดตลาดเร็ว การซื้อขายช่วงปกติจะสิ้นสุดลงในเวลา 13:00 น. ET แทนที่จะเป็น 16:00 น. ซึ่งจะทำให้มีเวลาซื้อขายเพียงสามชั่วโมงครึ่งแทนที่จะเป็นหกชั่วโมงครึ่ง โดยการประมูลปิดตลาดจะเกิดขึ้นในเวลา 13:00 น. วันที่มีการปิดตลาดครึ่งวันมักจะอยู่ในช่วงเทศกาล Thanksgiving และ Christmas สำหรับกฎการชดเชยวันหยุดสุดสัปดาห์ (หากวันหยุดตรงกับวันเสาร์ ตลาดจะปิดในวันศุกร์ก่อนหน้า และหากตรงกับวันอาทิตย์ ตลาดจะปิดในวันจันทร์ถัดไป) รวมถึงรายละเอียดปฏิทินฉบับเต็มและวิธีการตรวจสอบการปิดตลาดในอดีตจากข้อมูลการซื้อขาย สามารถอ่านเพิ่มเติมได้ที่ วันหยุดตลาดหุ้นและการปิดตลาดเร็ว

ลักษณะของตลาดในช่วงครึ่งวันเป็นอย่างไร?

ปฏิทินระบุวันที่มีการปิดตลาดก่อนกำหนด แต่ข้อมูลการซื้อขายแสดงให้เห็นถึงลักษณะที่เกิดขึ้นจริง โดยช่วงครึ่งวันที่ล่าสุดของ SPY คือ 2025-12-24 ซึ่งมีอัตราส่วน Wednesday: 210 ของแท่งกราฟรายนาทีในช่วงเวลาทำการปกติ ตั้งแต่ 9:30 น. จนถึงการประมูลปิดตลาดเวลา 13:00 น.

คำสั่งดึงข้อมูลเซสชันที่มีการปิดตลาดเร็วล่าสุดของ SPY แบ่งตามช่วงเวลาการซื้อขาย
SQL เบื้องหลังตัวเลขแต่ละตัว
WITH
(
    SELECT max(d)
    FROM
    (
        SELECT
            toDate(toTimeZone(window_start, 'America/New_York')) AS d,
            countIf((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) AS rth_bars
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND window_start >= today() - 400
          AND window_start < today() - 2
        GROUP BY d
        HAVING rth_bars >= 150 AND rth_bars <= 240
    )
) AS half_day
SELECT
    toString(half_day)                          AS session_date,
    formatDateTime(half_day, '%W')              AS weekday,
    countIf(et_min >= 570 AND et_min < 780)     AS morning_session_bars,
    formatDateTime(max(et_ts), '%H:%i')         AS last_bar_et,
    max(et_min)                                 AS last_bar_minute_of_day,
    round(sum(volume) / 1e6, 1)                 AS total_shares_m,
    round(100.0 * sumIf(volume, et_min < 570) / sum(volume), 1)                    AS premarket_pct,
    round(100.0 * sumIf(volume, et_min >= 570 AND et_min < 780) / sum(volume), 1)  AS regular_pct,
    round(100.0 * sumIf(volume, et_min >= 780 AND et_min < 810) / sum(volume), 1)  AS post_close_30min_pct,
    round(100.0 * sumIf(volume, et_min >= 810) / sum(volume), 1)                   AS evening_pct,
    round(100.0 * sumIf(volume, et_min >= 570 AND et_min < 600) / sum(volume), 1)  AS first_30min_pct,
    round(100.0 * sumIf(volume, et_min >= 750 AND et_min < 780) / sum(volume), 1)  AS last_30min_pct,
    round(100.0 * sumIf(volume, et_min >= 750 AND et_min < 780) / sum(volume)
        - 100.0 * sumIf(volume, et_min >= 570 AND et_min < 600) / sum(volume), 1)  AS close_minus_open_pct
FROM
(
    SELECT
        volume,
        toTimeZone(window_start, 'America/New_York') AS et_ts,
        toHour(toTimeZone(window_start, 'America/New_York')) * 60
        + toMinute(toTimeZone(window_start, 'America/New_York')) AS et_min
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND window_start >= today() - 400
      AND toDate(toTimeZone(window_start, 'America/New_York')) = half_day
)

รูปแบบของวันซื้อขายเต็มวันยังคงปรากฏให้เห็นแม้จะถูกบีบอัดเวลา จากปริมาณการซื้อขาย SPY ทั้งหมด 35.6 ล้านหุ้น โดยช่วงเวลาทำการที่สั้นลงมีปริมาณการซื้อขายอยู่ที่ 95.5% และช่วงครึ่งชั่วโมงสุดท้ายก่อนปิดตลาดเวลา 13:00 น. มีปริมาณอยู่ที่ 23.8% ซึ่งสูงกว่าช่วงครึ่งชั่วโมงแรกที่เปิดตลาดซึ่งมีปริมาณเพียง 12.2% โดยมีแรงดึงดูดจากการประมูลปิดตลาดเหมือนกับวันปกติ แต่ถูกเลื่อนให้เร็วขึ้นสามชั่วโมง ส่วนช่วงครึ่งชั่วโมงหลังปิดตลาดมีปริมาณอยู่ที่ 3.1% (ซึ่งเป็นช่วงเวลาที่มีการรายงานรายการซื้อขายขนาดใหญ่) และช่วงเวลาที่เหลือของบ่ายมีปริมาณเพียง 0.1% การซื้อขายช่วงนอกเวลาทำการ (Extended hours) ก็ปิดเร็วขึ้นเช่นกัน โดยแท่งกราฟสุดท้ายของวันปรากฏขึ้นที่เวลา 16:59 ET ซึ่งการซื้อขายหลังตลาดปิด (After-hours) จะสิ้นสุดลงประมาณ 17:00 น. ในวันที่มีการปิดตลาดเร็ว ซึ่งเร็วขึ้นสามชั่วโมงจากเวลาปกติคือ 20:00 น. สำหรับ Options ก็ปิดเร็วขึ้นเช่นกัน โดยปิดเวลา 13:00 น. สำหรับหุ้นรายตัว และ 13:15 น. สำหรับสัญญา ETF และดัชนีในช่วงนอกเวลาทำการ

คำสั่งดึงข้อมูลปริมาณการซื้อขาย SPY รายครึ่งชั่วโมงในเซสชันที่มีการปิดตลาดเร็ว ตั้งแต่ช่วง premarket ถึง after-hours ที่สั้นลง (ตามเวลา ET)
SQL เบื้องหลังตัวเลขแต่ละตัว
WITH
(
    SELECT max(d)
    FROM
    (
        SELECT
            toDate(toTimeZone(window_start, 'America/New_York')) AS d,
            countIf((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) AS rth_bars
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND window_start >= today() - 400
          AND window_start < today() - 2
        GROUP BY d
        HAVING rth_bars >= 150 AND rth_bars <= 240
    )
) AS half_day
SELECT
    formatDateTime(toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 30 MINUTE), '%H:%i') AS et_half_hour,
    round(sum(volume) / 1e6, 2) AS shares_m
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
  AND window_start >= today() - 400
  AND toDate(toTimeZone(window_start, 'America/New_York')) = half_day
GROUP BY et_half_hour
ORDER BY et_half_hour

ปริมาณการซื้อขายถูกแบ่งออกเป็นช่วงละครึ่งชั่วโมงจำนวน 21 ช่วง โดยมีลักษณะความหนาแน่นในช่วงเปิดตลาดและช่วงปิดตลาดที่คุ้นเคย แต่ถูกบีบอัดลงมาเหลือเพียงสามชั่วโมงครึ่ง

ในหนึ่งปีมีวันทำการซื้อขายกี่วัน?

เมื่อหักวันเสาร์-อาทิตย์และวันหยุดนักขัตฤกษ์ออกแล้ว หนึ่งปีปฏิทินจะเหลือวันทำการซื้อขายประมาณ 250 วัน การนับจากข้อมูลการซื้อขายจะช่วยให้ทราบจำนวนที่แน่นอน:

คำสั่งดึงข้อมูลจำนวนเซสชันการซื้อขายในช่วง 1 ปีที่ผ่านมา โดยนับจากข้อมูล SPY
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
    count()                              AS trading_days,
    countIf(rth_bars >= 380)             AS full_length_sessions,
    countIf(rth_bars <= 240)             AS shortened_sessions,
    countIf(rth_bars > 240 AND rth_bars < 380) AS irregular_sessions,
    countIf(is_weekend)                  AS weekend_sessions,
    toString(min(d))                     AS first_session,
    toString(max(d))                     AS last_session
FROM
(
    SELECT
        toDate(toTimeZone(window_start, 'America/New_York')) AS d,
        toDayOfWeek(toDate(toTimeZone(window_start, 'America/New_York'))) >= 6 AS is_weekend,
        countIf((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) AS rth_bars
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND window_start >= today() - 370
      AND window_start < today() - 2
    GROUP BY d, is_weekend
    HAVING rth_bars > 0
)

ระหว่าง 2025-07-18 ถึง 2026-07-20 ตลาดมีจำนวนเซสชันปกติอยู่ที่ 252 เซสชัน ซึ่งประกอบด้วยวันทำการเต็มวันจำนวน 250 วัน และวันที่มีเวลาซื้อขายสั้นลงจำนวน 2 วัน นอกจากนี้ยังมีเซสชันในวันหยุดสุดสัปดาห์จำนวน 0 เซสชัน ซึ่งเป็นหลักฐานยืนยันว่าไม่มีวันเสาร์หรือวันอาทิตย์ใดที่มีการซื้อขายตามปกติ

เวลาทำการของตลาดหุ้นทั่วโลก

เวลาทำการของสหรัฐฯ เป็นเพียงส่วนหนึ่งของการหมุนเวียนตลาดโลกที่เกือบจะต่อเนื่องกัน ตลาดหลักทรัพย์ลอนดอนซื้อขายเวลา 8:00 น. ถึง 16:30 น. ตามเวลาท้องถิ่น โดยช่วงสุดท้ายของการซื้อขายมักจะคาบเกี่ยวกับช่วงสองชั่วโมงแรกของตลาดสหรัฐฯ คือเวลา 9:30 น. ถึง 11:30 น. ET ซึ่งเป็นช่วงที่ตลาดในยุโรปกำลังจะปิดและเป็นช่วงสายในนิวยอร์ก ตลาดโตเกียวซื้อขายเวลา 9:00 น. ถึง 15:30 น. ตามเวลาท้องถิ่นโดยมีการพักกลางวัน ซึ่งเป็นช่วงเวลาที่อยู่ในช่วงตลาดสหรัฐฯ ปิดทำการโดยสิ้นเชิง ตลาดหลักทรัพย์สำคัญแห่งใดแห่งหนึ่งจะเปิดทำการเกือบทุกวันในวันธรรมดา แต่หุ้นที่จดทะเบียนในสหรัฐฯ จะมีการซื้อขายเฉพาะในช่วงเวลาของสหรัฐฯ ตามที่ระบุไว้ในหน้านี้เท่านั้น

คำถามที่พบบ่อยเกี่ยวกับเวลาทำการของตลาดหุ้น

ตลาดหุ้นเปิดทำการกี่โมง?

NYSE และ Nasdaq เริ่มการซื้อขายปกติเวลา 9:30 a.m. ตามเวลา ET ตั้งแต่วันจันทร์ถึงวันศุกร์ การซื้อขายล่วงหน้าผ่านระบบอิเล็กทรอนิกส์ (premarket) เริ่มต้นเร็วกว่านั้นมากที่เวลา 4:00 a.m. ET อย่างไรก็ตาม ราคาเปิดอย่างเป็นทางการของหุ้นแต่ละตัวจะถูกกำหนดโดยการประมูลเปิดตลาด (opening auction) เวลา 9:30 a.m.

ตลาดหุ้นเปิดทำการในวันเสาร์-อาทิตย์หรือไม่?

ไม่ ตลาดหลักทรัพย์ในสหรัฐฯ ไม่มีการซื้อขายในวันเสาร์หรือวันอาทิตย์ ข้อมูลย้อนหลังหนึ่งปีที่แสดงด้านบนระบุว่ามีเซสชันในวันหยุดสุดสัปดาห์จำนวน 0 ครั้ง การซื้อขายจะกลับมาเริ่มต้นอีกครั้งในเวลา 4:00 a.m. ของวันจันทร์ (premarket) ยกเว้นวันหยุดนักขัตฤกษ์ โดยเริ่มหลังจากปิดตลาดเวลา 4:00 p.m. ของวันศุกร์ และสิ้นสุดช่วงหลังปิดตลาด (after-hours) เวลา 8:00 p.m.

การซื้อขายช่วง pre-market และ after-hours คืออะไร?

คือการซื้อขายผ่านระบบอิเล็กทรอนิกส์นอกเวลาทำการปกติ โดยช่วง premarket เริ่มตั้งแต่ 4:00 a.m. ถึง 9:30 a.m. ET และช่วง after-hours เริ่มตั้งแต่ 4:00 p.m. ถึง 8:00 p.m. ET ทั้งสองช่วงจะมีจำนวนผู้เข้าร่วมตลาดน้อยกว่าและมีส่วนต่างราคาซื้อขาย (bid-ask spreads) ที่กว้างกว่าช่วงเวลาปกติ และโบรกเกอร์ส่วนใหญ่จะรับเฉพาะคำสั่งซื้อขายแบบระบุราคา (limit orders) ในช่วงเวลาดังกล่าวเท่านั้น

ตลาดปิดเร็วขึ้นเมื่อใด?

ในวันที่กำหนดให้เป็นวันทำการครึ่งวัน การซื้อขายปกติจะสิ้นสุดลงที่เวลา 1:00 p.m. ET แทนที่จะเป็น 4:00 p.m. โดยปกติจะเป็นวันศุกร์หลังวัน Thanksgiving, วัน Christmas Eve หากตรงกับวันธรรมดา และวันที่ 3 กรกฎาคม ในบางปี ข้อมูลย้อนหลังหนึ่งปีแสดงให้เห็นว่ามีเซสชันที่ลดเวลาลงจำนวน 2 ครั้ง

จะเกิดอะไรขึ้นหากหุ้นถูกระงับการซื้อขาย (halt) ขณะปิดตลาด?

หุ้นที่ยังถูกระงับการซื้อขายเมื่อถึงเวลาปิดตลาดจะไม่ได้รับการประมูลปิดตลาดแบบล่าช้าในวันนั้น เนื่องจากกฎของตลาดหลักทรัพย์ไม่อนุญาตให้มีการประมูลเปิดใหม่หากการระงับการซื้อขายลากยาวเกินเวลาประมาณ 3:50 p.m. ET ดังนั้นการระงับการซื้อขายจะดำเนินต่อไปจนถึงช่วงปิดตลาด เมื่อไม่มีการประมูลเพื่อกำหนดราคา ตลาดหลักทรัพย์จะใช้ราคาเฉลี่ยถ่วงน้ำหนักด้วยปริมาณการซื้อขาย (volume-weighted average price) จากการซื้อขายของหุ้นตัวนั้นในช่วงห้านาทีก่อนการระงับการซื้อขาย เพื่อใช้เป็นราคาปิดอย่างเป็นทางการ แทนที่จะใช้ราคาจากการซื้อขายครั้งสุดท้าย การระงับการซื้อขายจะมีผลเฉพาะหุ้นรายตัวเท่านั้น ส่วนตลาดส่วนที่เหลือจะปิดทำการตามกำหนดการปกติที่เวลา 4:00 p.m.

ตลาดหุ้นปิดเวลา 4:00 หรือ 4:30?

ตลาดหลักทรัพย์ในสหรัฐฯ ปิดการซื้อขายปกติที่เวลา 4:00 p.m. ET ราคาที่ยังคงเคลื่อนไหวหลังจากนั้นมาจากเซสชัน after-hours ซึ่งดำเนินไปจนถึงเวลา 8:00 p.m. ET และมีผลิตภัณฑ์ดัชนีบางประเภทที่ซื้อขายได้จนถึงเวลา 4:15 p.m. ET


เวลาทำการของตลาดคือตารางกำหนดการ ส่วนข้อมูลราคา (tape) คือหลักฐานการซื้อขาย ทุกแผงข้อมูลด้านบนคือการดึงข้อมูลที่จัดเก็บไว้ซึ่งคุณสามารถเปิด แก้ไข และเรียกดูใหม่ได้บนเทอร์มินัลของ Strasmore — ตรวจสอบเซสชันใดก็ได้, ติกเกอร์ใดก็ได้ หรือตรวจสอบเวลาปิดตลาดครั้งถัดไปได้ในรูปแบบภาษาอังกฤษที่เข้าใจง่าย