Skip to content
คู่มือออปชันทั้งหมด
ค้นหาผลตอบแทนระหว่างวันที่ผิดปกติเมื่อเทียบกับ volatility เฉพาะช่วงอ่าน 13 นาที

Lee–Mykland Jump Test: ตรวจจับการกระโดดของราคาระหว่างวัน

เรียนรู้ว่า Lee–Mykland test ปรับสเกลผลตอบแทนระหว่างวันด้วย bipower variation ล่าสุดอย่างไร กำหนด threshold ครอบคลุมทั้ง session และคำนึงถึงข้อจำกัดจาก sampling กับ market noise

ในคู่มือนี้มองหาช่วงเวลาเฉพาะ ไม่ใช่เพียงวันที่ผันผวน

สรุปสั้น

วิธี Lee–Mykland ถามว่าผลตอบแทนความถี่สูงแต่ละช่วงมีขนาดผิดปกติหรือไม่เมื่อเทียบกับค่าประมาณ volatility เฉพาะช่วงก่อนหน้า วิธีนี้ใช้สเกลจาก bipower variation ที่คำนวณจากผลตอบแทนก่อนหน้า และ threshold ที่ปรับสำหรับค่าสถิติสูงสุดตลอดช่วงทดสอบ ช่วงเวลาที่ถูกทำเครื่องหมายเป็นหลักฐานคัดค้านสมมติฐานเส้นทางราคาแบบต่อเนื่องภายใต้สมมติฐานของวิธี แต่ไม่ได้พิสูจน์สาเหตุจากข่าว ไม่ใช่ forecast และไม่ใช่สัญญาณซื้อขาย

มองหาช่วงเวลาเฉพาะ ไม่ใช่เพียงวันที่ผันผวน

Realized variance รวมกำลังสองของผลตอบแทนระหว่างวันตลอด session ส่วน bipower variation อาจใช้ประมาณส่วนความแปรผันต่อเนื่องได้ภายใต้สมมติฐานเฉพาะ ทั้งสองสรุปข้อมูลทั้งช่วง จึงไม่ได้บอกด้วยตัวเองว่าการเคลื่อนไหวผิดปกติเกิดขึ้นเมื่อใด วิธีของ Lee และ Mykland ประเมินผลตอบแทนทีละช่วง โดยเปรียบเทียบการเคลื่อนไหวแต่ละรายการกับ volatility ที่ประมาณจากผลตอบแทนก่อนหน้าทันที

ความแตกต่างนี้มีประโยชน์กับ event study การสร้างแบบจำลอง volatility และการอธิบายเวลาที่เกิด jump ผลตอบแทน 1% อาจผิดปกติในตลาดสงบ แต่อาจเป็นเรื่องปกติใน session ที่ผันผวน การปรับมาตรฐานด้วย volatility เฉพาะช่วงล่าสุดช่วยคำนึงถึงสเกลที่เปลี่ยนไป วิธีนี้เสนอขึ้นเพื่อจับเวลาการเกิด intraday jump และประมาณขนาดที่เกิดขึ้นจริง แต่ไม่ได้ระบุสาเหตุหรือบอกว่าเทรดได้หรือไม่ (Lee & Mykland, 2008)

สมมติฐานศูนย์กล่าวถึงกระบวนการราคาภายในช่วงหนึ่งว่าไม่มี jump ภายใต้ส่วนต่อเนื่องที่มีเงื่อนไข regularity ไม่ได้กล่าวว่าผลตอบแทนเป็นศูนย์ เส้นทางราคาต่อเนื่องก็ให้ผลตอบแทนขนาดใหญ่ได้ โดยเฉพาะเมื่อ volatility สูง จึงไม่ควรใช้ cutoff ที่ดูแต่ขนาดเพียงอย่างเดียว

สร้างชุดผลตอบแทนสำหรับใช้ทดสอบ

ให้ \(P_i\) เป็นราคาที่สังเกตบนกริดสม่ำเสมอ ณ เวลา \(t_i\) ผลตอบแทน log ในช่วง \(i\) นิยามว่า

