การ Backtest เป็นการทดสอบระบบการทำงานของ EA (Expert Advisor) ว่าจะสามารถทำงานได้ตามที่ได้เขียนมาหรือไม่ โดยอาศัยข้อมูลกราฟจากอดีตมาเพื่อทำการคำนวณ ซึ่งหลายครั้งที่ EA ที่เราเห็นนำมา Backtest แล้วกำไร แต่เมื่อมารันเงินจริงในตลาดจริงกลับไม่ทำกำไรตามที่ต้องการ เรามาดูกัยว่ามีปัจจัยใดๆบ้างที่เราควรระวังในการ Backtest

1.กราฟแต่ละโบรคเกอร์ไม่เท่ากัน
โบรคเกอร์ จะมีหน้าที่คอยติดต่อกับธนาคารต่างๆทั่วโลกเพื่อนำราคาจากธนาคารเข้ามาเพื่อทำการซื้อขายในตลาด Forex ซึ่งธนาคารที่แต่ละโบรคเกอร์ไปติดต่อไว้ก็ไม่เหมือนกัน ทำให้ราคาที่ได้ของแต่ละโบรคเกอร์ต่างกัน ทำให้ข้อมูลกราฟไม่เหมือนกัน ดังนั้น ผู้พัฒนา EA หลายๆคนจึงต้องกำหนดว่า EA ตัวนี้รันในโบรกเกอร์ไหนได้บ้าง ถ้าเรานำไปรันในโบรคเกอร์ที่นักพัฒนาไม่ได้แจ้งไว้ ค่าที่ได้อาจจะผิดเพี้ยนไป ถ้านำไปรันจริงอาจจะเกิดความสูญเสียในพอร์ตของเราก็ได้

 

2.ข้อมูลการเคลื่อนที่ของกราฟเกิดจากการสร้างขึ้นของโปรแกรม MT4
ในการเคลื่นที่ของราคา 1 ครั้งจะเรียกว่า Tick (ติ๊ก) ซึ่งนับจากการเคลื่อนที่ของราคาในกราฟ 1 แท่ง การเก็บข้อมูล Tick มาด้วยอาจจะทำให้ต้องใช้พื้นที่ในการเก็บข้อมูลจำนวนมหาศาล ดังนั้น การเก็บข้อมูลย้อนหลังที่นำมา Backtest จะมีเพียงข้อมูล เวลาของแท่ง(Time),ราคาเปิด(Open), ราคาที่จุดสูงสุดของแท่ง(High), ราคาที่จุดต่ำสุดของแท่ง(Low), ราคาปิด(Close) และ ปริมาณการซื้อขายต่อแท่ง(Volume) เท่านั้น

ซึ่งโบรคเกอร์ไม่ได้เก็บข้อมูลการเคลื่อนที่ของราคา การที่เราเห็นราคาขยับเคลื่อนที่นั้น จะเกิดจากการ generate หรือสร้างขึ้นมาของโปรแกรม MT4 ซึ่งการสร้างการเคลื่อนที่ของราคานั้น จะมีหลักการหรือทฤษฏีที่หลากหลาย แต่แน่นอนว่า การเคลื่อนที่ที่เราเห็นนั้น ไม่ใช่การเคลื่อนที่ของตลาดจริงๆ ผลที่ตามมาคือ EA ที่เทรดสั้น มีจุดทำกำไรที่น้อย อาจจะทำให้ผลการ Backtest ผิดเพี้ยน หรือได้กำไรมากเกินความจริงก็เป็นได้

 

3.บางครั้งนักเทรดเดอร์อาจจะ Download ข้อมูลกราฟไม่สมบูรณ์
นักเทรดเดอร์มือใหม่หลายคนอาจจะ Download ข้อมูลกราฟย้อนหลังไม่สมบูรณ์ หรือเน็ตที่ Download ช้า อาจจะทำให้ข้อมูลราคาผิดเพี้ยนไป ซึ่งไม่มีทางรู้เลยว่าข้อมูลที่เรา Download มานั้นสมบูรณ์หรือไม่ ดังนั้น ควรศึกษาวิธีการ Download History ให้ละเอียดก่อนทำการ backtest

 

4.สภาวะตลาดจริงกับค่า Spread
ในการ backtest สิ่งที่แตกต่างจากตลาดจริงคือ การเปิดและปิดออเดอร์ ซึงในการ Backtest จะสามารถเปิด-ปิดออเดอร์ได้ทันทีโดยไม่ต้องรอให้ตลาดยืนยันการซื้อขาย ซึ่งแตกต่างจากตอนเทรดในตลาดจริง เราต้องรอการยืนยันการซื้อขายจากโบรคเกอร์เสียก่อนจึงจะสามารถเปิด-ปิดออเดอร์ได้ ซึ่งการรอคำสั่งยืนยันอาจจะเพียงเสี้ยววินาที แต่การในตลาดมีความผันผวนค่อนข้างมาก จะทำให้เราเสียตำแหน่งการเข้าสัญญาณที่ดีไปก็เป็นได้

ทั้งหมดนี้เป็นเพียงส่วนหนึ่งเท่านั้นของสิ่งที่เราต้องระวังในการ Backtest คำแนะนำคือ เราไม่ควรเชื่อการ backtest 100 % ไม่ใช่ว่าเมื่อเราเห็นกำไรจากการ backtest แล้วนำ EA ไปรันจริงได้เลย เพราะการทดสอบ EA ที่ดีที่สุดคือการ Forward Test หรือรันไปเรื่อยๆ ในตลาดจริงเท่านั้น ค่อยๆเพิ่มเงินทุน ให้เวลา EA ได้พิสูจน์ตัวเองให้เราเห็น เมื่อมั่นใจแล้วจึงค่อยเพิ่มทุนขึ้นไป จะเป็นหนทางที่ดีที่สุด