Strasmore Research
การเรียนรู้ Matt Connorโดย Matt Connor · อัปเดตเมื่อ 2026-08-08

ความแตกต่างของข้อมูลตลาด Level 1 Level 2 และ Level 3

เปรียบเทียบความแตกต่างของข้อมูลตลาด Level 1 Level 2 และ Level 3 อธิบายผ่านตัวอย่างหน้าจอคำสั่งซื้อ ทั้งราคาที่ดีที่สุด ความลึกของราคา และลำดับคำสั่งซื้อที่นักลงทุนรายย่อยมักพลาดไป

ข้อมูลตลาดระดับ Level 1 และ Level 2 เป็นประเด็นเรื่องปริมาณข้อมูลในสมุดคำสั่งซื้อ (order book) ที่คุณสามารถเข้าถึงได้ โดย Level 1 คือส่วนบนสุดของสมุดคำสั่งซื้อ ประกอบด้วยราคาเสนอซื้อที่ดีที่สุด (best bid) ราคาเสนอขายที่ดีที่สุด (best offer) ปริมาณที่เสนอ ณ ราคานั้นๆ และการซื้อขายล่าสุด ส่วน Level 2 คือข้อมูลเชิงลึกที่อยู่ถัดลงไปจากบรรทัดบนสุด แสดงทุกระดับราคาที่มีการเสนอซื้อขายพร้อมปริมาณรวมที่รออยู่ ณ ระดับราคานั้นๆ สำหรับ Level 3 จะแสดงคำสั่งซื้อขายแต่ละรายการแยกกันโดยมีรหัสระบุเฉพาะ ทั้งนี้ ข้อมูลแต่ละระดับจะเป็นส่วนขยายของระดับที่ต่ำกว่าเสมอ

ข้อมูลตลาด Level 1 คืออะไร?

Level 1 หรือที่เรียกว่า top of book ตอบคำถามเพียงข้อเดียวคือ ราคาที่ดีที่สุดในขณะนี้คือเท่าใดและมีปริมาณเสนอซื้อขายอยู่ที่เท่าใด สำหรับหุ้นในสหรัฐฯ ข้อมูลที่รวบรวมมาในบรรทัดนี้เรียกว่า national best bid and offer (NBBO) ซึ่งเราได้อธิบายไว้อย่างละเอียดใน คู่มือเกี่ยวกับ NBBO บันทึกข้อมูล Level 1 จะประกอบด้วยราคาเสนอซื้อที่ดีที่สุด ราคาเสนอขายที่ดีที่สุด ปริมาณที่แสดงในแต่ละฝั่ง และในส่วนของการซื้อขายจะแสดงรายการซื้อขายล่าสุด (last print) พร้อมปริมาณ โดยจะไม่มีข้อมูลเกี่ยวกับราคาที่ดีที่สุดลำดับถัดไปและไม่มีข้อมูลว่าใครเป็นผู้เสนอราคา

ตัวเลขสองชุดที่มีบทบาทสำคัญในระดับนี้คือส่วนต่างราคา (spread) ในหน่วยเซนต์ และส่วนต่างราคาเดียวกันในหน่วย basis points โดยหนึ่ง basis point เท่ากับหนึ่งในร้อยของหนึ่งเปอร์เซ็นต์ แผงข้อมูลด้านล่างแสดงทั้งสองค่าสำหรับหุ้นขนาดใหญ่หนึ่งตัวในช่วงการซื้อขายเดียว ตั้งแต่ช่วง premarket เปิดตอน 4:00 น. ET ไปจนถึงสิ้นสุดการซื้อขายหลังตลาดปิดตอน 20:00 น. ET