\[ r_i=\log(P_i/P_{i-1}). \]

การทดสอบต้องใช้ฟิลด์ราคาและกริดที่สม่ำเสมอ นักวิจัยอาจใช้ราคาซื้อขาย midpoint ของ bid/ask หรือ proxy อื่นที่ระบุไว้ แต่การเปลี่ยน proxy อาจเปลี่ยนทั้งผลตอบแทนและ jump label ต้องกำหนดวิธีจัดการช่วงเปิดและปิด session, auction, halt และ quote ที่ขาดหายอย่างชัดเจน ไม่ควรรวมผลตอบแทนจากปิดตลาดถึงเปิดตลาดเข้ากับช่วง intraday ปกติโดยไม่บอก

การสุ่มตัวอย่างสม่ำเสมอสำคัญ เพราะ local scale และ threshold ของค่าสุดขั้วได้มาสำหรับรูปแบบการสังเกตที่กำหนด หากเวลาสังเกตไม่สม่ำเสมอ ให้เลือกกฎ synchronization หรือ sampling ที่ป้องกันข้อโต้แย้งได้ก่อน และอธิบายว่าทิ้งข้อมูลใดไป สูตรนี้ไม่ได้แก้ stale quote, crossed market, timestamp ผิด หรือข้อผิดพลาดบันทึกเป็นบางจุด และห้ามถือว่าราคาจากหลาย venue หรือสินทรัพย์เกิดพร้อมกันโดยไม่ตรวจสอบการจัดแนว

นี่คือการทดสอบผลตอบแทนที่สังเกตได้ ไม่ใช่ราคาที่ซ่อนอยู่ ทฤษฎีดั้งเดิมใช้แบบจำลอง high-frequency semimartingale ที่มีเงื่อนไขซึ่งไม่ได้เป็นจริงโดยอัตโนมัติสำหรับทุก quote feed หรือ venue สินทรัพย์ดิจิทัล ควรบันทึกแหล่งข้อมูล เขตเวลา กริด session และตัวกรอง เพื่อให้ผู้อื่นสร้างชุดข้อมูลกลับมาได้

ประมาณ volatility จากหน้าต่างก่อนหน้า

ณ เวลาที่เป็นผู้สมัคร \(t_i\) ให้ประมาณ local variance จากผลตอบแทนก่อน \(r_i\):

\[ \widehat{\sigma}_i^2 = \frac{1}{K-2} \sum_{j=i-K+2}^{i-1}|r_j|\,|r_{j-1}|, \qquad \widehat{\sigma}_i=\sqrt{\widehat{\sigma}_i^2}. \]

ค่า \(K\) กำหนดขนาด rolling window ผลรวมประกอบด้วยผลคูณของ absolute return ที่อยู่ติดกัน และไม่นำผลตอบแทนผู้สมัคร \(r_i\) มารวม รูปแบบ bipower variation นี้ช่วยไม่ให้ jump เดี่ยวที่เกิดก่อนหน้าครอบงำสเกลที่ใช้พิจารณาช่วงหลัง วรรณกรรม realized volatility อธิบายว่าผลรวมและผลคูณของผลตอบแทนความถี่สูงประมาณคุณลักษณะต่างกันของ quadratic variation ได้อย่างไร (Barndorff-Nielsen & Shephard, 2002)

ค่านี้เป็นค่าประมาณเฉพาะช่วง ไม่ใช่ forecast volatility ทั้ง session หน้าต่างสั้นปรับตามได้เร็วแต่ไม่นิ่ง ส่วนหน้าต่างยาวเรียบขึ้นแต่อาจตอบสนองต่อการเปลี่ยน volatility ช้า เหตุผลเชิง asymptotic ของต้นฉบับเลือกให้ \(K\) เพิ่มเมื่อ sampling interval ลดลง แต่ยังสั้นเมื่อเทียบกับ horizon ทั้งหมด ในตัวอย่างจำกัดต้องระบุการเลือก \(K\) และตรวจ sensitivity ไม่มี \(K\) เดียวที่เหมาะกับทุกสินทรัพย์ กริด หรือ regime

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

