【บันทึกการพัฒนา】ในการทดสอบคุณไม่ได้มองเห็น “อนาคต” หรือไม่? ภาพลวงที่ทำให้ความสุจริตของเหตุผลบิดเบี้ยวคือ bias look-ahead
ในเชิงทดสอบย้อนกลับ ระบบที่แสดงประสิทธิภาพที่ไม่มีข้อบกพร่องเลยเมื่อถูกทดสอบใน Backtest กลับไม่สามารถแสดงความได้เปรียบเมื่อย้ายไปสู่การทดสอบฟอเวิร์ดและสภาพแวดล้อมการใช้งานจริงทันที ทำให้เกิด drawdown ความผิดพลาดร้ายแรงในด้านความถูกต้องสุจริตในการพัฒนาระบบเทรด ซึ่งควบคู่กับการ fitting ของกราฟ (Over-Optimization) เป็นหนึ่งในข้อผิดพลาดที่พบได้บ่อยที่สุด
นักพัฒนาส่วนใหญ่ชอบอธิบายการเบี่ยงเบือนนี้ว่าเป็นการเปลี่ยนแปลงความผันผวนของสภาพตลาดอย่างเดียว อย่างไรก็ดี จากมุมมองของวิศวกรออกแบบกระบวนการ (Process Design Engineer) นี่ไม่ใช่ผลจากสภาพแวดล้อนอก ระบบภายในมีข้อบกพร่องเชิงโครงสร้างที่ประกอบด้วย “bias การอ้างอิงข้อมูลในอนาคต (Future Data Reference Bias)” ซึ่งเป็นข้อสมมติฐานที่ใช้ได้เฉพาะในสภาพแวดล้อมทดสอบ
บทความฉบับนี้จะวิเคราะห์โครงสร้างของ bias ที่ไม่อยู่ในสติปัญญาโดยสติและโดยเจตนา และเสนอแนวทางกระบวนการตรวจสอบที่เข้มงวดเพื่อความอยู่รอดท่ามกลางสภาพตลาดที่รุนแรง
1. การ “อ้างอิงข้อมูลในอนาคต” ที่ทำให้โครงสร้างเสียหาย
Future Data Reference Bias คือข้อบกพร่องเชิงโครงสร้างที่ทำให้ระบบเมื่อทำการตรวจสอบด้วยข้อมูลประวัติศาสตร์อ้างอิงข้อมูลในอนาคตที่น่าจะไม่สามารถทราบได้ในขณะนั้น สำหรับการตัดสินใจเข้าและออกการซื้อขาย
ในสภาพแวดล้อมอินฟราสตรักเจอร์ของตลาดจริง ระบบสามารถเข้าถึงเฉพาะราคาปัจจุบันและอดีตเท่านั้น อย่างไรก็ตามในพื้นที่ทดสอบที่ใช้ข้อมูลในอดีต เพียงแค่มีข้อบกพร่องเล็กน้อยในการเขียนตรรกะ ระบบก็สามารถมองเห็น “อนาคต” ได้อย่างง่ายดาย
ตัวอย่างเช่น ในกรณีที่ “ราคาปิดรายวันยังไม่ได้สรุปในช่วงเวลานั้นๆ ใช้ราคาปิดและราคาสูงของวันนั้นเป็นเกณฑ์อ้างอิงตัวบ่งชี้” อยู่ในกรณีดังกล่าว กำลังอยู่บนรถลอยในเครื่องย้อนเวลามองหาคำตอบในอนาคตและผ่านการทดสอบ สายงานที่คำนวณอัตราชนะและฟังก์ชันกำไรในสภาพแวดล้อมนี้ล้วนเป็นภาพลวงตาอย่างสมบูรณ์
ทันทีที่สภาพแวดล้อมการใช้งานจริงถูกปล่อยใช้งาน ข้อมูลอนาคตที่หายไปทำให้ระบบขาดเกณฑ์การตัดสินใจและทำให้ทำงานผิดพลาด
2. การกำจัดข้อมูลโดยเจตนาและการเพิ่มขึ้นของ “ความไม่สมมาตรของความเสี่ยง”
Bias การอ้างอิงข้อมูลในอนาครถูกทำให้ระบบถูกปนเปื้อนในรูปแบบที่ร้ายแรงยิ่งขึ้นเมื่อผู้พัฒนาตัดสินใจ “ลบข้อมูลที่ไม่เอื้ออำนวยโดยเจตนา”
เพื่อปกปิดประวัติ drawdown ที่ร้ายแรงในระหว่าง backtest จะมีการตีความย้อนหลังว่า “ช่วงเวลานี้เป็นตลาดพิเศษ” และติดตั้งฟิลเตอร์ที่ยกเลิกการเข้าเทรดในช่วงเวลาหนึ่งแบบหลังเหตุการณ์ นี่คือ “การบิดเบือนตรรกะที่เป็นไปได้เพราะรู้ว่าการขาดทุนจะเกิดขึ้นในอนาคต”
โดยเฉพาะตรรกะที่ไม่สุจริตนี้เข้ากันได้ดีกับปรัชญาการออกแบบที่รับความขาดทุนไว้ (drawdown) เช่น การนั่งซื้อยาวโดยไม่มีการหยิบถอน และมาร์ทingale
ต่อไปนี้จะแสดงความแตกต่างเชิงโครงสร้างระหว่างระบบแบบ Nanpin ที่ถูกปนเปื้อนด้วย bias กับระบบแบบ Single-Position ที่ออกแบบโดย Process Design
| รายการเปรียบเทียบ | สถาปัตยกรรม Nanpin ที่ปนเปื้อนไปด้วย Bias | Single-Position ตามการออกแบบกระบวนการ |
| เงื่อนไขเบื้องต้น | “การโกงอนาคต” ที่เป็นไปได้เฉพาะในสภาพแวดล้อมการทดสอบเท่านั้น | ความจริงที่อนาคตไม่สามารถคาดเดาได้อย่างแน่นอน |
| การจัดการความล้มเหลว (ขาดทุน) | เพิ่มเติมด้วยฟิลเตอร์ภายหลังเหตุการณ์ เพื่อปกปิดและละเว้นโดยเจตนา | รวมเป็นส่วนหนึ่งของกระบวนการระบบและยอมรับ |
| ความทนทานต่อ drawdown | การหลอกลวง (เผชิญกับเสียงรบกวนที่ไม่รู้จักจะทำให้เกิดการขาดทุนทั้งหมด) | แข็งแกร่ง (จำกัดการขาดทุนโดยเส้นทางถอยและหลีกเลี่ยงความเสียหายร้ายแรง) |
| ความสุจริตของตรรกะ | ไม่มีเลย (โครงสร้างข้อบกพร่องที่เลื่อนความเสี่ยงล้มละลายไปยังอนาคต) | สูงมาก (โครงสร้างการเพิ่มประสิทธิภาพที่ให้ความอยู่รอดทางกายภาพเป็นอันดับแรก) |
สถาปัตยกรรม Nanpin ที่อ้างอิงข้อมูลอนาคตจะบีบรัดความเสี่ยงล้มละลายจนถึงขีดจำกัดและเลื่อนไปยังอนาคตในฐานะความเสี่ยงท้ายตลาด ระบบที่ปล่อยให้ความเสี่ยงนี้คงอยู่จะล่มสลายในการใช้งานจริงอย่างแน่นอน
3. หลักการ “การอยู่รอด” ตามที่วิศวกรออกแบบกระบวนการกำหนด
ฉันไม่ใช่นักโปรแกรมเมอร์ ไม่ใช่วิศวกรด้าน software ฉันเป็นวิศวกรออกแบบกระบวนการที่กำหนดโครงสร้างรากฐานของระบบ
ฉันไม่เห็นคุณค่าของความงามทางไวยากรณ์ของภาษาโปรแกรมหรือรายงานที่สวยงามเพียงในพื้นที่ทดสอบเท่านั้น สิ่งที่ฉันมุ่งมั่นคือความสามารถในการอยู่รอดทางกายภาพของระบบในสภาพตลาดรุนแรง (robustness)
ถ้าตั้งอยู่บนสมมติฐานที่อนาคตไม่แน่นอน สิ่งที่ระบบควรให้ความสำคัญคือ “หลีกเลี่ยงความเสียหายร้ายแรง” เพื่อให้บรรลุสิ่งนี้ จำเป็นต้องกำจัดทัศนคติที่อดทนต่อขาดทุนจากสถาปัตยกรรมอย่างสมบูรณ์
ถือครองตำแหน่งเดียวเท่านั้น และบังคับให้มีเส้นทางถอยที่แถวเดียวและชัดเจน (SL) ในระดับระบบ พร้อมกับปรับสมดุลความเสี่ยงรางวัล ปิดการเข้าเทรดในสภาวะตลาดที่ไม่เอื้อเช่นช่วงที่สเปรดขยาย
การออกแบบนี้บรรจุการแพ้พ่ายเป็นกระบวนการปกติของระบบตั้งแต่ต้น โดยไม่ให้รับความขาดทุนไว้เป็นส่วนหนึ่งของโครงสร้าง แต่กำหนดให้การถอนตัวทำได้และจำกัดความเสี่ยงไว้ในปัจจุบัน เพื่อให้ “ความอยู่รอดทางกายภาพ” ในระยะยาวได้รับประกัน
สรุป: มุ่งสู่กระบวนการตรวจสอบความถูกต้องทางตรรกะที่เข้มงวด
ในห้องอบอุ่นของสภาพแวดล้อมการทดสอบ การใช้ Future Data Reference Bias เพื่อปรับแต่งระบบให้เหมาะสมเป็นการไร้ประโยชน์ในการต่อสู้กับตลาดจริง เพราะไม่มีกำแพงป้องกัน
จุดประสงค์ที่แท้จริงของการเทรดระบบไม่ใช่การต่อสู้ในพื้นที่เสมือนกับตัวเลข แต่คือการปกป้องทุนของตนอย่างเข้มงวดท่ามกลางตลาดที่เปลี่ยนแปลงอย่างไร้ความปรานี พร้อมกับการแสวงหาความได้เปรียบที่เป็นสากลอย่างต่อเนื่อง
เรา Semura Lab. ไม่สนับสนุนการทำงานของกล่องดำที่สร้างขึ้นด้วยตรรกะไม่สุจริตอย่างเด็ดขาด ผ่านการทดสอบที่รุนแรงเช่น Walk-Forward Analysis (WFA) เพื่อพิสูจน์ความสุจริตของตรรกะในการเทรด และมุ่งมั่นในการออกแบบกระบวนการที่ช่วยให้รอดตายท่ามกลางสภาพตลาดที่รุนแรงเป็นอันดับแรก
เพื่อการพิชิตพื้นที่ที่ไม่รู้จัก จำเป็นต้องกำจัดอัตราชนะที่ดูเหมือนและความคาดหวังที่เพ้อฝัน และออกแบบระบบจากพื้นฐานด้วยตำแหน่งเดียวและการบริหารจัดการเงินอย่างเข้มงวด