อธิบาย 3 แนวคิดที่ทุกคนที่ทำ EA ต้องรู้ — Backtest คืออะไร ทำไมต้อง Optimize และ Overfitting คือกับดักที่อันตรายที่สุด
Backtest คือการ "ย้อนเวลา" เอา EA ไปรันกับข้อมูลราคาในอดีตที่เกิดขึ้นแล้ว เพื่อดูว่าถ้าใช้กลยุทธ์นี้เทรดจริงในช่วงเวลานั้น จะได้กำไรหรือขาดทุนเท่าไหร่ — เหมือนสอบเทียบเพื่อดูฝีมือ EA ก่อนเอาเงินจริงไปเสี่ยง
EA ทุกตัวมี "พารามิเตอร์" — ตัวเลขที่กำหนดพฤติกรรม เช่น ระยะ Stop Loss, ช่วงเวลาของอินดิเคเตอร์ Optimize คือกระบวนการลองสลับค่าพารามิเตอร์เหล่านี้หลายพันแบบ แล้ว Backtest ทุกแบบ เพื่อหาชุดที่ให้ผลลัพธ์ดีที่สุด
Overfitting เกิดเมื่อ Optimize จนได้ค่าที่ "จำ" รายละเอียดเล็กๆ น้อยๆ ของข้อมูลอดีตได้แม่นเป๊ะ (รวมถึงความบังเอิญที่ไม่มีทางเกิดซ้ำ) แทนที่จะจับ "รูปแบบที่แท้จริง" ของตลาด — ผลคือ กราฟย้อนหลังสวยงามมาก แต่พอเอาไปเทรดจริงกับข้อมูลใหม่ กลับพังทันที เพราะมันไม่เคยเรียนรู้อะไรจริง มันแค่จำข้อสอบเก่าได้
Out-of-Sample Testing (OOS) คือการแบ่งข้อมูลเป็น 2 ก้อนเพียงครั้งเดียว — ก้อนแรก (In-Sample) ใช้ Optimize หาค่าพารามิเตอร์ แล้วเอาค่านั้นไปทดสอบกับก้อนที่สอง (Out-of-Sample) ที่ไม่เคยใช้ตอนหาค่าเลย เหมือน "อ่านหนังสือทั้งเทอมแล้วสอบทีเดียวจบ" — ทำแค่รอบเดียว ไม่มีการเลื่อนหรือทำซ้ำ
Walk-Forward Analysis (WFA) คือการทำ IS→OOS ซ้ำหลายรอบ โดยเลื่อนหน้าต่างเวลาไปเรื่อยๆ ตลอดประวัติข้อมูล: Optimize ช่วง A → ทดสอบช่วง B (ที่ตามหลัง A) → เลื่อนไป Optimize ช่วง B → ทดสอบช่วง C → ทำแบบนี้ต่อไปจนครบข้อมูล เหมือน "เรียนบทที่ 1 สอบ, เรียนบทที่ 2 สอบ" สลับกันไปตลอดทั้งเทอม — สิ่งที่แยก Walk-Forward ออกจาก OOS ธรรมดาคือ ความซ้ำ (repetition) และการเลื่อนหน้าต่าง (rolling window)
ผล backtest ที่เห็นคือ "ลำดับเทรดแบบเดียว" ที่เกิดขึ้นจริงในอดีต แต่โชคก็มีผลต่อลำดับนั้น (เทรดกำไรมาก่อนหรือขาดทุนมาก่อน ส่งผลต่อ drawdown สูงสุดต่างกันได้) Monte Carlo Simulation คือการสุ่มสลับลำดับเทรดเดิมซ้ำหลายพันครั้ง (resampling) แล้วดูการกระจายตัวของผลลัพธ์ — ถ้ากลยุทธ์ทนทานจริง ผลควรยังออกมาดีในเกือบทุกลำดับที่สุ่มได้ ไม่ใช่ดีเฉพาะลำดับที่เกิดขึ้นจริงลำดับเดียว
KRV ROBUSTA คัดกรองชุดพารามิเตอร์ที่ทนทาน ไม่ overfit ให้อัตโนมัติ จากผล Optimize หลายปีที่คุณอัปโหลดเข้ามา