All posts

Forward Test คืออะไร? ทดสอบ EA ในตลาดจริงก่อนใช้ขนาดเต็ม

Backtest บอกว่าระบบทำงานอย่างไรกับข้อมูลในอดีต แต่ไม่ได้บอกว่าจะเป็นอย่างไรเมื่อเจอ Spread จริง การส่งคำสั่งจริง และตลาดที่ยังไม่เกิดขึ้น Forward Test คือขั้นที่เชื่อมสองโลกนี้ บทความนี้อธิบายวิธีทำ สิ่งที่ต้องเปรียบเทียบ และทำไมต้องใช้เวลานานกว่าที่หลายคนคิด

ตัวเลขเป็นตัวอย่างเพื่อประกอบบทความ · ตรวจเงื่อนไขของโบรกเกอร์ก่อนเทรดจริง

สรุปสาระสำคัญ

  • Forward Test คือการรัน EA ต่อในตลาดปัจจุบันหลัง Backtest บนบัญชี Demo หรือบัญชีจริงขนาดเล็ก
  • สิ่งที่ Backtest จำลองได้ไม่ครบคือ Spread จริง Slippage และการส่งคำสั่ง
  • ปรับค่าคาดหวังจาก Backtest ด้วยต้นทุนจริงก่อนเทียบผล
  • จำนวนไม้สำคัญกว่าจำนวนสัปดาห์ ผลไม่กี่สิบไม้ยังแกว่งได้กว้างมาก
  • ตั้งเกณฑ์หยุด ปรับ หรือไปต่อไว้ล่วงหน้า ก่อนเห็นผล

ทำไม Backtest อย่างเดียวไม่พอ

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

Demo, Cent หรือบัญชีจริงขนาดเล็ก

  • บัญชี Demo — ไม่ใช้เงินจริง เหมาะกับการตรวจว่า EA เปิดปิดไม้ถูกต้อง แต่การจับคู่คำสั่งมักดีกว่าบัญชีจริง
  • บัญชี Cent หรือบัญชีจริงขนาดเล็ก — ได้ Spread และการส่งคำสั่งจริง ด้วยจำนวนเงินที่เสี่ยงน้อย
  • ใช้ประเภทบัญชีเดียวกับที่จะใช้จริง — เพราะโครงสร้างต้นทุนต่างกัน ตามที่อธิบายใน ประเภทบัญชีเทรด

สิ่งที่ต่างจาก Backtest

  • Spread ในช่วงที่ EA เทรดจริง — โดยเฉพาะช่วงรอยต่อของวันและช่วงข่าว
  • Slippage และการปฏิเสธคำสั่ง — ราคาที่ได้ไม่ใช่ราคาที่ขอเสมอ
  • ความหน่วงของการเชื่อมต่อ — ขึ้นกับที่ตั้งของเครื่อง อ่านเรื่องนี้ใน VPS สำหรับ MT5
  • เหตุการณ์ที่ไม่มีในข้อมูล — เซิร์ฟเวอร์ปิดปรับปรุง การหลุดการเชื่อมต่อ และข่าวแรงตาม ปฏิทินเศรษฐกิจ

ปรับค่าคาดหวังก่อนเทียบผล

ก่อนเริ่ม ให้แปลงผลจาก Backtest เป็นค่าคาดหวังที่รวมต้นทุนจริงแล้ว ตัวอย่างเช่นรายงานบอก Expected Payoff +0.20R ต่อไม้ แต่ช่วงที่เทรดจริง Spread กว้างกว่าในการทดสอบ 0.4 pip และมี Slippage เฉลี่ย 0.3 pip รวม 0.7 pip เมื่อ Stop Loss คือ 14 pips ต้นทุนที่เพิ่มคือ 0.7 ÷ 14 = 0.05R ต่อไม้ ค่าคาดหวังที่ควรใช้เทียบจึงเหลือ +0.15R

ถ้าข้ามขั้นนี้ แล้วเอาผล Forward ไปเทียบกับ +0.20R ตรง ๆ จะสรุปผิดว่าระบบแย่ลง ทั้งที่ส่วนต่างอาจมาจากต้นทุนที่รู้ได้ล่วงหน้า

ต้องทดสอบนานแค่ไหน