คำสั่งดึงข้อมูลLevel 1 top of book: ส่วนต่างราคาเสนอซื้อขายตลอดช่วงการซื้อขาย (AAPL, 17 มิถุนายน 2026)
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
    formatDateTime(
        toStartOfInterval(toTimeZone(sip_timestamp, 'America/New_York'), INTERVAL 30 MINUTE),
        '%H:%i'
    )                                                                      AS et_time,
    round(avg(toFloat64(ask_price) - toFloat64(bid_price)) * 100, 2)       AS spread_cents,
    round(avg((toFloat64(ask_price) - toFloat64(bid_price))
              / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2)) * 10000, 2) AS spread_bps
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'AAPL'
  AND sip_timestamp >= '2026-06-17 08:00:00'
  AND sip_timestamp <  '2026-06-18 00:00:00'
  AND bid_price > 0
  AND ask_price > bid_price
  AND (toFloat64(ask_price) - toFloat64(bid_price)) / toFloat64(bid_price) < 0.05
GROUP BY et_time
ORDER BY et_time
Run this yourself

ณ เวลา 04:00 ET ส่วนต่างราคาเฉลี่ยที่เสนออยู่ที่ 37.38 เซนต์ หรือ 12.51 basis points ส่วนช่วงเวลาสุดท้ายในแผงข้อมูลคือ 19:30 ET มีค่าเฉลี่ยอยู่ที่ 16.85 เซนต์ หรือ 5.67 basis points โดยมีการแบ่งช่วงเวลาละ 32 นาทีตลอดทั้งวัน ทุกจุดบนกราฟนั้นคือข้อมูล Level 1 ซึ่งเป็นการวัดค่าบรรทัดเดียวของสมุดคำสั่งซื้อซ้ำแล้วซ้ำเล่า

ข้อมูลตลาด Level 2 คืออะไร?

Level 2 หรือที่เรียกว่า market by price หรือ depth of book แสดงลำดับราคาที่อยู่ใต้บรรทัดบนสุด สำหรับแต่ละระดับราคา ข้อมูลจะรวมปริมาณทั้งหมดที่รออยู่ ณ ราคานั้น เช่น มีคำสั่งซื้อ 4,000 หุ้นที่ราคา $49.98, 1,200 หุ้นที่ $49.97, 900 หุ้นที่ $49.96 และ 2,500 หุ้นที่ $49.95 โดยฝั่งเสนอขายก็จะมีลักษณะเป็นภาพสะท้อนเช่นเดียวกัน รูปแบบนี้คือสิ่งที่นักเทรดเรียกว่าความลึก (depth)

สิ่งที่ Level 2 ไม่ได้เปิดเผยคือองค์ประกอบของคำสั่งซื้อขาย ปริมาณ 4,000 หุ้นที่ราคา $49.98 อาจมาจากคำสั่งซื้อของสถาบันเพียงรายการเดียวหรือคำสั่งซื้อรายย่อยสี่สิบรายการก็ได้ ซึ่งลำดับราคาจะแสดงผลเหมือนกันไม่ว่ากรณีใดก็ตาม

รูปแบบที่เกี่ยวข้องสามารถวัดได้จากข้อมูลการซื้อขายสาธารณะ คือจุดที่หุ้นมีการเปลี่ยนมือจริงในแต่ละระดับราคา ลำดับราคาที่แสดงคือความสนใจที่รออยู่ (resting interest) แผงข้อมูลด้านล่างแสดงปริมาณการซื้อขายจริงในช่วงครึ่งชั่วโมงของช่วงการซื้อขายเดียวกัน

คำสั่งดึงข้อมูลปริมาณการซื้อขายตามระดับราคา: traded ladder (KO, 30 นาที)
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
    toString(px)             AS price_level,
    round(sum(sz) / 1000, 1) AS shares_thousands,
    count()                  AS prints
FROM
(
    SELECT
        round(toFloat64(price), 2) AS px,
        toFloat64(size)            AS sz
    FROM global_markets.stocks_trades
    WHERE ticker = 'KO'
      AND sip_timestamp >= '2026-06-17 14:30:00'
      AND sip_timestamp <  '2026-06-17 15:00:00'
      AND price > 0
      AND size > 0
)
GROUP BY px
ORDER BY px
Run this yourself

