ช่องว่างราคาหุ้นถูกปิดเสมอจริงหรือไม่ วิเคราะห์จากข้อมูล
ช่องว่างราคาหุ้นไม่ได้ถูกปิดเสมอไปตามกรอบเวลาที่กำหนด ตรวจสอบอัตราการปิดช่องว่างในระดับวัน 5 20 และ 60 เซสชันสำหรับหุ้นขนาดใหญ่ พร้อมเปิดเผยคำสั่ง SQL ที่ใช้ในการวิเคราะห์ข้อมูลทั้งหมด
ช่องว่างราคา (Gap) ของหุ้นจะถูกปิดเสมอไปหรือไม่ คำตอบคือไม่ หากพิจารณาภายในกรอบเวลาที่สั้นพอสำหรับการเทรด และข้ออ้างดังกล่าวจะฟังดูเป็นจริงก็ต่อเมื่อไม่มีการระบุระยะเวลาที่ชัดเจน ช่องว่างราคาคือระยะห่างระหว่างราคาเปิดของวันนี้กับราคาปิดของช่วงการซื้อขายปกติเมื่อวานนี้ ส่วนการปิดช่องว่าง (Fill) คือช่วงเวลาที่ราคาเคลื่อนที่กลับไปแตะระดับราคาปิดก่อนหน้า ข้อโต้แย้งทั้งหมดจึงขึ้นอยู่กับว่าผู้อ่านเต็มใจที่จะรอคอยนานเพียงใด
นิยามของช่องว่างราคาและการปิดช่องว่าง
ช่องว่างราคาคำนวณจากราคาเปิดเทียบกับราคาปิดก่อนหน้า หากเซสชันเมื่อวานปิดที่ราคาหนึ่งและวันนี้เปิดที่อีกราคาหนึ่ง ส่วนต่างที่เกิดขึ้นคือช่องว่างราคา ไม่ใช่ระยะห่างจากราคาสูงสุดหรือต่ำสุดระหว่างวันของเมื่อวาน ซึ่งนั่นเป็นเป้าหมายที่ต่างออกไปและง่ายกว่ามาก การสลับนิยามเช่นนี้ทำให้ "ช่องว่างราคา" กลายเป็นสิ่งที่ปิดตัวลงได้ก่อนมื้อเที่ยงในวันปกติ ช่องว่างขนาดเล็กปรากฏขึ้นเกือบทุกเซสชัน ไม่ว่าจะเป็นการซื้อขายในเขตเวลาอื่น การปรับเปลี่ยนดัชนี ข่าวเฉพาะตัวหุ้น หรือการปรับราคาจากเครื่องหมาย XD ซึ่งล้วนส่งผลต่อราคาที่เหมาะสม (fair price) ในขณะที่ตลาดสหรัฐฯ ปิดทำการ ทำไมหุ้นถึงเกิดช่องว่างราคาข้ามคืน ได้อธิบายที่มาของการปรับราคาข้ามคืนเหล่านี้ไว้
การปิดช่องว่างคือช่วงเวลาแรกที่หุ้นเคลื่อนที่กลับไปแตะราคาปิดก่อนหน้า นิยามนี้จะไม่สมบูรณ์หากไม่มีการกำหนดเส้นตาย หากพิจารณาในกรอบเวลาที่ไม่จำกัด หุ้นที่มีสภาพคล่องสูงเกือบทุกตัวจะเคลื่อนที่ผ่านระดับราคาที่ผู้อ่านระบุไว้ ณ จุดใดจุดหนึ่ง ซึ่งทำให้คำกล่าวที่ว่า "ช่องว่างราคาจะถูกปิดเสมอ" เป็นสิ่งที่พิสูจน์ไม่ได้มากกว่าจะเป็นความจริง ตัวเลขทุกตัวด้านล่างนี้จึงมาพร้อมกับกรอบเวลาที่ระบุไว้ชัดเจน
ข้อมูลชุดนี้ใช้ตัวอย่างหุ้นขนาดใหญ่ (large-cap) ในสหรัฐฯ จำนวนแปดตัว โดยนับวันที่มีช่องว่างราคาตั้งแต่เดือนมกราคม 2021 ถึงเดือนกุมภาพันธ์ 2026 และทดสอบการปิดช่องว่างเทียบกับราคาสูงสุดและต่ำสุดในกรอบเวลาหนึ่งนาทีของช่วงการซื้อขายปกติ โดยตัดช่องว่างราคาที่น้อยกว่า 0.25% ออกเนื่องจากถือเป็นค่าความคลาดเคลื่อนจากการปัดเศษ
ช่องว่างราคาของหุ้นถูกปิดภายในวันเดียวกันเสมอไปหรือไม่
เริ่มต้นที่ขนาดของช่องว่าง โดยจัดกลุ่มช่องว่างตามขนาด แล้วพิจารณาว่าราคาปิดก่อนหน้าถูกแตะอีกครั้งก่อนจบเซสชันนั้นหรือไม่
SQL เบื้องหลังตัวเลขแต่ละตัว
WITH sessions AS
(
SELECT
ticker,
toDate(toTimeZone(window_start, 'America/New_York')) AS d,
argMin(toFloat64(open), window_start) AS session_open,
argMax(toFloat64(close), window_start) AS session_close,
toFloat64(max(high)) AS session_high,
toFloat64(min(low)) AS session_low
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'AMZN', 'JPM', 'KO', 'WMT', 'XOM')
AND window_start >= '2021-01-01'
AND window_start < '2026-07-01'
AND (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
GROUP BY ticker, d
),
gapped AS
(
SELECT
d,
session_open,
session_high,
session_low,
lagInFrame(session_close) OVER (PARTITION BY ticker ORDER BY d ASC
ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prior_close
FROM sessions
),
measured AS
(
SELECT
abs(100 * (session_open / prior_close - 1)) AS gap_pct,
toUInt8(if(session_open > prior_close,
session_low <= prior_close,
session_high >= prior_close)) AS filled_same_session
FROM gapped
WHERE prior_close > 0
AND d <= toDate('2026-02-28')
AND abs(100 * (session_open / prior_close - 1)) >= 0.25
)
SELECT
multiIf(gap_pct < 0.5, '0.25 to 0.5%',
gap_pct < 1, '0.5 to 1%',
gap_pct < 2, '1 to 2%',
gap_pct < 4, '2 to 4%',
'4% or more') AS gap_bucket,
count() AS gap_days,
round(100 * avg(filled_same_session), 1) AS same_session_fill_pct
FROM measured
GROUP BY gap_bucket
ORDER BY min(gap_pct) ASCช่องว่างราคาขนาดเล็กที่สุดในกลุ่มตัวอย่าง คือ 0.25% ถึง 0.5% มีการปิดตัวลงภายในเซสชันเดียวกันที่ 74.6% ของจำนวนครั้งทั้งหมดจาก 2381 ครั้ง ส่วนช่องว่างราคาที่ 4% ขึ้นไปมีการปิดตัวลงภายในเซสชันเดียวกันที่ 14.8% ของจำนวนครั้งทั้งหมด แนวโน้มที่ลดลงในแผนภูมิคือบทเรียนสำคัญ ยิ่งช่องว่างมีขนาดเล็ก หุ้นยิ่งมีโอกาสเคลื่อนที่กลับไปแตะระดับเดิมระหว่างวันบ่อยครั้ง ซึ่งหมายความว่าช่องว่างขนาดเล็กเป็นเพียงสัญญาณรบกวน (noise) และสัญญาณรบกวนมักจะย้อนกลับ
ใช้เวลานานเท่าใดในการปิดช่องว่างราคา
หากขยายเส้นตายออกไป อัตราการปิดช่องว่างย่อมสูงขึ้น กรอบเวลาที่ยาวขึ้นจะเพิ่มจำนวนการปิดช่องว่างและไม่มีทางลดลง คำถามคือมีจำนวนเท่าใดที่เกิดขึ้นช้าเกินกว่าจะเป็นประโยชน์
SQL เบื้องหลังตัวเลขแต่ละตัว
WITH sessions AS
(
SELECT
ticker,
toDate(toTimeZone(window_start, 'America/New_York')) AS d,
argMin(toFloat64(open), window_start) AS session_open,
argMax(toFloat64(close), window_start) AS session_close,
toFloat64(max(high)) AS session_high,
toFloat64(min(low)) AS session_low
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'AMZN', 'JPM', 'KO', 'WMT', 'XOM')
AND window_start >= '2021-01-01'
AND window_start < '2026-07-01'
AND (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
GROUP BY ticker, d
),
paths AS
(
SELECT
d,
session_open,
session_high,
session_low,
lagInFrame(session_close) OVER (PARTITION BY ticker ORDER BY d ASC
ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prior_close,
min(session_low) OVER (PARTITION BY ticker ORDER BY d ASC ROWS BETWEEN CURRENT ROW AND 4 FOLLOWING) AS low_5,
max(session_high) OVER (PARTITION BY ticker ORDER BY d ASC ROWS BETWEEN CURRENT ROW AND 4 FOLLOWING) AS high_5,
min(session_low) OVER (PARTITION BY ticker ORDER BY d ASC ROWS BETWEEN CURRENT ROW AND 19 FOLLOWING) AS low_20,
max(session_high) OVER (PARTITION BY ticker ORDER BY d ASC ROWS BETWEEN CURRENT ROW AND 19 FOLLOWING) AS high_20,
min(session_low) OVER (PARTITION BY ticker ORDER BY d ASC ROWS BETWEEN CURRENT ROW AND 59 FOLLOWING) AS low_60,
max(session_high) OVER (PARTITION BY ticker ORDER BY d ASC ROWS BETWEEN CURRENT ROW AND 59 FOLLOWING) AS high_60
FROM sessions
),
gaps AS
(
SELECT
session_open > prior_close AS gap_up,
prior_close,
session_low,
session_high,
low_5,
high_5,
low_20,
high_20,
low_60,
high_60
FROM paths
WHERE prior_close > 0
AND d <= toDate('2026-02-28')
AND abs(100 * (session_open / prior_close - 1)) >= 1
),
flags AS
(
SELECT arrayJoin([
(1, '1 session', toUInt8(if(gap_up, session_low <= prior_close, session_high >= prior_close))),
(2, '5 sessions', toUInt8(if(gap_up, low_5 <= prior_close, high_5 >= prior_close))),
(3, '20 sessions', toUInt8(if(gap_up, low_20 <= prior_close, high_20 >= prior_close))),
(4, '60 sessions', toUInt8(if(gap_up, low_60 <= prior_close, high_60 >= prior_close)))
]) AS f
FROM gaps
)
SELECT
tupleElement(f, 2) AS horizon,
count() AS gaps_measured,
round(100 * avg(tupleElement(f, 3)), 1) AS filled_pct
FROM flags
GROUP BY horizon
ORDER BY min(tupleElement(f, 1)) ASCจากช่องว่างราคา 1% ขึ้นไปจำนวน 2191 ครั้ง มี 34% ที่ปิดตัวลงภายในเซสชันเดียวกัน และ 88.7% ที่ปิดตัวลงภายใน 60 sessions ตัวเลขหลังนี้มักถูกนำไปอ้างอิงโดยละกรอบเวลาไว้ หกสิบเซสชันคิดเป็นเวลาประมาณสามเดือนของการซื้อขาย ซึ่งเป็นการถือครองที่ยาวนานสำหรับสถานะที่ตั้งอยู่บนสมมติฐานของความผิดปกติเพียงวันเดียว และช่องว่างที่ปิดตัวลงในวันที่ 47 หลังจากที่หุ้นเคลื่อนที่ไปในทิศทางตรงกันข้ามไกลมากแล้ว ก็ยังคงถูกนับว่าเป็นการปิดช่องว่างในสถิตินี้
ช่องว่างจากสัญญาณรบกวนและช่องว่างจากข้อมูลข่าวสารคือคนละกลุ่มกัน
ช่องว่างราคาในวันที่ตลาดเงียบเหงาด้วยปริมาณการซื้อขายปกติถือเป็นการปรับราคาเล็กน้อย แต่ช่องว่างที่เกิดจากข่าวผลประกอบการหรือการเข้าซื้อกิจการนั้นมาพร้อมกับการเปลี่ยนแปลงมูลค่าที่แท้จริงของบริษัท ซึ่งไม่มีราคาเก่าให้ย้อนกลับไปหา ปริมาณการซื้อขาย (volume) สามารถแยกสองกรณีนี้ออกจากกันได้ดี โดยการปรับราคาที่ตลาดต้องการตอบสนองมักมีปริมาณการซื้อขายสูงกว่าปกติหลายเท่า
SQL เบื้องหลังตัวเลขแต่ละตัว
WITH sessions AS
(
SELECT
ticker,
toDate(toTimeZone(window_start, 'America/New_York')) AS d,
argMin(toFloat64(open), window_start) AS session_open,
argMax(toFloat64(close), window_start) AS session_close,
toFloat64(max(high)) AS session_high,
toFloat64(min(low)) AS session_low,
sum(toFloat64(volume)) AS session_volume
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'AMZN', 'JPM', 'KO', 'WMT', 'XOM')
AND window_start >= '2021-01-01'
AND window_start < '2026-07-01'
AND (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
GROUP BY ticker, d
),
paths AS
(
SELECT
d,
session_open,
session_high,
session_low,
session_volume,
lagInFrame(session_close) OVER (PARTITION BY ticker ORDER BY d ASC
ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prior_close,
avg(session_volume) OVER (PARTITION BY ticker ORDER BY d ASC ROWS BETWEEN 21 PRECEDING AND 2 PRECEDING) AS normal_volume,
min(session_low) OVER (PARTITION BY ticker ORDER BY d ASC ROWS BETWEEN CURRENT ROW AND 19 FOLLOWING) AS low_20,
max(session_high) OVER (PARTITION BY ticker ORDER BY d ASC ROWS BETWEEN CURRENT ROW AND 19 FOLLOWING) AS high_20
FROM sessions
),
measured AS
(
SELECT
session_volume / normal_volume AS volume_ratio,
toUInt8(if(session_open > prior_close, session_low <= prior_close, session_high >= prior_close)) AS filled_same_session,
toUInt8(if(session_open > prior_close, low_20 <= prior_close, high_20 >= prior_close)) AS filled_20_sessions
FROM paths
WHERE prior_close > 0
AND normal_volume > 0
AND d >= toDate('2021-03-01')
AND d <= toDate('2026-02-28')
AND abs(100 * (session_open / prior_close - 1)) >= 1
)
SELECT
multiIf(volume_ratio < 1.5, 'Under 1.5x normal',
volume_ratio < 3, '1.5x to 3x normal',
'3x or more') AS volume_regime,
count() AS gap_days,
round(100 * avg(filled_same_session), 1) AS same_session_fill_pct,
round(100 * avg(filled_20_sessions), 1) AS within_20_sessions_fill_pct
FROM measured
WHERE isFinite(volume_ratio)
GROUP BY volume_regime
ORDER BY min(volume_ratio) ASCช่องว่างราคา 1% ขึ้นไปที่มีปริมาณการซื้อขายต่ำกว่า 1.5 เท่าของปริมาณปกติ มีการปิดตัวลงภายในเซสชันเดียวกันที่ 35.9% ของจำนวนครั้งทั้งหมด ในขณะที่ช่องว่างขนาดเดียวกันที่มีปริมาณการซื้อขายสูงกว่าปกติสามเท่าขึ้นไป มีการปิดตัวลงภายในเซสชันเดียวกันที่ 15.3% และ 45.8% ภายใน 20 เซสชัน จากจำนวนทั้งหมด 59 ครั้ง กลุ่มที่มีปริมาณการซื้อขายหนาแน่นคือกลุ่มที่เกิดจากข่าวผลประกอบการและดีลธุรกิจ การนำทั้งสองกลุ่มมาหาค่าเฉลี่ยรวมกันจึงไม่สามารถอธิบายลักษณะของกลุ่มใดกลุ่มหนึ่งได้เลย
ทำไมช่วงนาทีแรกของเซสชันถึงบิดเบือนสถิติช่องว่างราคา
การปิดช่องว่างที่บันทึกไว้ตอน 9:31 น. เป็นสิ่งที่เปราะบาง ราคาเปิดเกิดจากการประมูล (auction) ซึ่งเป็นการจับคู่คำสั่งซื้อขายแบบกลุ่มที่กำหนดราคาเดียวสำหรับทุกคำสั่งที่ค้างมาจากข้ามคืน โดยคำอธิบาย การประมูลช่วงเปิดตลาด ของเราได้อธิบายกลไกนี้ไว้ ในช่วงนาทีหลังจากนั้น สเปรด (spread) จะกว้างที่สุดของวัน และการซื้อขายเพียงรายการเดียวอาจทำให้เกิดราคาสูงสุดหรือต่ำสุดที่ไม่มีการซื้อขายจริงในปริมาณที่มีนัยสำคัญ สเปรดกว้างขึ้นในช่วงเปิดตลาด ได้อธิบายเหตุผลว่าทำไมราคาเสนอซื้อขายถึงเบาบางในช่วงเวลานั้น
แผนภูมิด้านล่างแสดงลักษณะของข้อมูลการซื้อขายในตะกร้าหุ้นนี้ โดยแสดงค่าเฉลี่ยช่วงราคาสูงสุด-ต่ำสุดในกรอบหนึ่งนาที (หน่วยเป็น basis points โดยหนึ่ง basis point เท่ากับหนึ่งในร้อยของเปอร์เซ็นต์) แบ่งตามช่วงเวลา 15 นาที ตลอดปี 2025
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
formatDateTime(toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 15 MINUTE), '%H:%i') AS et_time,
round(10000 * avg(toFloat64(high) / toFloat64(low) - 1), 1) AS avg_range_bps,
round(avg(toFloat64(volume)) / 1000, 1) AS avg_volume_k
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'AMZN', 'JPM', 'KO', 'WMT', 'XOM')
AND window_start >= '2025-01-01'
AND window_start < '2026-01-01'
AND toFloat64(low) > 0
AND (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
GROUP BY et_time
ORDER BY et_time ASCช่วงเปิดตลาดมีค่าเฉลี่ยช่วงราคาอยู่ที่ 24.4 bps ต่อนาที เทียบกับ 6.9 bps ในช่วง 12:30 โดยมีปริมาณการซื้อขาย 303.9 พันหุ้นต่อนาที เทียบกับ 69.6 พันหุ้น การปิดช่องว่างที่เกิดขึ้นในช่วงนาทีแรกจึงตั้งอยู่บนราคาที่เชื่อถือได้น้อยที่สุดของวัน ตัวเลขการปิดช่องว่างภายในวันเดียวกันข้างต้นได้รวมนาทีเหล่านี้ไว้ด้วย ซึ่งทำให้ค่าสถิติสูงเกินจริงเล็กน้อย และข้อควรระวังนี้มีผลกับสถิติการปิดช่องว่างภายในวันเดียวกันทุกรายการ
สิ่งที่ควรตรวจสอบก่อนตัดสินใจเทรดจากช่องว่างราคา
- กรอบเวลา: อัตราการปิดช่องว่างที่ไม่มีการกำหนดเส้นตายไม่ใช่สถิติที่นำไปใช้ได้จริง
- กลุ่มตัวอย่าง: ต้องดูว่ามีการแยกช่องว่างจากข่าวสารออกจากช่องว่างในวันปกติหรือไม่ และใช้วิธีใดในการแบ่งแยก
- การวัดผล: ต้องดูว่าการปิดช่องว่างทดสอบกับช่วงราคาที่มีการซื้อขายจริงหรือไม่ และมีการนับนาทีแรกของเซสชันรวมอยู่ด้วยหรือไม่
- ผู้รอดชีวิต: ต้องดูว่ากลุ่มตัวอย่างมีเฉพาะหุ้นที่ยังคงซื้อขายอยู่ในปัจจุบันหรือไม่ ซึ่งเป็นการลบช่องว่างที่ไม่เคยถูกปิดออกไปโดยปริยาย
คำกล่าวที่ถูกต้องตามความเป็นจริงนั้นแคบกว่าคำโฆษณา ช่องว่างขนาดเล็กที่มีปริมาณการซื้อขายปกติมักจะย้อนกลับบ่อยและรวดเร็ว ส่วนช่องว่างขนาดใหญ่ที่มีปริมาณการซื้อขายหนาแน่นคือการปรับราคาใหม่ซึ่งมักจะคงอยู่เป็นเวลาหลายเดือน สำหรับมุมมองสดว่าหุ้นตัวใดกำลังเกิดช่องว่างราคา หน้า หุ้นที่มีการเคลื่อนไหวมากที่สุดในสัปดาห์นี้ จะติดตามข้อมูลรายสัปดาห์ และ ตลาดฟื้นตัวจากภาวะตลาดพังทลายอย่างไร จะใช้หลักการกำหนดกรอบเวลาเดียวกันนี้กับกรณีดัชนีปรับตัวลดลง
คำถามที่พบบ่อย
ช่องว่างราคาของหุ้นจะถูกปิดเสมอไปหรือไม่
ไม่ ในกลุ่มตัวอย่างนี้ 88.7% ของช่องว่างราคา 1% ขึ้นไปเคลื่อนที่กลับไปแตะราคาปิดก่อนหน้าภายใน 60 sessions ซึ่งหมายความว่ายังมีสัดส่วนที่แท้จริงของช่องว่างที่ไม่ถูกปิดหลังจากผ่านไปประมาณสามเดือนของการซื้อขาย คำว่า "เสมอไป" จะใช้ได้ก็ต่อเมื่อไม่มีการจำกัดเวลา ซึ่งในจุดนั้นมันจะกลายเป็นสิ่งที่ทดสอบไม่ได้
ใช้เวลานานเท่าใดในการปิดช่องว่างราคา
ขึ้นอยู่กับช่องว่างนั้นๆ ในที่นี้ 34% ของช่องว่างราคา 1% ขึ้นไปปิดตัวลงภายในเซสชันเดียวกัน และส่วนที่เหลือจะค่อยๆ ปิดตัวลงในอีกหลายสัปดาห์หรือหลายเดือนถัดมา ช่องว่างขนาดเล็กมักกระจุกตัวอยู่ในช่วงวันเดียวกัน ส่วนช่องว่างที่มีปริมาณการซื้อขายหนาแน่นจะใช้เวลานานที่สุด
อะไรคือความแตกต่างระหว่างช่องว่างราคาปกติ (common gap) และช่องว่างราคาแบบ breakaway (breakaway gap)
คำศัพท์ทางเทคนิคแบ่งช่องว่างราคาตามบริบท ช่องว่างราคาปกติจะเปิดในวันที่ตลาดเงียบเหงาด้วยปริมาณการซื้อขายปกติและไม่มีข่าวเฉพาะเจาะจง ในขณะที่ช่องว่างราคาแบบ breakaway จะเปิดด้วยปริมาณการซื้อขายที่หนาแน่นพร้อมกับข้อมูลข่าวสารใหม่ มักเป็นการทะลุออกจากกรอบราคาที่หุ้นเคยแกว่งตัวมาสักระยะหนึ่ง การแบ่งกลุ่มด้วยปริมาณการซื้อขายในตารางด้านบนเป็นวิธีวัดความแตกต่างนี้ที่จับต้องได้
ทำไมสถิติการปิดช่องว่างราคาถึงแตกต่างกันมากในแต่ละแหล่งข้อมูล
ปัจจัยสี่ประการที่ทำให้ตัวเลขต่างกันมาก ได้แก่ กรอบเวลาในการปิดช่องว่าง, ตะกร้าหุ้นที่ใช้, ช่วงเวลาที่ครอบคลุม และการวัดช่องว่างจากราคาปิดก่อนหน้าหรือจากราคาสูงสุด-ต่ำสุดก่อนหน้า อัตราการปิดช่องว่างที่ขาดปัจจัยใดปัจจัยหนึ่งในสี่ประการนี้ไม่สามารถนำมาเปรียบเทียบกันได้
วิธีการวัดตัวเลขเหล่านี้
เซสชันถูกสร้างขึ้นจากแท่งเทียนหนึ่งนาทีภายในเวลาซื้อขายปกติของนิวยอร์ก ราคาเปิดคือราคาเปิดของแท่งเทียนแรกในช่วงการซื้อขายปกติ ราคาปิดคือราคาปิดของแท่งเทียนสุดท้าย และราคาสูงสุด-ต่ำสุดของวันคือจุดสูงสุดและต่ำสุดของแท่งเทียนเหล่านั้น ช่องว่างราคาแต่ละรายการวัดเทียบกับราคาปิดของเซสชันก่อนหน้าของหุ้นตัวนั้นๆ
กรอบเวลา 5, 20 และ 60 เซสชันรวมถึงวันที่มีช่องว่างราคาด้วย วันที่มีช่องว่างราคาสิ้นสุดที่สิ้นเดือนกุมภาพันธ์ 2026 ในขณะที่ข้อมูลการซื้อขายดำเนินไปจนถึงเดือนมิถุนายน 2026 ดังนั้นช่องว่างทุกรายการในแผงข้อมูลกรอบเวลาจึงมีเซสชันถัดไปรองรับอย่างน้อยหกสิบเซสชัน และไม่มีรายการใดถูกระบุว่าไม่ถูกปิดเนื่องจากขาดข้อมูล
ปริมาณการซื้อขายปกติในแผงที่สามคือค่าเฉลี่ยของปริมาณการซื้อขายในช่วงการซื้อขายปกติ 20 เซสชันก่อนหน้าวันที่มีช่องว่างราคา 2 วัน เพื่อไม่ให้วันที่มีช่องว่างราคาและวันก่อนหน้าถูกนำไปรวมเป็นเกณฑ์มาตรฐานของตัวเอง
ตะกร้าหุ้นประกอบด้วยหุ้นขนาดใหญ่ที่มีสภาพคล่องสูงแปดตัว หุ้นที่มีสภาพคล่องต่ำกว่าจะเกิดช่องว่างราคาบ่อยกว่าและมีลักษณะการปิดที่ต่างออกไป ดังนั้นอัตราเหล่านี้จึงไม่สามารถนำไปใช้กับหุ้นขนาดเล็กได้โดยตรงหากไม่ได้ทำการทดสอบใหม่กับหุ้นเหล่านั้น
แผงข้อมูลทุกรายการที่นี่มาพร้อมกับคำสั่ง SQL ที่ใช้จริง หากต้องการทดสอบแบบเดียวกันกับหุ้นที่คุณติดตาม สามารถสอบถามเป็นภาษาอังกฤษธรรมดาได้ที่ Strasmore terminal