ปรับมาตรฐานผลตอบแทนผู้สมัครแต่ละช่วง

สถิติ jump เฉพาะช่วงคือ

\[ L_i=\frac{r_i}{\widehat{\sigma}_i}. \]

เครื่องหมายเก็บทิศทางผลตอบแทนที่สังเกตได้ ส่วนขนาดสัมบูรณ์วัดการเคลื่อนไหวเทียบกับสเกลก่อนหน้า ตัวหารใช้ผลคูณของ absolute return ที่ติดกันโดยไม่มีค่าคงที่ normalization แบบ bipower ตามปกติ ภายใต้ asymptotics กรณีไม่มี jump ของบทความ \(L_i\) ใกล้เคียง \(Z_i/c\) โดย \(Z_i\) เป็น standard normal และ \(c=E|Z_i|=\sqrt{2/\pi}\) รายละเอียดนี้สำคัญต่อการกำหนด threshold: หากถือว่า \(L_i\) เป็นค่าสถิติ standard normal จะใช้ reference distribution ผิด

ค่า \(|L_i|\) สูงเป็นเพียงช่วงผู้สมัคร ไม่ใช่ข้อสรุปอัตโนมัติ การทดสอบถามว่าการเคลื่อนไหวนั้นใหญ่ผิดปกติหรือไม่เมื่อพิจารณารูปแบบ sampling, window และจำนวนช่วงที่ค้นหา ค่าบวกหมายถึงผลตอบแทนที่สังเกตได้ไปทางขึ้น ค่าลบไปทางลง ไม่มีเครื่องหมายใดระบุสาเหตุทางเศรษฐกิจ และเครื่องหมายอย่างเดียวแยก jump ออกจากการเคลื่อนไหวต่อเนื่องหรือข้อผิดพลาดของข้อมูลไม่ได้

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

<!-- learn:illustration --> <!-- Text-free concept: one sharp return pulse rises above a quiet sequence while a trailing window forms a soft local-volatility envelope; no prices, timestamps, thresholds, or detected events are shown. -->

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

กำหนด threshold สำหรับช่วงทดสอบทั้งหมด

เมื่อสแกน \(n\) ช่วง การใช้ threshold แบบ pointwise ซ้ำ \(n\) ครั้งอาจสร้าง false alarm เพียงเพราะตรวจหลายรายการ Lee–Mykland ปรับ threshold ตามค่าสูงสุดของ absolute statistic ตลอด horizon เมื่อ \(c=\sqrt{2/\pi}\) นิยาม

\[ C_n= \frac{\sqrt{2\log n}}{c} - \frac{\log(\pi)+\log(\log n)} {2c\sqrt{2\log n}}, \qquad S_n=\frac{1}{c\sqrt{2\log n}}. \]

ภายใต้เงื่อนไข asymptotic ไม่มี jump ของบทความ

\[ \frac{\max_{1\le i\le n}|L_i|-C_n}{S_n} \]

มี limiting distribution แบบ standard Gumbel ที่มี cumulative distribution function \(F(x)=\exp(-e^{-x})\) สำหรับ session-level significance \(\alpha\) critical value คือ

\[ \beta_\alpha=-\log[-\log(1-\alpha)]. \]

ช่วงหนึ่งจะถูกทำเครื่องหมายเมื่อ \((|L_i|-C_n)/S_n>\beta_\alpha\) การปรับด้วยค่าสูงสุดคำนึงถึงการค้นหาหลายช่วงใน horizon ที่ระบุ แต่ไม่ได้แก้การศึกษาที่สแกนซ้ำในสินทรัพย์ หลายวัน กริด sampling หรือแบบจำลองหลายแบบโดยอัตโนมัติ การเปรียบเทียบเพิ่มเติมต้องออกแบบและเปิดเผยแยกต่างหาก

คำนวณช่วงสมมติหนึ่งช่วง

