บทที่ 5: การทดสอบ (Backtest) และการหาค่าที่เหมาะสม (Optimization)

IUX Markets Bonus

 5.1 การทดสอบ EA ของคุณใน MetaTrader

การทดสอบและการเพิ่มประสิทธิภาพเป็นขั้นตอนที่สำคัญในการพัฒนา Expert Advisor (EA) ให้มีประสิทธิภาพและสามารถทำกำไรได้อย่างยั่งยืนในสภาพตลาดที่เปลี่ยนแปลงอยู่เสมอ การทดสอบจะช่วยให้นักพัฒนาสามารถตรวจสอบและปรับปรุงกลยุทธ์การเทรดให้มีความแม่นยำและเชื่อถือได้มากขึ้น ในบทนี้ เราจะพูดถึงการทดสอบ EA ของคุณใน MetaTrader โดยจะครอบคลุมขั้นตอนการติดตั้ง EA และการทดสอบย้อนหลัง (Backtesting)

Backtest EA mt4 fxdreema
Backtest EA mt4 fxdreema

5.1.1 การติดตั้ง EA บน MetaTrader

การติดตั้ง EA บนแพลตฟอร์ม MetaTrader เป็นขั้นตอนแรกในการทดสอบและใช้งาน EA ของคุณ ซึ่งสามารถทำได้ตามขั้นตอนต่อไปนี้:

  1. การบันทึก EA
  • เมื่อคุณสร้าง EA เสร็จแล้วใน FXdreema ให้ส่งออกไฟล์ EA ในรูปแบบ .ex4 (สำหรับ MT4) หรือ .ex5 (สำหรับ MT5)
  1. การคัดลอกไฟล์ EA ไปยังโฟลเดอร์ที่ถูกต้อง
ติดตั้ง EA ใน MT4
ติดตั้ง EA ใน MT4
  • เปิดโปรแกรม MetaTrader ของคุณ
  • คลิกที่เมนู File และเลือก Open Data Folder
  • ไปที่โฟลเดอร์ MQL4 (สำหรับ MT4) หรือ MQL5 (สำหรับ MT5)
  • เปิดโฟลเดอร์ Experts
  • คัดลอกไฟล์ .ex4 หรือ .ex5 ของคุณไปยังโฟลเดอร์นี้
  1. การรีเฟรช MetaTrader
  • ปิดและเปิดโปรแกรม MetaTrader ใหม่ หรือคลิกขวาที่ Navigator แล้วเลือก Refresh
refresh MT4 เพื่อ Backtest
refresh MT4 เพื่อ Backtest
  1. การแนบ EA กับกราฟ
  • ในหน้าต่าง Navigator ให้คลิกที่ Expert Advisors
  • ลาก EA ของคุณไปวางบนกราฟที่คุณต้องการทดสอบ
  • ตั้งค่าและปรับปรุงพารามิเตอร์ต่าง ๆ ตามความต้องการ
  • โดยมากขั้นตอนนี้เป็นการทดสอบกับบัญชี Demo ไม่ควรทดสอบกับเงินจริง สำหรับการรัน ควรทดสอบกับการ Backtest ก่อน ต่อไปเราก็จะสอน Backtest ก่อนนะครับ สำหรับคนที่ไม่มีประสบการณ์ แต่ว่า เราก็ได้เกริ่นไปแล้วในบทที่ 1 – 4 บ้างแล้วครับ หรือ หาเอาตาม Youtube ก็ได้

5.2 การใช้ Strategy Tester

Strategy Tester เป็นเครื่องมือสำคัญใน MetaTrader ที่ช่วยให้นักพัฒนาสามารถทดสอบและปรับปรุง EA ของตนได้อย่างมีประสิทธิภาพ โดยการใช้ข้อมูลราคาย้อนหลังเพื่อจำลองการทำงานของ EA ในสภาพตลาดที่เคยเกิดขึ้นจริง การทดสอบนี้ช่วยให้นักพัฒนาสามารถวิเคราะห์ผลลัพธ์และปรับปรุงกลยุทธ์การเทรดของตนได้ดีขึ้น ในหัวข้อนี้ เราจะมาดูวิธีการใช้ Strategy Tester โดยการตั้งค่าการทดสอบและการวิเคราะห์ผลลัพธ์

หน้าต่าง Strategy Tester Backtest EA
หน้าต่าง Strategy Tester Backtest EA

5.2.1 การตั้งค่าการทดสอบ

การตั้งค่าการทดสอบเป็นขั้นตอนที่สำคัญในการใช้งาน Strategy Tester เพื่อให้การทดสอบเป็นไปอย่างแม่นยำและมีประสิทธิภาพ นักพัฒนาต้องตั้งค่าพารามิเตอร์ต่าง ๆ ให้เหมาะสมกับกลยุทธ์การเทรดที่ต้องการทดสอบ