การซื้อขายในช่วงครึ่งชั่วโมงนั้นกระจายตัวอยู่ใน 63 ระดับราคาที่แตกต่างกัน ตั้งแต่ $79.42 ที่ระดับต่ำสุดไปจนถึง $80.04 ที่ระดับสูงสุด ระดับราคาที่ขอบทั้งสองด้านมีสภาพคล่องต่ำ โดยมีปริมาณ 0.1 พันหุ้นที่ด้านล่างและ 0.8 พันหุ้นที่ด้านบน ส่วนปริมาณการซื้อขายส่วนใหญ่เกิดขึ้นระหว่างระดับราคาเหล่านั้น ข้อมูล Level 1 จะแสดงราคาเพียงราคาเดียวในแต่ละช่วงเวลา แต่ข้อมูล Level 2 จะแสดงลำดับราคาให้เห็นล่วงหน้าในฐานะคำสั่งซื้อขายที่รออยู่ ไม่ใช่ข้อมูลย้อนหลังจากการซื้อขายที่เกิดขึ้นแล้ว

ข้อมูลตลาด Level 3 คืออะไร?

Level 3 หรือ market by order คือภาพรวมที่สมบูรณ์ที่สุด โดยแสดงทุกคำสั่งซื้อขายที่รออยู่แยกเป็นรายรายการ แต่ละรายการจะมีรหัสระบุเฉพาะ ราคา ปริมาณ และตำแหน่งในคิว ณ ระดับราคานั้น หากนำข้อมูล Level 3 มาสรุปผลตามระดับราคา คุณจะได้ข้อมูล Level 2 และหากนำราคาที่ดีที่สุดของแต่ละฝั่งมาแสดง คุณจะได้ข้อมูล Level 1

Level 3 ตอบคำถามสองข้อที่ข้อมูลระดับสรุปผลไม่สามารถตอบได้ คือ คำสั่งซื้อขายของคุณอยู่ในลำดับที่เท่าใด ณ ระดับราคานั้น ซึ่งเป็นตัวกำหนดว่าจะได้รับการจับคู่ซื้อขายหรือไม่เมื่อราคานั้นมีการซื้อขายเกิดขึ้น และเกิดอะไรขึ้นกับคำสั่งซื้อขายเฉพาะรายการนั้นๆ ตลอดอายุของมัน ตั้งแต่การส่งคำสั่งไปจนถึงการยกเลิก ข้อมูลจากตลาดหลักทรัพย์โดยตรงอย่าง Nasdaq TotalView-ITCH จะมีข้อมูลเชิงลึกระดับนี้ แต่ consolidated tape ทั่วไปจะไม่มี

การสมัครสมาชิกข้อมูล Level 2 สำหรับรายย่อยให้ข้อมูลอะไรบ้าง?

ในส่วนนี้คำจำกัดความอาจมีความยืดหยุ่น "Level 2" บนแพลตฟอร์มสำหรับรายย่อยมักไม่ใช่ข้อมูลความลึกของตลาดระดับประเทศทั้งหมด สิ่งที่ได้รับมักเป็นสมุดคำสั่งซื้อของตลาดแห่งเดียว ซึ่งมักเป็นตลาดที่โบรกเกอร์ของคุณส่งคำสั่งไป หรือเป็นสมุดคำสั่งซื้อที่รวมข้อมูลจากหลายแห่งแต่จำกัดไว้เพียงห้าหรือสิบระดับราคาในแต่ละฝั่ง สมุดคำสั่งซื้อสิบระดับสำหรับหุ้นที่เสนอราคาเป็นเซนต์จะครอบคลุมช่วงราคาเพียงสิบเซนต์เท่านั้น และในหุ้นที่มีการเคลื่อนไหวสูง ช่วงราคานี้จะมีการอัปเดตอยู่ตลอดเวลา