สมมติว่าผลตอบแทนสามรายการก่อนช่วงผู้สมัครคือ \(-0.40\%\), \(+0.30\%\), และ \(-0.20\%\) และตั้ง \(K=4\) เพื่อให้คำนวณสั้นลง จากนั้น

\[ \widehat{\sigma}_i^2 = \frac{|0.30||-0.40|+|-0.20||0.30|}{2} = 0.09\;(\%)^2, \qquad \widehat{\sigma}_i=0.30\%. \]

หากผลตอบแทนถัดไปเป็น \(+1.20\%\) จะได้ local statistic \(L_i=1.20/0.30=4\) กล่าวคือผลตอบแทนที่สังเกตมีขนาดสี่เท่าของ local scale ในตัวอย่างนี้ แต่ยังไม่ได้แปลว่าการทดสอบปฏิเสธสมมติฐาน

สำหรับ session สมมติที่มี \(n=78\) ช่วง สูตร asymptotic ให้ \(C_n\approx3.14\) และ \(S_n\approx0.424\) ที่ session-level significance 1% จะได้ \(\beta_\alpha\approx4.60\) และ threshold ประมาณ \(3.14+0.424(4.60)=5.10\) ค่าสถิติ 4 ต่ำกว่า threshold จึงไม่ทำเครื่องหมายช่วงนี้ที่ระดับดังกล่าว ตัวเลขเป็นตัวอย่างสมมติ และ maximum approximation อาจหยาบเมื่อ sample มีขนาดเท่านี้ ส่วน \(K=4\) เลือกเพื่อแสดงเลขคณิตเท่านั้น ไม่ใช่ค่าประมาณที่แนะนำ

ตัวอย่างแสดงว่า “สี่ standard deviations” ยังอธิบายการตัดสินใจแบบ Lee–Mykland ไม่ครบ reference scale, asymptotic normalization, window, จำนวนช่วง และ significance level ล้วนส่งผลต่อ cutoff ให้รายงานสิ่งเหล่านี้พร้อมจำนวน jump หรือรายการเหตุการณ์

เลือกกริด sampling และขนาดหน้าต่างไปพร้อมกัน

กริดที่ละเอียดขึ้นทำให้ระบุตำแหน่งเวลาได้ดีขึ้นในทางทฤษฎี แต่ยังเผย quote noise, price discreteness และ timestamp mismatch มากขึ้น กริดที่หยาบลงช่วย smooth การเปลี่ยนแปลงระยะสั้นบางส่วน แต่อาจรวม jump เข้ากับผลตอบแทนต่อเนื่องที่อยู่ข้างเคียง หรือซ่อนหลายการเคลื่อนไหวไว้ในช่วงเดียว การเลือกกริดจึงเปลี่ยนทั้งสิ่งที่ทดสอบตรวจได้และความเหมาะสมของข้อมูลกับสมมติฐาน

ค่า \(K\) สัมพันธ์กับกริดด้วย ผลตอบแทนก่อนหน้าที่น้อยเกินไปทำให้ local bipower estimate แกว่งมาก ส่วนจำนวนมากเกินไปอาจปนหลาย regime ของ volatility และทำให้คำว่า “เฉพาะช่วง” ไม่มีความหมาย รายงาน \(K\) ทั้งจำนวน observation และเวลา ระบุว่า reset window ที่ขอบ session หรือไม่ และแสดงว่า event list เปลี่ยนอย่างไรภายใต้ตัวเลือกที่ป้องกันข้อโต้แย้งได้ อย่านำค่าแนะนำจากตลาด ความยาว session หรือ sampling frequency อื่นมาใช้โดยไม่ตรวจสอบ

