ไตรมาสที่สองของปี 2026 เป็นไตรมาสแห่งการฟื้นตัว หลังจากที่ไตรมาสแรกมีผลตอบแทนติดลบ ดัชนี ETF หลักทุกตัวปรับตัวเพิ่มขึ้นเป็นเลขสองหลัก โดยมี QQQ นำตลาดที่ 26.5% แผนภูมิในด้านล่างแสดงลักษณะการเคลื่อนไหวของไตรมาสนี้ ได้แก่ ลำดับการปรับตัวขึ้นรายเดือน สภาพแวดล้อมด้านอัตราดอกเบี้ย และปฏิทิน รวมถึงข้อควรระวังของข้อมูลสองประการที่ระบุไว้ในเนื้อหา ตัวเลขทั้งหมดเป็นผลลัพธ์จากการดึงข้อมูลโดยตรง คุณสามารถขยายแผนภูมิเพื่อดูคำสั่ง SQL ที่ใช้ได้
ผลการดำเนินงานในไตรมาสนี้
ความผันผวนจาก Q1 มีขนาดเท่าใด? แผงข้อมูลนี้คำนวณผลตอบแทนของทั้งสองไตรมาสในการสืบค้นครั้งเดียว โดยค่าอ้างอิงของ Q1 จะถูกคำนวณใหม่แบบเรียลไทม์ด้วยนิยามเดียวกัน ไม่ได้ดึงข้อมูลมาจากแหล่งอื่น
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT ticker,
round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
/ argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-04-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS q2_return_pct,
round((argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-03-31') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959)
/ argMinIf(toFloat64(open), window_start, toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2026-01-01') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) - 1) * 100, 1) AS q1_return_pct,
round(argMaxIf(toFloat64(close), window_start, toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-06-30') AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959), 2) AS q2_close
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ', 'DIA', 'IWM')
AND window_start >= toDateTime('2026-01-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY ticker
ORDER BY tickerQQQ ปรับตัวขึ้น 26.5% ในไตรมาสนี้ หลังจากที่ -6.9% ใน Q1; SPY 14.1% หลังจาก -5.2%; IWM 20.2% ทุกดัชนีที่ลดลงในไตรมาสแรกสามารถฟื้นตัวกลับมาได้มากกว่าเดิมในไตรมาสที่สอง ดัชนีทั้งสี่แสดงให้เห็นถึงสถานการณ์ที่แตกต่างกันสามรูปแบบ: ดัชนีกลุ่มเติบโต (growth index) ประสบภาวะขาดทุนหนักที่สุดใน Q1 แต่มีการฟื้นตัวที่สูงที่สุด; DIA ซึ่งเป็นดัชนีอุตสาหกรรมแบบถ่วงน้ำหนักด้วยราคา เปลี่ยนแปลงจาก -3.9% เป็น 12.1%; และ IWM แทบไม่ได้ลดลงเลย (0.1% ใน Q1) ดังนั้นผลตอบแทน 20.2% ในไตรมาสนี้จึงเป็นการต่อยอดจากสภาวะที่ทรงตัวมากกว่าเป็นการฟื้นตัวจากภาวะขาดทุน ทั้งนี้ การฟื้นตัวและโมเมนตัมมีลักษณะที่คล้ายคลึงกันเมื่อดูจากคอลัมน์ผลตอบแทนรายไตรมาส โดยคอลัมน์ Q1 คือส่วนที่ช่วยแยกความแตกต่างของทั้งสองสิ่งนี้
การเปรียบเทียบไตรมาสนี้กับไตรมาสที่สองของทุกปีที่ผ่านมา
ไตรมาสแห่งการฟื้นตัวมักให้ความรู้สึกเหมือนเป็นช่วงเวลาประวัติศาสตร์เมื่ออยู่ในเหตุการณ์ แต่ข้อมูลสถิติจะเป็นตัวบ่งชี้ว่าไตรมาสนี้เข้าข่ายดังกล่าวหรือไม่ ระบบจะคำนวณผลตอบแทนช่วงเดือนเมษายนถึงมิถุนายนด้วยวิธีการทางคณิตศาสตร์แบบเดียวกันในทุกปีที่มีข้อมูลย้อนหลัง แล้วนำไตรมาสนี้ไปจัดลำดับเทียบกับไตรมาสอื่นๆ
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT toYear(toTimeZone(window_start, 'America/New_York')) AS y,
ticker,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions,
round((argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100, 1) AS q2_return_pct
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ')
AND window_start >= toDateTime('2003-01-01 00:00:00')
AND window_start < toDateTime('2026-07-01 00:00:00')
AND toMonth(toTimeZone(window_start, 'America/New_York')) BETWEEN 4 AND 6
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY y, ticker
HAVING sessions >= 50
ORDER BY y ASC, ticker ASCSQL เบื้องหลังตัวเลขแต่ละตัว
SELECT ticker,
round(anyIf(ret, y = 2026), 1) AS q2_2026_pct,
arrayCount(x -> x > anyIf(ret, y = 2026), groupArrayIf(ret, y != 2026)) + 1 AS rank_best,
count() AS q2s_compared,
min(y) AS first_year,
anyIf(sessions, y = 2026) AS sessions_2026
FROM (
SELECT toYear(toTimeZone(window_start, 'America/New_York')) AS y,
ticker,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions,
(argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100 AS ret
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ')
AND window_start >= toDateTime('2003-01-01 00:00:00')
AND window_start < toDateTime('2026-07-01 00:00:00')
AND toMonth(toTimeZone(window_start, 'America/New_York')) BETWEEN 4 AND 6
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959
GROUP BY y, ticker
HAVING sessions >= 50
)
GROUP BY ticker
ORDER BY ticker ASCผลลัพธ์ที่ได้ใกล้เคียงกับสถิติในอดีต โดย 26.5% ของ QQQ อยู่ในลำดับที่ 2 จาก 17 ของไตรมาสที่สองที่นำมาเปรียบเทียบกัน (ลำดับที่ 1 คือดีที่สุด) ซึ่งมีเพียงไตรมาสที่สองในอดีตเพียงไตรมาสเดียวเท่านั้นที่มีผลตอบแทนสูงกว่า และตารางรายปีด้านบนได้แสดงรายละเอียดไว้แล้ว ส่วน 14.1% ของ SPY อยู่ในลำดับที่ 3 จาก 23 ตั้งแต่ 2004 มีข้อควรระวังสองประการ: ข้อมูลชุดของ QQQ มีระยะเวลาสั้นกว่าเนื่องจากกองทุนเคยใช้สัญลักษณ์ซื้อขายอื่นในช่วงเวลาหนึ่ง ซึ่งระบบได้คัดปีเหล่านั้นออกโดยใช้เกณฑ์จำนวนวันซื้อขาย (แสดงจำนวนวันต่อปีไว้ในตาราง) และการดึงข้อมูลย้อนหลังทุกครั้งจะกำหนดจุดสิ้นสุดไว้ที่จุดสิ้นสุดของไตรมาสนี้ ดังนั้นชุดข้อมูลที่ใช้เปรียบเทียบจึงจะไม่เพิ่มขึ้นโดยอัตโนมัติเมื่อปีถัดๆ ไปมาถึง เกณฑ์ที่ใช้ในการจัดลำดับทุกรายการในหน้านี้คือ ราคาเปิดถึงราคาปิดในช่วงเวลาทำการปกติภายในไตรมาสตามปฏิทิน
การปรับตัวขึ้นแบบขั้นบันไดรายเดือน
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT toString(toStartOfMonth(toDate(toTimeZone(window_start, 'America/New_York')))) AS period_start, ticker,
round((argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) / argMinIf(toFloat64(open), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199) - 1) * 100, 1) AS month_return_pct,
round(argMaxIf(toFloat64(close), window_start, (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199), 2) AS month_close
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'QQQ')
AND window_start >= toDateTime('2026-04-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
GROUP BY period_start, ticker
ORDER BY period_start, tickerผลตอบแทนในช่วงไตรมาสนี้เกิดขึ้นในช่วงต้นไตรมาส โดยเดือนเมษายนเป็นปัจจัยหลักขับเคลื่อนตลาด (SPY 9.9%, QQQ 14.8%) ตามด้วยเดือนพฤษภาคมที่ส่งแรงต่อเนื่อง (4.9% และ 10.3%) ส่วนเดือนมิถุนายนมีการปรับตัวลดลงเล็กน้อย โดย SPY -1.2% รายละเอียดเพิ่มเติมสามารถอ่านได้จาก สรุปภาพรวมเดือนมิถุนายน ซึ่งรวมถึงข้อมูลการกระจายตัวของตลาด (breadth split) ที่อยู่ด้านล่างนี้
ผู้นำตลาด แบ่งตามรายไตรมาส
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT ticker,
round(sum(toFloat64(close) * toFloat64(volume)) / 1e9, 1) AS dollar_bn,
round(100 * sum(toFloat64(close) * toFloat64(volume)) / max(sum(toFloat64(close) * toFloat64(volume))) OVER (), 1) AS pct_of_leader
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= toDateTime('2026-04-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')
AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
AND ticker NOT IN ('SPCX')
GROUP BY ticker
ORDER BY dollar_bn DESC
LIMIT 8ตลอดทั้งไตรมาส MU ($2047.5 billion) มีปริมาณการซื้อขายแซงหน้า SPY ($2032 billion) ในฐานะผู้นำตลาด โดยหุ้นรายตัวเพียงตัวเดียวมีปริมาณการซื้อขายสูงกว่ากองทุนดัชนีหลักในช่วงสามเดือน คิดเป็น 99.2% ของยอดรวมของผู้นำตลาด ตามมาด้วย QQQ ($1658.5 billion) และ NVDA ที่ $1591.8 billion ซึ่งมีการวิเคราะห์ข้อมูลเฉพาะเดือนมิถุนายน แบบละเอียดรายธุรกรรม และ TSLA ที่ $1198.8 billion โปรดทราบว่ารายการนี้คือมูลค่าการซื้อขายในช่วงเวลาทำการปกติ ไม่ใช่ผลตอบแทน ซึ่งหุ้นบางตัวอาจมีปริมาณการซื้อขายสูงสุดในเดือนที่ราคาปรับตัวลดลง ข้อมูลเดือนมิถุนายนของผู้นำตลาดมีการวิเคราะห์ แบบละเอียดในบทวิเคราะห์เจาะลึก ข้อมูลอ้างอิง: ช่วงเวลาทำการปกติระหว่างวันที่ 1 เมษายน ถึง 30 มิถุนายน โดยไม่รวมรายการหุ้นที่มีการใช้สัญลักษณ์ซ้ำในเดือนมิถุนายนซึ่งอยู่ระหว่างการตรวจสอบสถานะนิติบุคคล (ดูหลักฐาน)
ความกว้างของตลาด: ข้อมูลรายวัน
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT countIf(day_ret > 0) AS up_sessions,
countIf(day_ret < 0) AS down_sessions,
countIf(day_ret = 0) AS flat_sessions,
count() AS sessions_total
FROM (
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d,
round((argMax(toFloat64(close), window_start) / argMin(toFloat64(open), window_start) - 1) * 100, 2) AS day_ret
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= toDateTime('2026-04-01 00:00:00')
AND window_start < toDateTime('2026-07-01 00:00:00')
AND (toHour(window_start) * 60 + toMinute(window_start)) BETWEEN 810 AND 1199
GROUP BY d
)36 ของจำนวน session ใน 62 ของไตรมาส ปิดตลาดในแดนบวกสำหรับ SPY เทียบกับ 26 ที่ปิดในแดนลบ ซึ่งแสดงถึงสัดส่วนหุ้นขาขึ้นที่สอดคล้องกับไตรมาสที่มีการเคลื่อนไหวเป็นเลขสองหลัก การนับจำนวนหุ้นรายตัว (ทั้งหุ้นขาขึ้นและหุ้นขาลง) ถูกจำกัดไว้ที่ระดับไตรมาส เนื่องจากผลการสแกนตลาดทั้งหมดเพียงครั้งเดียวมีจำนวนเกินกว่างบประมาณการดึงข้อมูลที่หน้านี้กำหนดไว้ (จากการวัดผลขณะจัดทำ) ดังนั้นความกว้างของตลาดแบบนับจำนวนเท่ากันจึงแสดงผลในระดับเดือน — โดยสัดส่วนหุ้นขาขึ้นและหุ้นขาลงของเดือน มิถุนายน ซึ่งมีจำนวนหุ้นที่ราคาลดลงมากกว่าหุ้นที่ราคาเพิ่มขึ้น ปรากฏอยู่ใน สรุปผลเดือน มิถุนายน — และมีการเปิดเผยขอบเขตข้อมูลไว้ที่นี่แทนที่จะใช้วิธีการตัดข้อมูลออกโดยไม่แจ้งให้ทราบ
ข้อมูลการซื้อขาย options รายเดือน
เรื่องราวโครงสร้างตลาดของไตรมาสนี้ ถูกนำเสนอผ่านมาตรวัดเดียวที่สามารถบอกรายละเอียดได้ นั่นคือการเปรียบเทียบเดือนต่อเดือนจากข้อมูลการซื้อขาย options ทั้งหมดที่จดทะเบียน ปริมาณการซื้อขายเพิ่มขึ้นในช่วงสิ้นไตรมาส โดยเพิ่มขึ้นจาก 1386.9 ล้านสัญญาในเดือนเมษายน เป็น 1477.9 ล้านสัญญาในเดือนมิถุนายน ซึ่งเป็นเดือนที่มีการซื้อขายสูงสุดในไตรมาส สัดส่วนของสัญญาที่มีวันหมดอายุภายในวันเดียว (0DTE) เพิ่มขึ้นตามกัน จาก 30.3% เป็น 34.3% โดยสัดส่วนในเดือนมิถุนายนถือเป็นระดับที่สูงที่สุดในครึ่งปีแรก และสามารถดูวิวัฒนาการตั้งแต่เดือนมกราคมเป็นต้นไปได้ใน สรุปภาพรวม H1
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-04-01 00:00:00')
AND window_start < toDateTime('2026-05-01 00:00:00')SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-05-01 00:00:00')
AND window_start < toDateTime('2026-06-01 00:00:00')SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-06-01 00:00:00')
AND window_start < toDateTime('2026-07-01 00:00:00')ต้นทุนในการซื้อขาย จากการสุ่มตัวอย่างรายเดือน
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT toDate(toTimeZone(sip_timestamp, 'America/New_York')) AS session,
round(quantileDeterministicIf(0.5)((toFloat64(ask_price) - toFloat64(bid_price)) / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2) * 10000, toUInt64(toUnixTimestamp64Micro(sip_timestamp)), bid_price > 0 AND ask_price >= bid_price), 3) AS med_spread_bps,
round(count() / 1e6, 2) AS quote_updates_m,
countIf(NOT (bid_price > 0 AND ask_price > 0 AND ask_price >= bid_price)) AS invalid_dropped
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'SPY'
AND ((sip_timestamp >= toDateTime64('2026-04-15 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-04-15 20:00:00', 9))
OR (sip_timestamp >= toDateTime64('2026-05-13 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-05-13 20:00:00', 9))
OR (sip_timestamp >= toDateTime64('2026-06-10 13:30:00', 9) AND sip_timestamp < toDateTime64('2026-06-10 20:00:00', 9)))
GROUP BY session
ORDER BY session ASCค่ามัธยฐานของ spread ที่เสนอซื้อขายของ SPY จากการสุ่มตัวอย่างเซสชันรายเดือนในไตรมาสนี้: 0.286 bps ในกลุ่มตัวอย่างเดือนเมษายน, 0.27 ในเดือนพฤษภาคม และ 0.409 ในเดือนมิถุนายน โดยกลุ่มตัวอย่างเดือนมิถุนายนมีค่ากว้างที่สุด ข้อมูล basis ที่เปิดเผย: เป็นการสุ่มตัวอย่างเซสชันที่มีการระบุป้ายกำกับเพียงเซสชันเดียว (วันพุธที่สองของแต่ละเดือน) ไม่ใช่ค่ามัธยฐานตลอดทั้งเดือน; ข้อมูลราคาที่ไม่ถูกต้องจะถูกนับรวมในกลุ่มตัวอย่างและไม่ถูกคัดออก
อัตราดอกเบี้ย: ไตรมาสที่เส้นอัตราผลตอบแทนปรับตัวเข้าสู่ภาวะคงที่
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT toString(date) AS d,
round(yield_10_year, 2) AS y10,
round((yield_10_year - yield_2_year) * 100, 0) AS spread_2s10s_bp
FROM global_markets.treasury_yields
WHERE date >= toDate('2026-04-01') AND date <= toDate('2026-06-30')
AND isNotNull(yield_10_year) AND isNotNull(yield_2_year)
ORDER BY dateส่วนต่างระหว่าง 2s10s เริ่มต้นไตรมาสที่ 52 basis points และปิดที่ 30 ซึ่งเป็นไตรมาสที่เส้นอัตราผลตอบแทนปรับตัวเข้าสู่ภาวะคงที่ โดยอัตราผลตอบแทนอายุ 10 ปี ปิดที่ 4.44% สำหรับรายละเอียดในระยะ 6 เดือนสามารถดูได้ใน สรุปผล H1 ในเชิงกลไก การที่เส้นอัตราผลตอบแทนปรับตัวเข้าสู่ภาวะคงที่หมายถึงอัตราผลตอบแทนระยะสั้นปรับตัวเข้าใกล้ระดับของอัตราผลตอบแทนระยะยาวมากขึ้น ทั้งนี้ ข้อมูลในตารางนี้ไม่สามารถระบุได้ว่าแนวโน้มดังกล่าวจะดำเนินต่อไปหรือไม่ และหน้านี้ไม่ได้มีวัตถุประสงค์เพื่อหาคำตอบดังกล่าว
ปฏิทินและมาตราส่วนรายไตรมาส
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
(SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date >= toDate('2026-04-01') AND ex_dividend_date <= toDate('2026-06-30')) AS ex_div_events,
(SELECT count() FROM global_markets.stocks_splits WHERE execution_date >= toDate('2026-04-01') AND execution_date <= toDate('2026-06-30')) AS splits,
(SELECT count() FROM global_markets.stocks_ipos WHERE listing_date >= toDate('2026-04-01') AND listing_date <= toDate('2026-06-30')) AS ipos,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date >= toDate('2026-04-01') AND filing_date <= toDate('2026-06-30')) AS q2_filings,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-04-30')) AS filings_apr30,
(SELECT uniqExact(accession_number) FROM global_markets.stocks_sec_edgar_index WHERE filing_date = toDate('2026-06-30')) AS filings_jun30มีบริษัทที่จดทะเบียนในไตรมาสนี้จำนวน 105 แห่ง, มีการแตกหุ้นจำนวน 435 ครั้ง และมีการจ่ายเงินปันผลจำนวน 15402 ครั้ง จำนวนการยื่นเอกสาร (235075) แสดงให้เห็นถึงช่องว่างของข้อมูลที่เปิดเผย เนื่องจากดัชนีมีข้อมูลการยื่นเอกสารเพียง 31 รายการ ณ วันที่ 30 มิถุนายน ซึ่งเป็นวันสุดท้ายของไตรมาส และมีเพียง 34 รายการ ณ วันที่ 30 เมษายน เมื่อเทียบกับข้อมูลหลายพันรายการในวันข้างเคียง ดังนั้นยอดรวมของไตรมาสจึงขาดข้อมูลของวันสิ้นเดือนไปสองเดือน และจะมีค่าต่ำกว่าความเป็นจริงจนกว่าระบบจะดึงข้อมูลย้อนหลังมาเติมเต็ม ช่องว่างของข้อมูล ณ วันสิ้นเดือนมีหมายเหตุประกอบการวินิจฉัยเฉพาะตัว
การเคลื่อนไหวของปฏิทินในช่วงสิ้นไตรมาส
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT m, ipos, splits, ex_divs FROM (
SELECT '2026-04' AS m,
(SELECT count() FROM global_markets.stocks_ipos WHERE listing_date >= toDate('2026-04-01') AND listing_date <= toDate('2026-04-30')) AS ipos,
(SELECT count() FROM global_markets.stocks_splits WHERE execution_date >= toDate('2026-04-01') AND execution_date <= toDate('2026-04-30')) AS splits,
(SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date >= toDate('2026-04-01') AND ex_dividend_date <= toDate('2026-04-30')) AS ex_divs, 1 AS o
UNION ALL SELECT '2026-05',
(SELECT count() FROM global_markets.stocks_ipos WHERE listing_date >= toDate('2026-05-01') AND listing_date <= toDate('2026-05-31')),
(SELECT count() FROM global_markets.stocks_splits WHERE execution_date >= toDate('2026-05-01') AND execution_date <= toDate('2026-05-31')),
(SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date >= toDate('2026-05-01') AND ex_dividend_date <= toDate('2026-05-31')), 2
UNION ALL SELECT '2026-06',
(SELECT count() FROM global_markets.stocks_ipos WHERE listing_date >= toDate('2026-06-01') AND listing_date <= toDate('2026-06-30')),
(SELECT count() FROM global_markets.stocks_splits WHERE execution_date >= toDate('2026-06-01') AND execution_date <= toDate('2026-06-30')),
(SELECT count() FROM global_markets.stocks_dividends WHERE ex_dividend_date >= toDate('2026-06-01') AND ex_dividend_date <= toDate('2026-06-30')), 3
) ORDER BY oกำหนดการของบริษัทต่างๆ มีความหนาแน่นมากขึ้นเมื่อเข้าสู่ช่วงปลายไตรมาส โดยมีการประกาศจ่ายเงินปันผล (ex-dividend) เพิ่มขึ้นในทุกเดือน ตั้งแต่ 3947 ในเดือนเมษายน ไปจนถึง 6651 ในเดือนมิถุนายน และมีการแตกหุ้นเพิ่มขึ้นในทิศทางเดียวกัน (129 ถึง 164) ในขณะที่การจดทะเบียนหุ้นใหม่ (listings) ยังคงทรงตัวตลอดทั้งสามเดือน โดยในไตรมาสนี้ลักษณะการเพิ่มขึ้นอย่างต่อเนื่องนั้นเกิดขึ้นกับเงินปันผล ไม่ใช่การทำ IPO
สรุปข้อมูลรายเซสชัน
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
(SELECT uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-04-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')) AS q2_sessions,
(SELECT uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-04-01 00:00:00') AND window_start < toDateTime('2026-05-01 00:00:00')) AS april_sessions,
(SELECT uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-05-01 00:00:00') AND window_start < toDateTime('2026-06-01 00:00:00')) AS may_sessions,
(SELECT uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-06-01 00:00:00') AND window_start < toDateTime('2026-07-01 00:00:00')) AS june_sessionsจำนวน 62 เซสชัน ซึ่งตรวจสอบจากแท่งเทียนที่เกิดขึ้นจริงแทนการคาดการณ์จากปฏิทิน: 21 ในเดือนเมษายน, 20 ในเดือนพฤษภาคม (Memorial Day), 21 ในเดือนมิถุนายน (Juneteenth) ข้อมูลสรุปรายเดือนและหลักฐานการปิดเซสชันสามารถดูได้ใน สรุปเดือนมิถุนายน และ คำอธิบายเกี่ยวกับวันหยุด
หมายเหตุข้อมูล
รายละเอียดข้อมูลทั้งหมด
- ข้อมูล Short interest สิ้นสุด ณ วันชำระราคา 15 มิถุนายน ตามข้อมูลที่มีขณะนี้ ข้อมูลสรุปสิ้นเดือนมิถุนายนกำลังอยู่ระหว่างการดำเนินการ; สรุปเดือนมิถุนายน มีการเปิดเผยข้อมูลฉบับเต็ม บทความนี้จะถูกสร้างขึ้นใหม่เมื่อข้อมูลดังกล่าวพร้อมใช้งาน
- ช่องว่างระหว่างดัชนีและการยื่นรายงานสิ้นเดือน มีการระบุไว้ในเนื้อหา: วันที่ 30 มิถุนายน และ 30 เมษายน อยู่ภายในไตรมาสนี้ และวันที่ 31 มีนาคม มีลักษณะเดียวกัน — ทุกสิ้นเดือนของปี 2026 ที่วันสุดท้ายของเดือนตรงกับวันธรรมดาจะมีข้อมูลเกือบเป็นศูนย์ บันทึกการวินิจฉัย มีหลักฐานและผลการวินิจฉัยที่ระบุขอบเขตไว้
- Microstructure (กลไกในระดับ tick) ไม่ได้ถูกนำมาแสดงในที่นี้ — การวิเคราะห์เจาะลึก 29 มิถุนายน มีการวิเคราะห์โครงสร้างข้อมูลการซื้อขาย (tape anatomy) ของทั้งเซสชัน
- การยกเว้นหุ้นที่มีปริมาณการซื้อขายสูงสุด: มีการยกเว้นรายการหุ้นที่มีสัญลักษณ์ซ้ำกันหนึ่งรายการในเดือนมิถุนายน เนื่องจากอยู่ระหว่างการตรวจสอบสถานะนิติบุคคล
ระเบียบวิธีวิจัย
- ช่วงเวลาคือ 1 เมษายน – 30 มิถุนายน 2026 — มีทั้งหมด 62 sessions ซึ่งตรวจสอบแล้วจากแท่งเทียนที่ปรากฏ ผลตอบแทนรายไตรมาสคำนวณจากราคาเปิดช่วงเวลาทำการปกติจนถึงราคาปิดช่วงเวลาทำการปกติสุดท้ายภายในช่วงเวลาดังกล่าว ส่วนการเปรียบเทียบกับ Q1 จะถูกคำนวณใหม่แบบเรียลไทม์ด้วยนิยามเดียวกัน
- ข้อมูลเวลาจัดเก็บในรูปแบบ UTC และกรองด้วยขอบเขต UTC ดั้งเดิม; ช่วงเวลาทำการปกติคือ 13:30–20:00 UTC ตลอดทั้งไตรมาส (EDT) ปริมาณการซื้อขายในรูปของมูลค่าดอลลาร์คำนวณจากราคาปิดรายนาทีคูณด้วยปริมาณการซื้อขายรายนาทีในช่วงเวลาทำการปกติ ข้อมูลย้อนหลังหลายปีจะกรองช่วงเวลาทำการตามเวลามาตรฐานฝั่งตะวันออก (Eastern wall clock) (แปลงค่าตามแต่ละแถว — เป็นมาตรฐานที่รองรับ DST ตลอดหลายทศวรรษ) และกำหนดขอบเขตบนไว้ที่จุดสิ้นสุดของไตรมาสนี้; การตรวจสอบความลึกของข้อมูล (ข้อมูลรายนาทีจนถึง กันยายน 2003) ระบุไว้ในระเบียบวิธีวิจัยของ สรุป H1
- การสร้างข้อมูลดำเนินการผ่านเส้นทางอ่านอย่างเดียว (read-only path) ที่มีการควบคุม; หน้าเว็บสาธารณะจะไม่มีการเรียกใช้ข้อมูลสด สถานะคลังข้อมูล ณ วันที่ 5 กรกฎาคม 2026
นี่คือฉบับแรกของรายงานสรุปรายไตรมาสมาตรฐาน; ฉบับของ Q3 จะมีการเชื่อมโยงกลับมาที่นี่ รายละเอียดรายเดือน: มิถุนายน ครึ่งปีที่เสร็จสิ้นในไตรมาสนี้: H1 2026