ปริมาณข้อความ (message volume) เป็นเหตุผลสำคัญที่ทำให้ข้อมูลแต่ละระดับมีราคาแตกต่างกันมาก แผงข้อมูลด้านล่างนับจำนวนบันทึกราคาเสนอซื้อขายที่ top-of-book สำหรับหุ้นชื่อดังห้าตัวในช่วงเวลาหนึ่งชั่วโมงของช่วงการซื้อขายเดียวกัน พร้อมกับค่าเฉลี่ยส่วนต่างราคาของแต่ละตัว

คำสั่งดึงข้อมูลส่วนต่างราคาเสนอซื้อขายและจำนวนข้อความเสนอราคาแยกตามชื่อ (10:00 ถึง 11:00 น. ET)
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
    ticker                                                                 AS symbol,
    round(avg((toFloat64(ask_price) - toFloat64(bid_price))
              / ((toFloat64(ask_price) + toFloat64(bid_price)) / 2)) * 10000, 2) AS spread_bps,
    count()                                                                AS quote_update_count
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('SPY', 'AAPL', 'MSFT', 'NVDA', 'KO')
  AND sip_timestamp >= '2026-06-17 14:00:00'
  AND sip_timestamp <  '2026-06-17 15:00:00'
  AND bid_price > 0
  AND ask_price > bid_price
  AND (toFloat64(ask_price) - toFloat64(bid_price)) / toFloat64(bid_price) < 0.05
GROUP BY symbol
ORDER BY spread_bps
Run this yourself

SPY มีค่าเฉลี่ยส่วนต่างราคาที่แคบที่สุดในบรรดาหุ้นทั้งห้าตัวที่ 0.32 basis points ในขณะที่ KO มีค่าเฉลี่ยอยู่ที่ 1.95 จำนวนการอัปเดตเหล่านั้นครอบคลุมเฉพาะส่วนบนสุดของสมุดคำสั่งซื้อเท่านั้น ข้อมูลความลึก (depth feed) จะรวมทุกการเปลี่ยนแปลงในทุกระดับราคาที่อยู่ด้านล่าง และข้อมูลแบบ order-by-order จะรวมทุกข้อความที่อยู่เบื้องหลังข้อมูลเหล่านั้น สำหรับ Options ถือเป็นกรณีสุดโต่งของหลักการเดียวกันนี้ ซึ่ง ขนาดของข้อมูลเสนอราคา Options ได้ระบุตัวเลขไว้ชัดเจน

เหตุใดสมุดคำสั่งซื้อที่มองเห็นได้จึงแสดงสภาพคล่องต่ำกว่าความเป็นจริง

ลำดับราคาที่แสดงเป็นเพียงระดับขั้นต่ำของสภาพคล่องที่มีอยู่ ไม่ใช่การวัดสภาพคล่องทั้งหมด โดยมีองค์ประกอบสำคัญสองส่วนที่อยู่นอกเหนือภาพนี้

คำสั่งซื้อขายที่ซ่อนอยู่และสำรองไว้ (Hidden and reserve orders): คำสั่งซื้อขายแบบ iceberg จะแสดงปริมาณเพียงเล็กน้อยและเก็บส่วนที่เหลือไว้เป็นสำรอง โดยจะเติมปริมาณที่แสดงให้เต็มเมื่อมีการซื้อขายเกิดขึ้น สมุดคำสั่งซื้ออาจแสดง 200 หุ้น แต่จริงๆ แล้วอาจมีคำสั่งซื้อขายอีกสองหมื่นหุ้นรออยู่เบื้องหลัง วิธีการทำงานของคำสั่งซื้อขายแบบ iceberg อธิบายกลไกในส่วนนี้ไว้