คำถามนี้ควรตอบเป็นจำนวนไม้ ไม่ใช่จำนวนสัปดาห์ เพราะผลรวมของไม้จำนวนน้อยแกว่งตามโชคได้มาก ภาพด้านล่างใช้ตัวอย่างเดียวกัน ค่าคาดหวัง +0.15R ต่อไม้ และความแกว่งต่อไม้ประมาณ 1.25R

กราฟผลสะสมของ Forward Test เทียบค่าคาดหวังจาก Backtest ก่อนและหลังหักต้นทุน พร้อมแถบความแกว่งปกติและจำนวนไม้ที่ต้องใช้

หลัง 40 ไม้ ค่าคาดหวังรวมคือ +6R แต่ช่วงที่ความแกว่งปกติอธิบายได้กว้างตั้งแต่ประมาณ −9.8R ถึง +21.8R ผล Forward ตัวอย่างที่ได้ +15R จึงยังไม่ได้พิสูจน์ว่าระบบดีกว่าที่คาด และถ้าได้ −5R ก็ยังไม่ได้พิสูจน์ว่าระบบพัง การจะแยกค่าคาดหวัง +0.15R ออกจากศูนย์ได้ต้องใช้ราว 276 ไม้ ถ้า EA เทรดสัปดาห์ละ 5 ไม้ คือราว 55 สัปดาห์ ตัวเลขเป็นภาพประกอบ

เทียบอะไรได้เร็วกว่ากำไร

แม้กำไรต้องใช้เวลานานกว่าจะสรุปได้ แต่หลายเรื่องตรวจได้เร็วกว่ามาก และควรตรวจตั้งแต่สัปดาห์แรก

  • ต้นทุนต่อไม้ — Spread ที่จ่ายจริงและ Slippage เทียบกับที่ใช้ในการปรับค่าคาดหวัง
  • ความถี่ของไม้ — จำนวนไม้ต่อสัปดาห์ใกล้กับ Backtest ในช่วงตลาดคล้ายกันหรือไม่
  • ขนาดของไม้ชนะและไม้แพ้ — Stop และเป้าทำงานตามระยะที่ตั้งไว้หรือไม่
  • ข้อความในแท็บ Experts และ Journal — มีคำสั่งถูกปฏิเสธหรือข้อผิดพลาดซ้ำหรือไม่

ตั้งเกณฑ์หยุดหรือไปต่อไว้ล่วงหน้า

เขียนเกณฑ์ไว้ก่อนเริ่ม เช่น หยุดและทบทวนเมื่อ Drawdown ลึกกว่าที่ Backtest เคยเจออย่างชัดเจน หรือเมื่อพฤติกรรมของ EA ไม่ตรงกับที่ออกแบบไว้ และเพิ่มขนาดทีละขั้นเมื่อผ่านจำนวนไม้ที่กำหนด การตัดสินใจล่วงหน้าช่วยกันไม่ให้หยุดเร็วเกินไปหลังแพ้ไม่กี่ไม้ หรือเพิ่มขนาดเร็วเกินไปหลังชนะติดกัน บันทึกผลและการเปลี่ยนค่าตั้งทุกครั้งตามวิธีใน แผนการเทรดและบันทึกการเทรด

ความผิดพลาดที่พบบ่อย

  • ทดสอบไม่กี่สัปดาห์แล้วสรุป — จำนวนไม้น้อยเกินกว่าจะแยกฝีมือออกจากโชค
  • เปลี่ยนค่าตั้งระหว่างทาง — ผลที่ได้จึงไม่ได้มาจากระบบเดียวกัน
  • ใช้ผล Demo แทนบัญชีจริง — การจับคู่คำสั่งอาจดีกว่าความจริง
  • ไม่ปรับค่าคาดหวังด้วยต้นทุน — เทียบกับตัวเลขที่ดีเกินจริงจาก Backtest

สรุป

Forward Test ไม่ได้มีไว้พิสูจน์ว่าระบบทำกำไรได้ในไม่กี่สัปดาห์ แต่มีไว้ตรวจว่าระบบทำงานถูกต้องในสภาพจริง และผลยังอยู่ในกรอบที่คาดไว้หลังหักต้นทุน ถ้ายังไม่ได้อ่านวิธีตีความผลทดสอบ ย้อนกลับไปที่ อ่านรายงาน Backtest และ Optimization และ Overfitting

Discussion