เรียนรู้ › แพลตฟอร์มและเครื่องมือ
อ่านรายงาน MT5 Strategy Tester ทีละช่อง ตัวเลขไหนสำคัญ ตัวไหนหลอกตา
ไล่ทุกช่องในรายงาน Backtest ของ MT5 ตั้งแต่ History Quality, Profit factor, Recovery factor ถึง Equity drawdown พร้อมตัวอย่างคำนวณครบทุกช่องจากรายการไม้ 20 ไม้
- ทุกช่องในรายงานคำนวณจากรายการไม้ได้เอง ถ้าคิดเองเป็น จะรู้ทันทีว่าตัวไหนซ่อนอะไรไว้
- วางแผน lot จาก Equity Drawdown Maximal ไม่ใช่ Balance drawdown และไม่ใช่ DD รายวัน
- Profit factor และ Expected payoff ต้องอ่านคู่กับต้นทุนต่อไม้และจำนวนไม้ ตัวเลขสวยจากไม้น้อย ๆ ยังเชื่อไม่ได้
- แยกผลรายปีเสมอ และการปรับระบบทุกครั้งต้องชนะการแค่เพิ่ม lot ที่ drawdown เท่ากัน
หลังรัน Strategy Tester (ตัวทดสอบย้อนหลังของ MT5) เสร็จ แท็บ Backtest จะเต็มไปด้วยตัวเลขหลายสิบช่อง คนส่วนใหญ่ดูแค่กำไรสุทธิกับกราฟ แต่ความเสี่ยงจริงซ่อนอยู่ในช่องอื่น บทนี้ไล่ทีละช่องว่าหมายถึงอะไร กับดักอยู่ตรงไหน และค่าแบบไหนพอรับได้ (เป็นเกณฑ์คร่าว ๆ ของเรา ไม่ใช่มาตรฐานกลาง) โดยคำนวณทุกช่องจากรายการไม้ตัวอย่างชุดเดียวให้เห็นตลอดบท
ตัวอย่างที่ใช้ทั้งบท
รายการไม้ด้านล่างแต่งขึ้นเพื่ออธิบาย ไม่ใช่ผลของระบบหรือตลาดจริง ทุน 1,000 USD เปิดทีละไม้ ไม้ 1–10 อยู่ในปี 2025 ไม้ 11–20 อยู่ในปี 2026 ช่อง “ลึกสุด” คือจุดที่ไม้ติดลบมากที่สุดระหว่างถือ (ไม้แพ้ปิดที่จุดลึกสุดพอดี) และสมมติว่าใช้ margin 200 USD ตลอดเวลาที่มีไม้เปิด
| ไม้ | ทิศ | ผล | ลึกสุด | ไม้ | ทิศ | ผล | ลึกสุด |
|---|---|---|---|---|---|---|---|
| 1 | Buy | +42 | −10 | 11 | Buy | +65 | −12 |
| 2 | Sell | −25 | −25 | 12 | Sell | +18 | −5 |
| 3 | Buy | +38 | −8 | 13 | Buy | +47 | −20 |
| 4 | Buy | +55 | −15 | 14 | Sell | −26 | −26 |
| 5 | Sell | −48 | −48 | 15 | Buy | +88 | −18 |
| 6 | Buy | −45 | −45 | 16 | Sell | +48 | −9 |
| 7 | Sell | +20 | −110 | 17 | Buy | −31 | −31 |
| 8 | Buy | −32 | −32 | 18 | Sell | +36 | −14 |
| 9 | Sell | −27 | −27 | 19 | Buy | +40 | −6 |
| 10 | Buy | −30 | −30 | 20 | Buy | −29 | −29 |
เราคำนวณทุกช่องด้วยสคริปต์ตามนิยามของรายงาน แล้วจัดวางแบบเดียวกับหน้า Backtest ของ MT5
ส่วนข้อมูลการทดสอบ
History Quality บอกว่าข้อมูลประวัติราคาที่โหมดนั้นใช้ครบแค่ไหน กับดักคือคนชอบอ่านว่า 100% แปลว่าแม่นเท่าของจริง ตัวเลขนี้ไม่ได้บอกว่าเป็น tick จริงหรือ tick ที่สร้างขึ้นเอง เกณฑ์คร่าว ๆ ควรใกล้ 100% และสำหรับ EA ที่ไวต่อราคาในแท่ง ต้องเห็นในแท็บ Journal ด้วยว่าช่วงที่ทดสอบมี tick จริงครบ
Bars และ Ticks คือจำนวนแท่งของ timeframe ที่ทดสอบ กับจำนวน tick ที่ตัวทดสอบจำลอง กับดักคือไม่ดูเลย ถ้า Ticks ใกล้กับ Bars มาก แปลว่าตัวทดสอบเห็นราคาแค่ไม่กี่จุดต่อแท่ง Trailing stop แคบหรือ pending order จะได้ผลดีเกินจริง อ่านต่อใน โหมดทดสอบใน MT5
Initial Deposit คือทุนตั้งต้น ทุกตัวเลขที่เป็นเงินขึ้นกับทุนและ lot ที่ตั้ง กับดักคือเอากำไร 5,000 ของการทดสอบหนึ่งไปเทียบกับ 3,000 ของอีกการทดสอบที่ทุนหรือ lot ต่างกัน เทียบเป็นเปอร์เซ็นต์ หรือปรับ lot ให้เท่ากันก่อนเสมอ
ส่วนกำไร
Total Net Profit คือยอดเงินสุดท้ายลบทุนตั้งต้น รวม swap และค่าคอมมิชชันที่ตัวทดสอบคิดไว้แล้ว ในตัวอย่าง 1,204 − 1,000 = 204 กับดักคือค่าคอมมิชชันในตัวทดสอบอาจไม่ตรงกับบัญชีจริง ให้เปิดรายการ deals ดูว่าคอลัมน์ Commission มีค่าตามที่บัญชีเราจ่ายจริง
Gross Profit และ Gross Loss คือผลรวมของไม้กำไรทุกไม้ และไม้ขาดทุนทุกไม้ ตัวอย่างได้ 497 กับ −293 สองช่องนี้เป็นวัตถุดิบของช่องถัดไป
Profit Factor = Gross profit ÷ |Gross loss| = 497 ÷ 293 = 1.70 กับดักคือค่าสูงจากไม้จำนวนน้อย ระบบที่เทรด 15 ไม้แล้วได้ 3.0 ยังบอกอะไรไม่ได้ เกณฑ์คร่าว ๆ ของเรา ต่ำกว่าราว 1.1 ถือว่าบาง เพราะ slippage ตอนรันจริงพลิกได้ง่าย ราว 1.3 ขึ้นไปบนไม้หลายร้อยไม้และหลายปีจะสบายใจขึ้น
Expected Payoff = กำไรสุทธิ ÷ จำนวนไม้ = 204 ÷ 20 = 10.20 ต่อไม้ คือค่าเฉลี่ยที่ได้ต่อการเปิดหนึ่งครั้ง กับดักคือไม่เทียบกับต้นทุนต่อไม้ ถ้าได้ต่อไม้ไม่กี่เท่าของ spread ส่วนต่างที่ Backtest ไม่เห็น เช่น slippage อาจกินหมด ในงานของเราบนทองคำที่ 0.01 lot เกณฑ์คือปีที่แย่ที่สุดต้องได้อย่างน้อย 0.20 USD ต่อไม้ โดย spread เฉลี่ยที่วัดได้คือราว 0.27 USD ต่อไม้ อ่านเพิ่มใน ต้นทุน spread ต่อไม้
Recovery Factor คือกำไรสุทธิหารด้วย drawdown สูงสุดที่เป็นเงิน บอกว่ากำไรทั้งช่วงเป็นกี่เท่าของหลุมที่ลึกที่สุด ตัวอย่างนี้ถ้าหารด้วย Equity DD ได้ 204 ÷ 203 = 1.00 ถ้าหารด้วย Balance DD ได้ 204 ÷ 162 = 1.26 กับดักคือไม่รู้ว่าตัวเลขในรายงานหารด้วย DD ตัวไหน วิธีที่ปลอดภัยคือหารเองด้วย Equity Drawdown Maximal ทุกครั้ง เกณฑ์คร่าว ๆ ใช้เทียบเวอร์ชันบนช่วงเวลาเดียวกันเท่านั้น ถ้าทดสอบหลายปีแล้วได้ต่ำกว่าราว 2 แปลว่ากำไรทั้งช่วงแค่ราวสองหลุม
Sharpe Ratio คืออัตราส่วนผลตอบแทนต่อความผันผวน ยิ่งสูงยิ่งเรียบ เราไม่ยืนยันรายละเอียดว่า MT5 ใช้ช่วงเวลาและอัตราอ้างอิงแบบไหนในการคิด จึงไม่คำนวณในตัวอย่างนี้ กับดักคือเอาไปเทียบกับ Sharpe ของกองทุนหรือโปรแกรมอื่น ใช้เทียบได้แค่ระหว่างการทดสอบใน MT5 ที่ตั้งค่าเหมือนกัน และใช้เป็นตัวตัดสินรอง ไม่ใช่ตัวหลัก
ส่วน Drawdown และ Margin level
Drawdown คือการที่พอร์ตลดลงจากจุดสูงสุดก่อนหน้า รายงานแยกเป็น Balance (นับเฉพาะไม้ที่ปิด) กับ Equity (รวมไม้ที่ยังเปิด) และแต่ละตัวมีสามแบบ
| ช่อง | ความหมาย | Balance | Equity |
|---|---|---|---|
| Absolute | ต่ำกว่าทุนตั้งต้นมากสุดเท่าไร | 1,000 − 948 = 52 | 1,000 − 907 = 93 |
| Maximal | ลดจากจุดสูงสุดมากสุด นับเป็นเงิน | 162 (14.59%) | 203 (18.29%) |
| Relative | ลดจากจุดสูงสุดมากสุด นับเป็น % | 14.59% (162) | 18.29% (203) |
ในตัวอย่าง Maximal กับ Relative มาจากหลุมเดียวกัน เลยได้ค่าเท่ากัน ถ้าพอร์ตโตขึ้นมาก สองช่องนี้อาจมาจากคนละช่วง รายละเอียดอยู่ใน Drawdown: Equity กับ Balance
ดูไม้ที่ 7 ก่อนเปิดไม้ Balance อยู่ที่ 1,017 ระหว่างถือติดลบลึกสุด 110 Equity จึงลงไปที่ 1,017 − 110 = 907 จากจุดสูงสุด 1,110 คือหายไป 203 หรือ 203 ÷ 1,110 = 18.29% แต่ไม้นี้ปิดกำไร +20 Balance จึงไม่เคยเห็นหลุมนี้เลย หลุมลึกสุดของ Balance คือ 1,110 ลงไป 948 หลังไม้ที่ 10 เท่านั้น
วางแผน lot จาก Equity Drawdown Maximal เสมอ เพราะเป็นหลุมที่เงินในบัญชีเคยลงไปจริง Balance drawdown วัดเฉพาะขาดทุนที่ยอมปิดแล้ว
ช่องว่างระหว่างสองตัวนี้ใหญ่ได้มาก ในการทดสอบย้อนหลังของเราบนทองคำ ระบบตะกร้าที่ถือไม้ค้างจนกำไรตามเป้าเล็ก ๆ ไม่มี Stop loss ต่อไม้ ปี 2024 (tick ที่สร้างจากข้อมูลแท่ง 1 นาที) รายงาน Balance DD แค่ 0.31% แต่ Equity DD จริงคือ 44.19% ต่างกันราว 142 เท่า ผลทดสอบย้อนหลังไม่ได้บอกผลในอนาคต
อีกกับดักคือ DD รายวัน บางเครื่องมือหรือกติกาของบัญชีแบบ prop วัดการลดลงภายในวันเดียว ซึ่งต่ำกว่าหรือเท่ากับ Equity DD ของทั้งช่วงทดสอบเสมอ ในงานของเราเองเคยเกือบสรุปผิดเพราะเอา DD รายวันมาหารกำไร จนตัวเลขกำไรต่อความเสี่ยงดูดีเกินจริง อย่าเอาสามตัวนี้มาแทนกัน
เกณฑ์คร่าว ๆ ของเรา ตั้งก่อนว่าพอร์ตลดได้ไม่เกินเท่าไร แล้วให้ Equity DD สูงสุดที่เห็นในการทดสอบไม่เกินราวครึ่งหนึ่งของเพดานนั้น เพราะอนาคตอาจลึกกว่าที่เห็น และจำไว้ว่าหลุม 18.29% ต้องกำไรกลับ 203 ÷ 907 = 22.38% ถึงจะกลับมาที่เดิม ลองตัวเลขอื่นได้ที่ เครื่องคิดเลขการฟื้นตัว
Margin Level ในรายงานคือค่าต่ำสุดตลอดการทดสอบ = Equity ÷ Margin ที่ใช้ × 100 ตัวอย่างต่ำสุดตอนไม้ที่ 7 คือ 907 ÷ 200 × 100 = 453.50% กับดักคือค่านี้ขึ้นกับ leverage ที่ตั้งในตัวทดสอบ ซึ่งอาจไม่ตรงกับบัญชีจริง และระดับ Stop out ต่างกันไปตามโบรก ดูได้ใน contract specification หรือเงื่อนไขบัญชี เกณฑ์คร่าว ๆ ค่าต่ำสุดควรอยู่สูงกว่าระดับ Stop out หลายเท่า อ่านเพิ่มใน Leverage, margin และ Stop out
ส่วนจำนวนไม้และสถิติต่อไม้
Total Trades คือจำนวนไม้ที่ปิดแล้ว (ส่วน Total Deals นับคำสั่งเข้าและออกแยกกัน จึงมากกว่าราวสองเท่า) กับดักคือไม้น้อยแล้วเชื่อตัวเลขทุกช่อง และเทียบ DD ระหว่างเวอร์ชันที่จำนวนไม้ต่างกันมาก ระบบที่เทรดน้อยลงมักมี DD ต่ำลงเองโดยไม่ได้ปลอดภัยขึ้น เกณฑ์คร่าว ๆ ต่ำกว่าราว 100 ไม้ ทุกช่องยังแกว่งมาก ตัวอย่าง 20 ไม้ในบทนี้จึงใช้อธิบายวิธีคิดเท่านั้น
Short Trades (won %) และ Long Trades (won %) คือจำนวนไม้ Sell และ Buy พร้อมสัดส่วนที่ชนะ ตัวอย่างได้ Sell 8 ไม้ ชนะ 50.00% และ Buy 12 ไม้ ชนะ 58.33% กับดักคือฝั่งหนึ่งดีมากเพราะช่วงทดสอบเป็นเทรนด์ทางเดียว เกณฑ์คร่าว ๆ ถ้าสองฝั่งต่างกันมาก ให้แยกดูทีละปี ว่าฝั่งที่ดียังดีในปีที่ตลาดไปอีกทางหรือไม่
Profit Trades และ Loss Trades (% of total) คือจำนวนไม้ชนะและแพ้ ตัวอย่างชนะ 11 จาก 20 = 55.00% กับดักคือดูอัตราชนะเดี่ยว ๆ ต้องเทียบกับจุดเท่าทุน = 1 ÷ (1 + RR) ตัวอย่างนี้ RR = 45.18 ÷ 32.56 = 1.39 จุดเท่าทุนจึงเป็น 41.88% ชนะ 55% จึงอยู่เหนือเส้น อ่านเหตุผลเต็มใน อัตราชนะกับจุดเท่าทุน
Largest profit trade และ Largest loss trade คือไม้ที่กำไรมากสุด 88 และขาดทุนมากสุด −48 กับดักคือกำไรทั้งก้อนมาจากไม่กี่ไม้ เกณฑ์คร่าว ๆ ลองตัดไม้กำไรที่ใหญ่ที่สุด 1–2 ไม้ออก ถ้ากำไรสุทธิกลายเป็นลบ แปลว่าระบบพึ่งเหตุการณ์ที่เกิดยาก ตัวอย่างนี้ 204 − 88 = 116 ยังบวก ส่วนไม้ขาดทุนมากสุดควรใกล้กับ Stop loss ที่ตั้งไว้ ถ้าใหญ่กว่ามาก ให้หาว่าไม้นั้นเกิดอะไรขึ้นในรายการ deals
Average profit trade และ Average loss trade คือ 497 ÷ 11 = 45.18 และ −293 ÷ 9 = −32.56 ใช้หา RR จริงของระบบ ซึ่งรวมทุกอย่างที่เกิดขึ้นแล้ว ไม่ใช่ RR ที่ตั้งใจไว้
Maximum consecutive wins ($) และ Maximal consecutive profit (count) สองช่องนี้คนสับสนบ่อย ช่องแรกเลือกชุดที่ชนะติดกัน ยาวที่สุดนับเป็นจำนวนไม้ แล้วบอกเงินในวงเล็บ ตัวอย่างคือไม้ 11–13 ชนะ 3 ไม้ติด รวม 130 ช่องที่สองเลือกชุดที่ได้ เงินมากที่สุด แล้วบอกจำนวนไม้ในวงเล็บ คือไม้ 15–16 ได้ 136 จาก 2 ไม้ ฝั่งขาดทุนอ่านแบบเดียวกัน แพ้ติดยาวสุด 3 ไม้ (ไม้ 8–10 รวม −89) และชุดที่เสียเงินมากสุดคือ −93 จาก 2 ไม้ (ไม้ 5–6) กับดักคือคิดว่าแพ้ติดยาวสุดในอดีตคือเพดานของอนาคต เกณฑ์คร่าว ๆ เผื่อใจและเผื่อทุนไว้ให้แพ้ติดได้ยาวกว่าที่เห็นในรายงาน ดู การแพ้ติดกันเป็นเรื่องปกติ
กราฟ Equity และรายการ deals
กราฟในแท็บ Graph แสดงเส้น Balance กับ Equity ตามเวลา สิ่งที่ควรมองหามีสามอย่าง ส่วนไหนของกำไรมาจากช่วงสั้น ๆ ช่วงเดียว เส้น Equity ห่างลงไปใต้ Balance บ่อยแค่ไหน (สัญญาณว่าระบบถือไม้ติดลบไว้) และมีช่วงยาวที่เส้นแบนหรือลงต่อเนื่องหรือไม่ กราฟที่ขึ้นเป็นเส้นตรงเกินไปสำหรับระบบที่ไม่มี Stop loss มักซ่อนหลุมไว้ใน Equity
รายการ deals ในแท็บ Backtest แสดงทุกคำสั่งเข้าออก พร้อมเวลา ทิศ ขนาด lot ราคา ค่าคอมมิชชัน swap และกำไร ใช้ตรวจว่า lot ตรงกับที่ตั้งใจ ค่าคอมมิชชันมีจริง ไม้ถูกถือข้ามสุดสัปดาห์หรือไม่ และเปิดในช่วงเวลาที่ spread กว้างผิดปกติหรือเปล่า ทางที่ดีคือ export ออกมาคิดเองต่อ เช่น แยกรายปี หรือหากำไรต่อไม้ของแต่ละช่วงเวลา
แยกผลรายปี และเทียบกับการเพิ่ม lot
รายงานรวมทั้งช่วงทับปีดีกับปีแย่ไว้ด้วยกัน ตัวอย่างนี้กำไรสุทธิ +204 แต่ถ้าแยกจะเห็นว่าปี 2025 ขาดทุน −52 และกำไรทั้งหมดมาจากปี 2026 ที่ +256 ถ้าระบบได้เงินเฉพาะสภาพตลาดแบบเดียว ตลาดเปลี่ยนเมื่อไรก็อาจเป็นแบบปี 2025 อีก ดู เมื่อสภาพตลาดเปลี่ยน
ระบบตะกร้าบนทองคำที่ยกมาข้างบนเป็นตัวอย่างที่ดี เมื่อดูตาม Balance DD ปีที่แย่สุดคือ 2022 ที่ 10.04% แต่เมื่อดูตาม Equity DD ปีที่แย่สุดคือ 2024 ที่ 44.19% ส่วนปีอื่นอยู่ระหว่าง 8.45% ถึง 16.25% (ปี 2026 ใช้ tick จริง ปี 2022–2025 ใช้ tick ที่สร้างจากแท่ง 1 นาที) แยกรายปีและอ่านช่องที่ถูกต้องพร้อมกัน ถึงจะเห็นปีที่เป็นเพดานของ lot ผลทดสอบย้อนหลังไม่ได้บอกผลในอนาคต
อีกด่านที่คนมักข้ามคือการเทียบกับ การเพิ่ม lot เฉย ๆ ถ้าทุนพอและไม่ติดเพดาน margin การเพิ่ม lot เป็นกี่เท่า กำไรและ DD ที่เป็นเงินจะเพิ่มตามประมาณเท่านั้น (ปัดตามขั้น lot) Recovery factor จึงเท่าเดิม สมมติมีเวอร์ชัน B ที่เพิ่มกติกาเปิดไม้เพิ่ม ได้กำไร 300 ที่ Equity DD 320 ดูเหมือนดีกว่ากำไร 204 ของเวอร์ชันเดิม แต่ถ้าเพิ่ม lot เวอร์ชันเดิมขึ้น 320 ÷ 203 = 1.576 เท่า จะได้ราว 204 × 1.576 = 321.6 ที่ DD เท่ากัน เวอร์ชัน B จึงแพ้ ทั้งที่กำไรมากกว่า
การปรับระบบทุกครั้งต้องชนะการแค่เพิ่ม lot ที่ drawdown เท่ากัน ถ้าไม่ชนะ แปลว่าเราจ่ายความซับซ้อนและต้นทุนเพิ่มไปฟรี ๆ
ถ้าวางแผนจะเพิ่ม lot ตามพอร์ตที่โต อ่านต่อใน ทบต้นขนาดไม้ตามพอร์ต
ข้อผิดพลาดที่เจอบ่อย
- ดูกำไรสุทธิกับกราฟอย่างเดียว ไม่เปิดดูส่วน Drawdown
- วางแผน lot จาก Balance drawdown หรือ DD รายวัน แทน Equity Drawdown Maximal
- เชื่อ History Quality 100% โดยไม่เช็ค Journal ว่าช่วงที่ทดสอบเป็น tick จริงหรือไม่
- เทียบ Profit factor หรือ DD ระหว่างการทดสอบที่จำนวนไม้ ทุน หรือ lot ต่างกันมาก
- อ่านอัตราชนะโดยไม่เทียบกับจุดเท่าทุนจาก Average profit และ Average loss
- ดูผลรวมหลายปีโดยไม่แยกรายปี จนไม่รู้ว่ากำไรมาจากปีเดียว
- เพิ่มกติกาใหม่แล้วดีใจที่กำไรเพิ่ม โดยไม่เทียบกับการเพิ่ม lot ที่ DD เท่ากัน
- ลืมว่า Backtest ไม่มี slippage จากการส่งคำสั่งจริง ผลรันจริงมักต่ำกว่า อ่านต่อใน ทำไมผลรันจริงมักต่ำกว่า Backtest
คำถามที่พบบ่อย
Profit factor เท่าไรถึงเรียกว่าดี
ไม่มีค่ามาตรฐาน เกณฑ์คร่าว ๆ ที่เราใช้คือ ต่ำกว่าราว 1.1 บางเกินไป เพราะ slippage และต้นทุนตอนรันจริงพลิกเป็นขาดทุนได้ง่าย ราว 1.3 ขึ้นไปบนไม้หลายร้อยไม้และหลายปีจะสบายใจกว่า แต่ต้องดูคู่กับจำนวนไม้และผลรายปีด้วยเสมอ
ควรดู Balance drawdown หรือ Equity drawdown
Equity drawdown เพราะนับขาดทุนของไม้ที่ยังเปิดอยู่ด้วย Balance drawdown นับเฉพาะไม้ที่ปิดแล้ว ระบบที่ถือไม้ติดลบไว้นานจะมี Balance drawdown ต่ำจนดูปลอดภัยเกินจริง
History Quality 100% แปลว่าทดสอบด้วย tick จริงใช่ไหม
ไม่ใช่ ตัวเลขนี้บอกความครบของข้อมูลประวัติราคา ไม่ได้ยืนยันชนิดของ tick ให้ดูโหมดในช่อง Modelling และเปิดแท็บ Journal หลังรันเสร็จ ถ้ามีบรรทัดบอกว่า real ticks เริ่มวันไหน ช่วงก่อนวันนั้นใช้ tick ที่สร้างขึ้นเอง
เนื้อหานี้เป็นความรู้ทั่วไป ไม่ใช่คำแนะนำการลงทุน การเทรดมีความเสี่ยง อาจสูญเสียเงินลงทุนทั้งหมด