การซื้อขายที่ไม่ได้เกิดขึ้นในตลาดหลัก (Off-exchange execution): ปริมาณการซื้อขายหุ้นสหรัฐฯ จำนวนมากเกิดขึ้นนอกตลาดหลัก (lit exchanges) โดยผ่านระบบ internalizer ของโบรกเกอร์และระบบการซื้อขายทางเลือก (ATS) ซึ่งไม่ได้เผยแพร่ราคาเสนอซื้อขายก่อนการซื้อขายจริง การซื้อขายใน Dark pool อธิบายถึงแหล่งที่มาของปริมาณการซื้อขายเหล่านี้

Conflation ในข้อมูลตลาดหมายความว่าอย่างไร?

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

ความแตกต่างนี้มีความสำคัญอย่างยิ่งสำหรับผู้ที่พัฒนาซอฟต์แวร์บนข้อมูลเหล่านี้ ข้อมูลแบบ un-conflated หมายถึงการได้รับทุกข้อความตามลำดับ ซึ่งเป็นสิ่งที่จำเป็นสำหรับการจำลองระบบจับคู่คำสั่งซื้อขาย (matching-engine simulation) หรือโมเดลตำแหน่งในคิว แต่สำหรับข้อมูลแบบ conflated การคำนวณเหล่านี้จะเป็นเพียงค่าประมาณ สำหรับผู้ที่อ่านลำดับราคาด้วยสายตา ช่วงเวลาดังกล่าวแทบไม่มีผล

คำสั่งดึงข้อมูลอัตราข้อความ top-of-book รายนาที (NVDA, หนึ่งชั่วโมง)
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
    et_time,
    round(avg(sec_updates), 1) AS avg_updates_per_second,
    max(sec_updates)           AS peak_updates_in_one_second
FROM
(
    SELECT
        formatDateTime(toStartOfMinute(toTimeZone(sip_timestamp, 'America/New_York')), '%H:%i') AS et_time,
        toDateTime(sip_timestamp)                                                              AS et_second,
        count()                                                                                AS sec_updates
    FROM global_markets.cache_stocks_quotes
    WHERE ticker = 'NVDA'
      AND sip_timestamp >= '2026-06-17 14:00:00'
      AND sip_timestamp <  '2026-06-17 15:00:00'
    GROUP BY et_time, et_second
)
GROUP BY et_time
ORDER BY et_time
Run this yourself

ในนาทีแรกของชั่วโมงนั้น ณ เวลา 10:00 ET บันทึกข้อมูล top-of-book ถูกส่งเข้ามาเฉลี่ย 163.8 รายการต่อวินาที และวินาทีที่หนาแน่นที่สุดในนาทีนั้นมีข้อมูลถึง 371 รายการ ข้อมูลที่บันทึกภาพทุกหนึ่งวินาทีจะส่งสถานะสมุดคำสั่งซื้อเพียงหนึ่งสถานะจากกระแสข้อมูลทั้งหมดนั้น นั่นเป็นเพียงข้อมูล top-of-book ของหุ้นตัวเดียว ส่วนข้อมูลความลึกและข้อมูลแบบ order-by-order จะมีจำนวนข้อมูลมากกว่านั้นหลายเท่า

ข้อมูล Level 2 คุ้มค่าที่จะจ่ายหรือไม่?

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

สำหรับการถือครองเป็นวันหรือสัปดาห์ ข้อมูลส่วนเพิ่มในสมุดคำสั่งซื้อสิบระดับนั้นมีค่าน้อยมากเมื่อเทียบกับต้นทุน ข้อมูลระดับที่ต่ำกว่า Level 1 ก็มีความสำคัญเช่นกัน คือราคาเสนอซื้อขายที่ล่าช้า (delayed quotes) ซึ่งโดยปกติจะล่าช้า 15 นาที ไม่มีค่าใช้จ่ายบนแพลตฟอร์มส่วนใหญ่ และเพียงพอสำหรับการตัดสินใจที่วัดผลเป็นวัน เหตุใดราคาหุ้นจึงล่าช้า 15 นาที อธิบายที่มาของธรรมเนียมปฏิบัตินี้ อีกสิ่งหนึ่งที่ควรตรวจสอบคือการส่งข้อมูล ลำดับราคาที่มาจากตลาดแห่งเดียวและถูก conflate ในช่วงเวลาที่ผู้ให้บริการไม่เคยเปิดเผย คือมุมมองเพียงบางส่วนของบางส่วนเท่านั้น

