19 กันยายน 2026 · การทดสอบย้อนหลัง

ข้อมูลระดับ Tick ไม่ได้ช่วยกู้ผล Backtest ของคุณ — สำหรับกลยุทธ์ส่วนใหญ่กลับทำให้แย่ลง

ข้อมูลระดับ Tick ไม่ได้ช่วยกู้ผล Backtest ของคุณ — สำหรับกลยุทธ์ส่วนใหญ่กลับทำให้แย่ลง

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

นี่คือรูปแบบความผิดพลาดที่เกิดขึ้น นักวิจัยสร้างกลยุทธ์จากแท่งราคา 1 นาที ได้ค่า Sharpe ที่พอใจ แล้วมีใครสักคน — ที่ปรึกษา โพสต์ในฟอรัม หรือความกังขาในใจตัวเอง — บอกว่า Backtest นี้ไม่ซื่อตรงเพราะสร้างจากแท่งราคา พวกเขาจึงสร้างทั้งระบบขึ้นใหม่โดยใช้ข้อมูล Tick: ทุกรายการซื้อขาย ทุกการอัปเดตโควต พร้อมประทับเวลาละเอียดถึงระดับไมโครวินาที Backtest ช้าลง โค้ดซับซ้อนขึ้นสามเท่า และค่า Sharpe... แทบไม่ขยับ หรือขยับไปในทิศทางที่ไม่มีใครอธิบายได้ ถึงอย่างนั้นก็ยังนำไปใช้ เพราะข้อมูล Tick ให้ความรู้สึกเข้มงวด และความรู้สึกว่าเข้มงวดก็ไม่ใช่ความเข้มงวดจริง

ความละเอียดระดับ Tick ให้อะไรกับคุณจริงๆ

ข้อมูล Tick บอกลำดับและราคาของทุกรายการซื้อขาย และ (ถ้าคุณจ่ายเพิ่ม) ทุกการอัปเดตสมุดคำสั่ง นี่คือข้อมูลจริงที่มีประโยชน์ ช่วยให้จำลองตำแหน่งในคิว ประเมินความน่าจะเป็นที่คำสั่งจะถูกจับคู่ ณ ระดับราคาหนึ่ง และตรวจดู adverse selection ได้ — ว่าตลาดเคลื่อนไหวสวนทางกับคุณทันทีหลังจากคำสั่งสมมติของคุณถูกจับคู่หรือไม่ ทั้งหมดนี้สำคัญมาก หากคุณถือสถานะเป็นวินาทีและวัดความได้เปรียบเป็นเศษส่วนของ Tick

แต่กลยุทธ์ส่วนใหญ่ที่เราเห็นที่ Stratmill — รวมถึงกลยุทธ์ส่วนใหญ่ที่นักวิจัยรายย่อยและกึ่งมืออาชีพใช้จริง — ถือสถานะตั้งแต่นาทีไปจนถึงหลายวัน ในกรอบเวลานี้ สิ่งที่กำหนดว่า Backtest ซื่อตรงหรือไม่ ไม่ใช่การจำลองว่ามีรายการซื้อขายครั้งที่ 40 ภายในนาทีนั้นหรือเปล่า แต่คือการจำลองสเปรด อัตรา Funding เส้นโค้ง Slippage และข้อเท็จจริงที่ว่าคำสั่ง Limit ของคุณต้องต่อคิวอยู่หลังคำสั่งของคนอื่น คุณอาจจำลองทั้ง 4 อย่างนี้ผิดด้วยข้อมูล Tick และจำลองถูกทั้งหมดด้วยแท่งราคา 1 นาทีได้ ความละเอียดกับความซื่อตรงเป็นคนละมิติกัน

~24Mรายการซื้อขาย/วัน, BTCUSDT perp
1,440แท่งราคา 1 นาทีในวันเดียวกัน
0.5–1 Tickสัญญาณรบกวนจากการแกว่งระหว่างราคา Bid-Ask โดยทั่วไปต่อรายการ
3–5xเวลาทางวิศวกรรมสำหรับระบบข้อมูล Tick ที่ถูกต้อง เทียบกับระบบแท่งราคา