Lee–Mykland แบบมาตรฐานไม่ใช่วิธีแก้ market microstructure noise ทั่วไป Pre-averaging และวิธีอื่นที่คำนึงถึง noise เปลี่ยนการประมาณผลตอบแทนหรือ volatility และต้องใช้อินเฟอเรนซ์ที่สอดคล้องกัน ไม่ใช่ filter สำเร็จรูปที่แทนกันได้ (Aït-Sahalia, Jacod & Li, 2012) คู่มือ pre-averaging และ คู่มือ two-scale volatility อธิบายแนวทางที่เกี่ยวข้องสำหรับราคาความถี่สูงที่มี noise

ตีความช่วงที่ตรวจพบเป็นป้ายกำกับสำหรับงานวิจัย

ผลตอบแทนที่ถูกทำเครื่องหมายเป็นหลักฐานว่าอธิบายด้วย null แบบ continuous path ได้ยากภายใต้ threshold ที่กำหนด ไม่ใช่การยืนยันว่าข่าวตามกำหนด การขัดข้องของ exchange การล้างสถานะต่อเนื่อง หรือสาเหตุอื่นทำให้เกิดการเคลื่อนไหว ให้เทียบ timestamp กับข้อมูลเหตุการณ์ที่ตรวจสอบแล้ว ตรวจ trade และ quote ต้นทาง และดูว่าราคายังเคลื่อนไหวต่อหลังช่วงนั้นหรือไม่ แยกคำอธิบายติดตามผลเหล่านี้ออกจากผลการทดสอบ

วิธีนี้ต่างจากการเปรียบเทียบ realized variance กับ bipower variation ตอนสิ้นวัน Lee–Mykland ออกแบบมาเพื่อหาช่วงเมื่อเทียบกับ local volatility ส่วนช่องว่างของ variation รายวันประมาณ aggregate jump variation ภายใต้สมมติฐานอีกแบบ ดูมาตรวัดระดับช่วงเวลาได้จาก คู่มือ bipower variation และ คู่มือ realized volatility ส่วน power-variation test ของ Aït-Sahalia และ Jacod ใช้โครงสร้างอื่นเพื่อตรวจว่ามี jump ในเส้นทางที่สังเกตเป็นช่วงหรือไม่ เป้าหมายและสมมติฐานต่างกัน การเห็นผลตรงหรือไม่ตรงกับรายการช่วง Lee–Mykland จึงไม่ใช่การตรวจสอบแบบหนึ่งต่อหนึ่ง

ในงานกลยุทธ์ jump label เป็นข้อมูลนำไปวิเคราะห์ต่อ ไม่ใช่คำสั่งซื้อหรือขาย Backtest ต้องคำนึงถึงเวลาที่ signal สังเกตได้จริง spread และ slippage, latency, event window ที่ทับซ้อนกัน และการทดสอบนอก sample กำหนดเป้าหมาย loss หรือ risk และเทียบกับ benchmark ที่เหมาะสม การทำเครื่องหมายผลตอบแทนในอดีตไม่ได้แสดงว่าสามารถพยากรณ์เหตุการณ์ถัดไปหรือเทรดให้มีกำไรได้

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

Q1ผลตอบแทน intraday ที่มีขนาดใหญ่ทุกครั้งเป็น jump หรือไม่?

ไม่ใช่ ผลตอบแทนขนาดใหญ่อาจเกิดจากเส้นทางราคาต่อเนื่องในช่วง volatility สูง จาก jump, noise, quote ผิด หรือ timestamp มีปัญหา การทดสอบเปรียบเทียบการเคลื่อนไหวกับ local-volatility estimate และสมมติฐานของวิธี

Q2Lee–Mykland test ใช้ bipower variation หรือไม่?

ใช้ โดยประมาณ local scale แบบ rolling จากผลคูณของ absolute return ที่อยู่ติดกันก่อนช่วงผู้สมัคร ซึ่งต่างจากการนำ realized variance ทั้ง session มาลบ bipower variation

Q3Threshold 1% หมายถึงทุกช่วงมีโอกาส false alarm 1% หรือไม่?

ไม่ใช่ Threshold ปรับจาก maximum ตลอด horizon ที่ระบุภายใต้สมมติฐาน asymptotic หากสแกนซ้ำหลายสินทรัพย์ หลายวัน หรือหลายชุดพารามิเตอร์ จะเกิดการเปรียบเทียบเพิ่มเติม