คำถามที่พบบ่อย

ข้อมูลตลาด Level 1 และ Level 2 ต่างกันอย่างไร?

Level 1 ให้ราคาเสนอซื้อและเสนอขายที่ดีที่สุดพร้อมปริมาณ ณ ราคานั้นๆ รวมถึงการซื้อขายล่าสุด ส่วน Level 2 เพิ่มระดับราคาที่แสดงอยู่ด้านล่างพร้อมปริมาณรวมที่รออยู่ ณ แต่ละระดับราคา ดังนั้น Level 2 จึงมีข้อมูลทั้งหมดที่ Level 1 มีและมีข้อมูลเพิ่มเติมด้วย

ข้อมูลตลาด Level 2 เป็นแบบเรียลไทม์หรือไม่?

ขึ้นอยู่กับการสมัครสมาชิก ข้อมูลความลึกจากตลาดหลักทรัพย์โดยตรงจะเป็นแบบเรียลไทม์และมีค่าธรรมเนียม ในขณะที่แพลตฟอร์มสำหรับรายย่อยหลายแห่งจะส่งข้อมูลเวอร์ชัน conflated ที่บันทึกภาพเป็นช่วงเวลา หน้าผลิตภัณฑ์มักไม่ได้ระบุชัดเจน แต่คุณสามารถสอบถามฝ่ายสนับสนุนของโบรกเกอร์เพื่อยืนยันได้

ข้อมูล Level 2 แสดงคำสั่งซื้อขายที่ซ่อนอยู่หรือไม่?

ไม่ ข้อมูลความลึกของตลาดจะแสดงเฉพาะปริมาณที่เปิดเผยเท่านั้น ปริมาณสำรองของ iceberg และคำสั่งซื้อขายที่ซ่อนอยู่ทั้งหมดจะยังคงมองไม่เห็นในลำดับราคาจนกว่าจะมีการซื้อขายเกิดขึ้นจริง

ข้อมูลตลาด Level 3 ใช้ทำอะไร?

Level 3 หรือ market by order จะแสดงทุกคำสั่งซื้อขายที่รออยู่แยกเป็นรายรายการพร้อมรหัสระบุเฉพาะ ราคา ปริมาณ และตำแหน่งในคิว โดยส่วนใหญ่จะขายให้กับบริษัทที่ใช้โมเดลการส่งคำสั่งซื้อขายและการจับคู่ ซึ่งตำแหน่งในคิวมีผลต่อต้นทุนและผลลัพธ์ของการจับคู่คำสั่งซื้อขาย

ฉันจำเป็นต้องใช้ข้อมูล Level 2 ในการเทรดหรือไม่?

ไม่ ข้อมูลราคา Level 1 และข้อมูลการซื้อขาย (trade tape) ก็เพียงพอสำหรับการส่งและจัดการคำสั่งซื้อขายบนแพลตฟอร์มรายย่อยทั่วไป ข้อมูลความลึกจะมีประโยชน์เมื่อการตัดสินใจขึ้นอยู่กับสภาพคล่อง ณ ขณะที่ส่งคำสั่งซื้อขาย ไม่ใช่ขึ้นอยู่กับราคาปิดของวัน


แผงข้อมูลทุกชุดที่นี่มาพร้อมกับคำสั่ง SQL ที่ใช้ดึงข้อมูล คุณสามารถเปิดดูเพื่อตรวจสอบวิธีการนับตัวเลขแต่ละตัวได้อย่างแม่นยำ คำถามเดียวกันนี้สามารถใช้ตรวจสอบกับ ticker ใดก็ได้และช่วงเวลาใดก็ได้บน Strasmore terminal

#market data#level 2#order book#depth of book#nbbo