ขั้นตอนการตั้งค่าการทดสอบ

  1. เปิด Strategy Tester
    • ใน MetaTrader ให้คลิกที่เมนู View แล้วเลือก Strategy Tester หรือกด Ctrl+R
  2. เลือก EA ที่ต้องการทดสอบ
    • ในหน้าต่าง Strategy Tester ให้เลือก EA ที่ต้องการทดสอบจากรายการ Expert Advisor
  3. เลือกสัญลักษณ์และกรอบเวลา
    • เลือกสัญลักษณ์ (Symbol) ที่ต้องการทดสอบ เช่น EUR/USD
    • เลือกกรอบเวลา (Timeframe) เช่น M15, H1
  4. ตั้งค่าช่วงเวลาที่ต้องการทดสอบ (Date Range)
    • เลือกช่วงเวลาที่ต้องการทดสอบ เช่น จากวันที่ 1 มกราคม 2020 ถึง 31 ธันวาคม 2020
  5. เลือกโหมดการทดสอบ
    • Every tick: ทดสอบโดยใช้ข้อมูลทุกทิคของราคา ซึ่งมีความแม่นยำสูงสุด แต่ใช้เวลาในการทดสอบมาก
    • Control points: ทดสอบโดยใช้ข้อมูลบางทิค มีความแม่นยำปานกลางและใช้เวลาน้อยกว่า Every tick
    • Open prices only: ทดสอบโดยใช้ราคาปิดของแต่ละบาร์ เหมาะสำหรับการทดสอบที่เน้นความรวดเร็ว
  6. ตั้งค่าพารามิเตอร์ของ EA
    • คลิกที่ปุ่ม Expert Properties เพื่อปรับแต่งพารามิเตอร์ของ EA เช่น ขนาด Lot, ค่า Stop Loss และ Take Profit
  7. การตั้งค่าการกระจาย (Spread)
    • เลือกการกระจาย (Spread) ที่ต้องการใช้ในการทดสอบ เช่น ค่าคงที่หรือค่าที่ได้จากตลาดปัจจุบัน
  8. เริ่มการทดสอบ
    • คลิกที่ปุ่ม Start เพื่อเริ่มการทดสอบย้อนหลัง
องค์ประกอบของ Strategy Tester Backtest
องค์ประกอบของ Strategy Tester Backtest

5.2.2 การวิเคราะห์ผลลัพธ์

การวิเคราะห์ผลลัพธ์เป็นขั้นตอนสำคัญหลังจากการทดสอบย้อนหลัง เพื่อให้คุณสามารถประเมินประสิทธิภาพของ EA และปรับปรุงกลยุทธ์การเทรดได้ตามความเหมาะสม

HFM Market Promotion

ขั้นตอนการวิเคราะห์ผลลัพธ์

  1. ดูผลลัพธ์ในแท็บ Results
    • ในแท็บ Results คุณจะเห็นรายการคำสั่งเทรดทั้งหมดที่ EA ได้ดำเนินการ รวมถึงเวลาที่เปิดและปิดคำสั่ง ราคาที่เปิดและปิด กำไรหรือขาดทุนจากแต่ละคำสั่ง และข้อมูลอื่น ๆ
  2. ดูกราฟผลลัพธ์ในแท็บ Graph
    • แท็บ Graph แสดงกราฟการเคลื่อนไหวของยอดเงินในบัญชี (Equity Curve) ซึ่งช่วยให้คุณเห็นภาพรวมของการเพิ่มขึ้นหรือลดลงของยอดเงินในบัญชีระหว่างการทดสอบ
  3. วิเคราะห์สถิติในแท็บ Report
    • แท็บ Report แสดงสถิติที่สำคัญ เช่น กำไรสุทธิ (Net Profit), อัตรากำไร (Profit Factor), จำนวนการเทรดทั้งหมด (Total Trades), การขาดทุนสูงสุด (Max Drawdown), และดัชนีชี้วัดอื่น ๆ
  4. ตรวจสอบแท็บ Journal
    • แท็บ Journal แสดงบันทึกเหตุการณ์และข้อความที่เกิดขึ้นระหว่างการทดสอบ เช่น ข้อผิดพลาดหรือปัญหาที่เกิดขึ้นระหว่างการทดสอบ
  5. ปรับปรุงกลยุทธ์ตามผลลัพธ์
    • ใช้ข้อมูลและสถิติที่ได้จากการทดสอบเพื่อปรับปรุงและปรับแต่งกลยุทธ์ของ EA
    • หากพบว่ามีกลยุทธ์ที่ทำกำไรได้ดีในบางช่วงแต่ขาดทุนในช่วงอื่น ๆ คุณอาจต้องปรับปรุงเงื่อนไขการเทรดหรือการตั้งค่าความเสี่ยง