ตัวเลขสุดท้ายนี่แหละที่คนมักให้น้ำหนักน้อยเกินไป Backtest ระดับ Tick ไม่ใช่แค่ “Backtest เดิมที่มีแถวข้อมูลมากขึ้น” รายการซื้อขายในตลาดส่วนใหญ่เข้ามาไม่เรียงตามเวลาที่ระบบรับข้อมูล มีการแก้ไขย้อนหลัง กระจายผ่าน Shard ของ Matching Engine หลายชุด และ — ในหลายตลาดที่เราเคยดึงข้อมูล — บางครั้งก็ซ้ำหรือหายไปทั้งหมดระหว่างการเชื่อมต่อใหม่ การสร้างระบบข้อมูล Tick ที่ถูกต้องกว่าระบบแท่งราคาที่ทำไว้อย่างดีจริงๆ ไม่ใช่แค่มีข้อมูลละเอียดกว่า เป็นงานระบบเต็มรูปแบบ ทีมส่วนใหญ่ไม่ได้ทำงานชิ้นนี้ พวกเขาแค่ชี้ Backtester ไปที่ไฟล์ Tick ของผู้ให้บริการแล้วถือว่าเสร็จ เท่ากับเปลี่ยนชุดค่าประมาณที่รู้จักและมีเอกสารกำกับ (OHLCV) ไปเป็นชุดที่ไม่รู้และไม่มีเอกสารกำกับ (ตรรกะการปรับข้อมูล Tick ให้ตรงกันของผู้ให้บริการในวันที่ระบบมีปัญหา)

สัญญาณรบกวนที่คุณกำลังซื้อ

ยังมีต้นทุนอีกอย่างที่เกี่ยวกับสถิติมากกว่างานวิศวกรรม รายการซื้อขายแต่ละรายการแกว่งสลับระหว่างราคา Bid กับ Ask — นี่คือ Bid-Ask bounce ซึ่งเป็นผลตกค้างที่วงการวิจัยโครงสร้างจุลภาคของตลาดรู้จักกันมาตั้งแต่ทศวรรษ 1980 หากสัญญาณของคุณทำงานเร็วกว่าไม่กี่วินาที การทดสอบย้อนหลังระดับ Tick อาจทำให้คุณเห็นรูปแบบในสิ่งที่เป็นเพียงการแกว่งนี้ ผมเคยเห็นนักวิจัยพบรูปแบบ Mean Reversion ที่สวยงามจากข้อมูลซื้อขายทีละรายการ แต่รูปแบบนั้นหายไปทันทีที่รวมข้อมูลเป็นแท่งราคาแม้แต่ 5 วินาที เพราะสิ่งที่เห็นเป็นแค่ Bid-Ask bounce

ควอนต์คนหนึ่งที่ผมรู้จัก — อดีตผู้ดูแลสภาพคล่อง ปัจจุบันบริหารพอร์ตคริปโทขนาดเล็ก — อธิบายให้ผมฟังว่า “ข้อมูล Tick เหมือนแว่นขยาย ถ้าคุณใช้ส่องความได้เปรียบของตัวเองก็ดี แต่ถ้าใช้ส่องสัญญาณรบกวน คุณจะหมดเวลา 6 เดือนกับการจำลองสัญญาณรบกวนของตัวเองอย่างสวยหรู” ตอนนี้เขาทดสอบย้อนหลังแทบทุกอย่างด้วยแท่งราคา 1 วินาทีหรือ 1 นาที และใช้ข้อมูล Tick เฉพาะกับคำถามว่า “คำสั่ง Limit นี้จะถูกจับคู่จริงหรือไม่” ซึ่งเป็นคำถามเรื่องความน่าจะเป็นในการจับคู่คำสั่ง ไม่ใช่คำถามเรื่องสัญญาณ

การแบ่งใช้แบบนั้นเป็นแนวคิดที่ถูกต้อง และเป็นสิ่งที่ผู้สนับสนุนข้อมูล Tick ส่วนใหญ่มองข้าม การใช้ข้อมูล Tick อย่างเหมาะสมไม่ใช่การรันกลยุทธ์ทั้งหมดด้วยข้อมูลนี้ แต่คือการนำมาใช้เฉพาะจุดเพื่อหาคำตอบให้ 1 หรือ 2 คำถามที่ข้อมูลแท่งราคาตอบไม่ได้จริงๆ

กรณีที่ฝ่ายวิจารณ์พูดถูก