Q4ใช้กับข้อมูล tick ได้เลยโดยไม่ปรับอะไรหรือไม่?

ไม่ควรโดยอัตโนมัติ Price discreteness, bid–ask bounce, stale quote และ timestamp error อาจบิดเบือน return กับ local scale วิธีที่คำนึงถึง noise เปลี่ยนทั้งการประมาณและ inference จึงต้องปรับ calibration แยกต่างหาก

แหล่งข้อมูลและการอ่านเพิ่มเติม

รายงานปัญหา

เราจะเตรียมอีเมลพร้อมลิงก์บทความนี้ Mark จะได้รับรายงานเมื่อคุณส่งอีเมลแล้วเท่านั้น

ตรวจสอบอย่างรวดเร็ว

อ่านคู่มือจบแล้ว ลองตอบคำถาม 3 ข้อ

คำถาม 1 / 3

คำถาม 01

ตัวหารของ Lee–Mykland test ประมาณค่าอะไร?

เลือกคำตอบเพื่อดูคำอธิบาย

อภิธานศัพท์ออปชัน

แยกการเปลี่ยนแปลงราคาต่อเนื่องออกจากการกระโดดของราคาที่เกิดไม่บ่อยในผลตอบแทนความถี่สูงBipower Variation: ทำความเข้าใจความผันผวนที่คำนวณได้และทนต่อการกระโดดเรียนรู้ว่า realized bipower variation ใช้ค่าสัมบูรณ์ของผลตอบแทนที่อยู่ติดกันเพื่อประมาณความแปรปรวนสะสมแบบต่อเนื่องได้อย่างไร เมื่อ RV ลบ BV อาจวัดความแปรปรวนจากการกระโดด และเหตุใดขนาดตัวอย่างกับ noise จากโครงสร้างจุลภาคจึงสำคัญการวัดความผันผวนวิธีคำนวณ realized volatility: ผลตอบแทน ช่วงเวลา และ annualizationเรียนรู้สูตร realized volatility เหตุใดนิยาม log return และ annualization จึงสำคัญ และทางเลือกในการสุ่มตัวอย่างเปลี่ยนการเปรียบเทียบกับ implied volatility อย่างไรปรับเรียบหน้าต่างผลตอบแทนสั้นเพื่อวัดการเปลี่ยนแปลงของราคาความถี่สูงที่มีสัญญาณรบกวนการประมาณความผันผวนที่เกิดขึ้นจริงด้วย Pre-Averagingเรียนรู้ว่า pre-averaging ปรับเรียบหน้าต่างผลตอบแทนความถี่สูงอย่างไร แก้อคติจากสัญญาณรบกวนหลักอย่างไร เลือกความยาวหน้าต่างแบบใด และแตกต่างจาก TSRV กับ realized kernel อย่างไรประมาณค่าความแปรปรวนสะสมเมื่อราคาความถี่สูงมีสัญญาณรบกวนความผันผวนที่เกิดขึ้นจริงแบบสองสเกล: ประมาณค่าความแปรปรวนเมื่อมีสัญญาณรบกวนจุลโครงสร้างตลาดเรียนรู้ว่า TSRV ผสานกริดราคาถี่และเบาบางเพื่อลดอคติจากสัญญาณรบกวนจุลโครงสร้างตลาดที่เป็นอิสระอย่างไร พร้อมตัวอย่างคำนวณ สมมติฐาน และข้อจำกัดแยกความเคลื่อนไหวของราคาความถี่สูงตามทิศทางผลตอบแทนRealized Semivariance: วัดความผันผวนขาขึ้นและขาลงแยกกันเรียนรู้ว่า realized semivariance ฝั่งบวกและลบแบ่ง realized variance ความถี่สูงอย่างไร คำนวณตัวอย่างหน่วย basis point และตีความความแปรผันตามทิศทางโดยไม่สับสนกับ VaR หรือการพยากรณ์