Backtest Results
Backtest Results

ตัวอย่างการวิเคราะห์ผลลัพธ์

  1. ดูผลลัพธ์ในแท็บ Results
    • ตรวจสอบคำสั่งเทรดที่มีกำไรและขาดทุน และดูว่ามีปัจจัยใดบ้างที่ทำให้เกิดการขาดทุนหรือกำไรในแต่ละคำสั่ง
  2. ดูกราฟผลลัพธ์ในแท็บ Graph
    • หากกราฟแสดงให้เห็นถึงการเพิ่มขึ้นของยอดเงินในบัญชีอย่างต่อเนื่อง แสดงว่า EA มีประสิทธิภาพในการทำกำไร
    • หากกราฟแสดงให้เห็นถึงการลดลงหรือความผันผวนสูง อาจต้องตรวจสอบและปรับปรุงกลยุทธ์
  3. วิเคราะห์สถิติในแท็บ Report
    • ตรวจสอบค่า Profit Factor เพื่อดูว่าสัดส่วนของกำไรต่อขาดทุนเป็นอย่างไร
    • ดูค่า Max Drawdown เพื่อประเมินความเสี่ยงและความผันผวนของกลยุทธ์
  4. ตรวจสอบแท็บ Journal
    • ตรวจสอบบันทึกเหตุการณ์และข้อความเพื่อหาเหตุผลที่ทำให้คำสั่งเทรดบางคำสั่งล้มเหลว หรือเกิดข้อผิดพลาด

การใช้ Strategy Tester ใน MetaTrader เป็นขั้นตอนสำคัญในการทดสอบและปรับปรุง EA ของคุณ การตั้งค่าการทดสอบที่เหมาะสมและการวิเคราะห์ผลลัพธ์อย่างละเอียดจะช่วยให้คุณสามารถพัฒนา EA ที่มีประสิทธิภาพและสามารถทำกำไรได้อย่างยั่งยืนในสภาพตลาดที่เปลี่ยนแปลงอยู่เสมอ

สำหรับคำแนะนำของผม ให้ดูค่า Average Win และ Average Loss มันคือ Reward และ Risk หรือ RR ของระบบ และที่สำคัญ ควรต้องดู Relative DD ของระบบ เพราะว่ามันคือความเสี่ยงที่อาจจะเกิดขึ้นในช่วงเวลา Backtest ตัวแถบสีเขียวด้านบน ในผล คือ คุณภาพของข้อมูลที่ใช้ Test ว่า ข้อมูลจากโบรกเกอร์มีคุณภาพหรือไม่ ส่วนใหญ่แล้วไม่มีคุณภาพ ต้องไปซื้อมา หรือว่า ไป Download มาจะดีกว่ามาก

5.3 การหาค่าที่เหมาะสม (Optimization)

การหาค่าที่เหมาะสมของกลยุทธ์การเทรด (Optimization) เป็นกระบวนการที่สำคัญในการพัฒนา Expert Advisor (EA) ที่สามารถทำกำไรได้อย่างยั่งยืน โดยการปรับปรุงและทดสอบพารามิเตอร์ต่าง ๆ ของกลยุทธ์ นั่นคือ ค่าที่เราให้ตั้งค่าได้ เราจะสามารถค่าเริ่มต้น (start )  สูงสุดที่เลือก (Stop)  และลำดับการเพิ่ม(step) ได้ ซึ่งการปรับค่าพวกนี้ จะเหมือนกับหาค่าที่ดีที่สุดว่า การตั้งค่า indicator ที่ดีที่สุดคืออะไร โดยมันจะออกผล ของทุกค่ามาให้

5.3.1 การตั้งค่าพารามิเตอร์ที่เหมาะสม

การตั้งค่าพารามิเตอร์ที่เหมาะสมเป็นขั้นตอนแรกในการเพิ่มประสิทธิภาพกลยุทธ์การเทรด โดยการเลือกพารามิเตอร์ที่มีผลต่อการทำกำไรและความเสี่ยงของ EA และการปรับปรุงให้เหมาะสมกับสภาพตลาดที่แตกต่างกัน