ถึงอย่างนั้น ก็มีกลยุทธ์ที่ข้อมูล Tick เป็นสิ่งจำเป็น และคงเป็นการกล่าวเกินจริงหากผมแสร้งทำเป็นว่าไม่มี หากคุณทำสิ่งที่คล้ายการดูแลสภาพคล่อง — ตั้งราคาเสนอทั้ง 2 ฝั่ง จัดการสินค้าคงคลังทุก Tick และใส่ใจตำแหน่งในคิว ณ ระดับราคาเฉพาะ — ข้อมูลแท่งราคาไม่สามารถแทนปัญหาของคุณได้เลย เศรษฐศาสตร์ทั้งหมดของกลยุทธ์นั้นอยู่ภายในนาทีเดียว ไม่ใช่ระหว่างนาที เช่นเดียวกับการทำ Statistical Arbitrage ระหว่างตลาดที่ไวต่อ Latency ซึ่งคำถามคือ “รายการซื้อขายใดเกิดก่อน” อย่างแท้จริง และการดูแลสภาพคล่องในตลาดออปชันสำหรับปริมาณซื้อขายขนาดใหญ่ ซึ่ง adverse selection เพียงไม่กี่ร้อยมิลลิวินาทีหลังการซื้อขายคือหัวใจของเกม ในสภาวะเหล่านี้ การทดสอบย้อนหลังด้วยแท่งราคาไม่ใช่การทำให้ง่ายขึ้น แต่เป็นการจัดประเภทปัญหาผิด — คุณไม่ได้ทดสอบกลยุทธ์เดิมในความละเอียดต่ำลง แต่กำลังทดสอบกลยุทธ์อีกแบบที่บังเอิญใช้ชื่อเดียวกับกลยุทธ์จริง

กรอบเวลาของกลยุทธ์สิ่งที่ข้อมูลแท่งราคามองไม่เห็นจำเป็นต้องใช้ข้อมูล Tick หรือไม่?
การดูแลสภาพคล่อง / กลยุทธ์ที่อิงคิวความน่าจะเป็นในการจับคู่คำสั่ง, adverse selection, ตำแหน่งในคิวจำเป็น — ขาดไม่ได้
กลยุทธ์ที่ไวต่อ Latency / Arbitrage ข้ามตลาดลำดับรายการซื้อขาย, ตลาดใดเคลื่อนไหวก่อนจำเป็น
โมเมนตัมระหว่างวัน, Mean Reversion (นาที–ชั่วโมง)จังหวะการจับคู่คำสั่งภายในแท่งราคา, ต้นทุนสเปรดใช้เฉพาะกับคำถามเรื่องความน่าจะเป็นในการจับคู่ ไม่ใช่เรื่องสัญญาณ
การเทรดตามแนวโน้มหลายวัน, กลยุทธ์ออปชันแบบมีทิศทางแทบไม่มีอะไรสำคัญไม่จำเป็น — ใช้แท่งราคาก็เพียงพอและมักสะอาดกว่า
ถ้าคุณอธิบายไม่ได้ในประโยคเดียวว่าข้อมูล Tick ตอบคำถามอะไรที่แท่งราคาตอบไม่ได้สำหรับกลยุทธ์เฉพาะของคุณ แสดงว่าตอนนี้คุณยังไม่จำเป็นต้องใช้ข้อมูล Tick คุณต้องปรับปรุงแบบจำลองการจับคู่คำสั่งบนข้อมูลแท่งราคาที่มีอยู่

ข้อโต้แย้งจึงไม่ใช่ว่า “ข้อมูล Tick ไม่ดี” แต่คือการรีบเลือกใช้มันมักเป็นวิธีหลีกเลี่ยงคำถามที่ยากกว่าและไม่น่าตื่นเต้นเท่าไร: แบบจำลองต้นทุนของฉันถูกต้องไหม? สมมติฐานเรื่องการจับคู่คำสั่งถูกต้องไหม? คำสั่งนี้จะถูกจับคู่จริงหรือเปล่า หรือฉันกำลังสมมติว่าจะได้ราคาที่สมุดคำสั่งไม่เคยเสนอจริง? หากคุณพิจารณาตำแหน่งในคิวและสเปรดอย่างตรงไปตรงมา คำถามเหล่านี้ตอบได้ด้วยแท่งราคา 1 นาที หรือแม้แต่ 1 วินาที ข้อมูล Tick ช่วยให้ตอบได้แม่นยำขึ้น โดยใช้เวลาทางวิศวกรรมหลายเท่า สำหรับกลยุทธ์ที่ความแม่นยำเพิ่มขึ้นนี้ไม่ได้เปลี่ยนข้อสรุป ลงแรงเพิ่มในจุดที่กรอบเวลาต้องการจริงๆ และข้ามไปในกรณีอื่น วิธีนี้ใช้เวลาของทีมวิจัยได้ดีกว่าการเลือกข้อมูลที่ละเอียดที่สุดโดยอัตโนมัติ เพียงเพราะความละเอียดที่มากกว่าทำให้รู้สึกว่าเข้มงวดกว่า

ข้อมูล Tickโครงสร้างจุลภาคของตลาดการทดสอบย้อนหลังวิศวกรรมข้อมูลสัญญาฟิวเจอร์สคริปโท
แชร์XLinkedInFacebookRedditHacker NewsWhatsAppTelegramEmail
← บทความทั้งหมด