ขั้นตอนการตั้งค่าพารามิเตอร์ที่เหมาะสม

  1. เลือกพารามิเตอร์ที่ต้องการเพิ่มประสิทธิภาพ
    • ตัวอย่างของพารามิเตอร์ที่สามารถเพิ่มประสิทธิภาพได้ เช่น ขนาด Lot, ค่า Stop Loss, ค่า Take Profit, ค่า Moving Average Period และค่า Relative Strength Index (RSI) Level
  2. กำหนดช่วงค่าของพารามิเตอร์
    • กำหนดช่วงค่าที่ต้องการทดสอบสำหรับพารามิเตอร์แต่ละตัว เช่น ค่า Moving Average Period ตั้งแต่ 10 ถึง 50, ค่า RSI Level ตั้งแต่ 30 ถึง 70
  3. เลือกวิธีการทดสอบ
    • เลือกโหมดการทดสอบใน Strategy Tester เช่น Every tick หรือ Open prices only
  4. ตั้งค่าการเพิ่มประสิทธิภาพ (Optimization Settings)
    • ในหน้าต่าง Strategy Tester ให้เลือกแท็บ Optimization
    • ตั้งค่าพารามิเตอร์ที่ต้องการเพิ่มประสิทธิภาพโดยการเลือก Input Parameters
    • กำหนดค่าต่ำสุด (Start), ค่าสูงสุด (Stop), และขั้นตอน (Step) สำหรับแต่ละพารามิเตอร์
  5. เริ่มการทดสอบการเพิ่มประสิทธิภาพ
    • คลิกที่ปุ่ม Start เพื่อเริ่มการทดสอบการเพิ่มประสิทธิภาพ
    • ระบบจะทำการทดสอบค่าพารามิเตอร์ต่าง ๆ และบันทึกผลลัพธ์
optimization
optimization

5.3.2 การวิเคราะห์ผลการเพิ่มประสิทธิภาพ

หลังจากการทดสอบการเพิ่มประสิทธิภาพเสร็จสิ้น การวิเคราะห์ผลลัพธ์เป็นขั้นตอนที่สำคัญเพื่อหาค่าพารามิเตอร์ที่เหมาะสมที่สุดสำหรับกลยุทธ์การเทรดของคุณ

ขั้นตอนการวิเคราะห์ผลการเพิ่มประสิทธิภาพ

ตั้งค่า optimization
ตั้งค่า optimization
  1. ดูผลลัพธ์ในแท็บ Optimization Results
    • ในหน้าต่าง Strategy Tester ให้เลือกแท็บ Optimization Results
    • ผลลัพธ์จะแสดงค่าพารามิเตอร์ที่ใช้ในการทดสอบและดัชนีชี้วัดต่าง ๆ เช่น กำไรสุทธิ (Net Profit), อัตรากำไร (Profit Factor), และการขาดทุนสูงสุด (Max Drawdown)
  2. เลือกผลลัพธ์ที่ดีที่สุด
    • คัดเลือกผลลัพธ์ที่มีค่าดัชนีชี้วัดที่ดีที่สุด เช่น ค่ากำไรสุทธิสูงสุด หรือค่า Profit Factor สูงสุด
    • ตรวจสอบความสมดุลระหว่างการทำกำไรและความเสี่ยง เพื่อหาค่าพารามิเตอร์ที่เหมาะสมที่สุด
  3. ดูผลลัพธ์ในแท็บ Optimization Graph
    • ในแท็บ Optimization Graph คุณจะเห็นกราฟที่แสดงผลการเพิ่มประสิทธิภาพของพารามิเตอร์ต่าง ๆ
    • กราฟนี้ช่วยให้คุณเห็นภาพรวมของการเปลี่ยนแปลงของค่าพารามิเตอร์และผลกระทบต่อการทำกำไรและความเสี่ยง
  4. ตรวจสอบความสม่ำเสมอของผลลัพธ์
    • ตรวจสอบว่าค่าพารามิเตอร์ที่เลือกมีความสม่ำเสมอในการทำกำไรในช่วงเวลาต่าง ๆ และไม่เกิดการขาดทุนสูงในช่วงใดช่วงหนึ่ง
  5. ทดสอบพารามิเตอร์ที่เลือกในสภาพตลาดที่แตกต่างกัน
    • หลังจากเลือกค่าพารามิเตอร์ที่เหมาะสม ให้ทำการทดสอบ EA ในสภาพตลาดที่แตกต่างกัน เช่น ตลาดขาขึ้น, ตลาดขาลง และตลาดไซด์เวย์
    • ตรวจสอบว่า EA สามารถทำกำไรได้อย่างสม่ำเสมอในทุกสภาพตลาด
ผลการทำ optimization และการเลือกผล
ผลการทำ optimization และการเลือกผล

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

FOREXDUCK Logo

FOREXDUCK (นามปากกา) นักเขียนของเรามีประสบการณ์การเงินการลงทุนกว่า 10 ปี มีความเชี่ยวชาญในการวิเคราะห์ตลาด Forex และคริปโต โดยเฉพาะการวิเคราะห์ทางเทคนิค รวมถึงเทคนิคต่าง

HFM Promotion