ใช้เวลาส่วนที่ดีกว่าของปีที่แล้วในการสร้าง Nexus 9 ซึ่งเป็น EA แบบพลิกกลับเฉลี่ย 9 คู่ และค้นพบระหว่างทางที่เครื่องมือทดสอบกลยุทธ์ของ MetaTrader 5 สร้างผลลัพธ์ที่ทำให้เข้าใจผิดอย่างเงียบๆ สำหรับระบบหลายสัญลักษณ์ เว้นแต่คุณจะเปลี่ยนการตั้งค่าที่ไม่ใช่ค่าเริ่มต้นจำนวนหนึ่ง
หากคุณเคย:
- เรียกใช้การทดสอบย้อนหลังแบบหลายสัญลักษณ์ที่ดูสะอาดตาเกินไป จากนั้นดูการแตกสลายแบบสดๆ
- มี Fairness Curve ที่ดูแบนหรือแปลกๆ และไม่รู้ว่าเพราะเหตุใด
- สงสัยว่าเหตุใด EA ของคุณ “ไม่แลกเปลี่ยน” บางคู่ในผู้ทดสอบ
… โพสต์นี้เป็นรายการตรวจสอบที่ฉันหวังว่าจะมีเมื่อเริ่มต้น
ปัญหาหลัก
เครื่องมือทดสอบกลยุทธ์ MetaTrader 5 เดิมได้รับการออกแบบโดยใช้การทดสอบสัญลักษณ์เดียว มีการรองรับหลายสัญลักษณ์ แต่มีการควบคุมอยู่เบื้องหลังการตั้งค่าที่ไม่ใช่ค่าเริ่มต้นหลายประการ หาก EA ของคุณเข้าถึงคู่อื่นที่ไม่ใช่สัญลักษณ์แผนภูมิ ตามค่าเริ่มต้น:
- ประวัติติ๊กสำหรับคู่ที่ไม่ใช่แผนภูมิจะไม่โหลด
- SymbolInfoDouble() ส่งกลับค่าศูนย์หรือราคาเก่าสำหรับสัญลักษณ์ที่ไม่ใช่แผนภูมิ
- การซื้อขายสัญลักษณ์เหล่านั้นล้มเหลวในการลงทะเบียนอย่างเงียบๆ
Fairness Curve ของคุณจะดูราบรื่น สถิติของคุณจะดูยอมรับได้ และการป้อนข้อมูล EA ของคุณจะผิดพลาด ผู้ทดสอบไม่มีการเตือน
การตั้งค่าที่จำเป็น #1: Market Watch → แสดงทั้งหมด
ก่อนที่จะเปิดเครื่องมือทดสอบกลยุทธ์ ให้คลิกขวาที่แผง Market Watch → “แสดงทั้งหมด”.
ซึ่งจะเป็นการบอกให้ MT5 สร้างสัญลักษณ์ที่พร้อมใช้งานทั้งหมดสำหรับการโหลดข้อมูลเห็บ หากไม่มีสิ่งนี้ เฉพาะสัญลักษณ์ที่มองเห็นได้ในปัจจุบันเท่านั้นที่จะได้รับข้อมูล และคู่การอ้างอิง EA ของคุณที่ถูกซ่อนไว้จะส่งคืนเครื่องหมายว่าง
การตั้งค่าที่จำเป็น #2: โหลดประวัติขีดล่วงหน้าต่อสัญลักษณ์
แม้ว่าหลังจาก “แสดงทั้งหมด” แล้ว MT5 จะไม่ดาวน์โหลดประวัติโดยอัตโนมัติ สำหรับแต่ละสัญลักษณ์ EA ของคุณซื้อขาย:
- คลิกขวา → “ข้อมูลจำเพาะของสัญลักษณ์” → ยืนยันการเปิดใช้งาน
- เปิดแผนภูมิสำหรับสัญลักษณ์นั้น (กรอบเวลาใดก็ได้ — ดาวน์โหลดแรงเปิด)
- รอตัวบ่งชี้ความคืบหน้าที่ด้านล่างขวาเพื่อดำเนินการให้เสร็จสิ้น
สำหรับ 9 คู่ นั่นคือการเปิดกราฟด้วยตนเอง 9 รายการ น่าเบื่อ แต่ข้ามไปและคุณกำลังทดสอบช่องโหว่ในข้อมูล
การตั้งค่าที่จำเป็น #3: “ทุกขีดขึ้นอยู่กับขีดจริง”
ผู้ทดสอบกลยุทธ์มีค่าเริ่มต้นเป็น “ทุกขีด” — สร้างขึ้น ติ๊กโมเดล ใช้ได้กับสัญลักษณ์เดี่ยวบนคู่ของเหลว ไม่มีประโยชน์สำหรับหลายสัญลักษณ์เนื่องจากตัวสร้างถือว่าบริบทแผนภูมิเดียว ความสัมพันธ์ข้ามคู่และกรอบเวลาที่ใช้ร่วมกันไม่เกิดขึ้นใหม่
เปลี่ยนไปที่ “ทุกขีดขึ้นอยู่กับเห็บจริง”. ใช้ข้อมูลเห็บนายหน้าตามจริงกับสัญลักษณ์ทั้งหมดตามลำดับเวลาที่ถูกต้อง ช้าลงประมาณ 10 เท่า โหมดเดียวที่ให้คุณแม่นยำ
การตั้งค่าที่จำเป็น #4: ตรวจสอบโซนเวลาเซิร์ฟเวอร์ของโบรกเกอร์
EA แบบหลายสัญลักษณ์มักจะอิงตามเวลาเซสชั่น (ลอนดอน / นิวยอร์ก / โตเกียว) โบรกเกอร์จะรายงานแถบเวลาในเขตเวลาเซิร์ฟเวอร์ของโบรกเกอร์ — Exness ใช้ GMT+3, IC Markets ใช้ GMT+2 กับ DST และอื่นๆ
หากชั่วโมงฮาร์ดโค้ด EA ของคุณเช่น if (ชั่วโมง == 21) นั่นหมายถึงสิ่งที่แตกต่างกันในโบรกเกอร์แต่ละราย ก่อนการทดสอบ:
- เปิดแผนภูมิ M1 บนโบรกเกอร์ของคุณ
- เลื่อนเมาส์ไปเหนือแท่งเทียนเพื่อดูการประทับเวลา
- เปรียบเทียบกับ UTC จริง
บันทึกออฟเซ็ต — ตรวจจับอัตโนมัติใน EA หรือเปิดเผยเป็นอินพุตที่กำหนดค่าได้
หลุมพราง #1: พารามิเตอร์สเปรด
ค่าเริ่มต้นเป็น “ปัจจุบัน” — สเปรดที่แสดงในเทอร์มินัลของคุณในขณะนี้ เหมาะสำหรับการทดสอบระยะสั้น ไม่สมจริงอย่างมากสำหรับการทดสอบย้อนหลังหลายปีซึ่งมีสเปรดที่แตกต่างกันอย่างมาก
ตั้งค่าสเปรดเป็นค่าคงที่กรณีที่แย่ที่สุดตามความเป็นจริง หรือใช้โหมดเรียลติ๊ก (ซึ่งจะรักษาความแปรผันของสเปรดในอดีตต่อขีด) การทดสอบที่ไม่สนใจความแปรปรวนของสเปรดจะประเมินค่าความได้เปรียบของคุณสูงเกินไปอย่างเป็นระบบ และสำหรับกลยุทธ์ที่มีช่วงแคบ สามารถเปลี่ยนผู้ชนะให้กลายเป็นผู้แพ้ได้
หลุมพราง #2: รันไทม์การเพิ่มประสิทธิภาพระเบิด
หลายสัญลักษณ์ × การรวมพารามิเตอร์ × จำนวนปีของข้อมูล = จำนวนวันในการคำนวณ แม้แต่ในเครื่องที่เร็วก็ตาม แนวทางปฏิบัติ:
- เพิ่มประสิทธิภาพ EURUSD หรือคู่ตัวแทนอื่นก่อน
- ตรวจสอบความถูกต้องของพารามิเตอร์ที่เลือกบนทุกคู่ในโหมดการทดสอบย้อนกลับปกติ
- ทดสอบล่วงหน้ากับการสาธิตก่อนใช้งานจริง
หลุมพราง #3: VPS เป็นจุดที่ไม่ถูกต้องในการทดสอบย้อนหลัง
ขัดกับสัญชาตญาณ แต่แผนการซื้อขาย VPS (RAM 1-2 GB, โปรไฟล์ CPU ที่ปรับแต่งสำหรับการดำเนินการที่มีเวลาแฝงต่ำ) นั้นแย่มากสำหรับการประมวลผลแบบแบตช์ การทดสอบย้อนหลังหลายสัญลักษณ์ต้องใช้ RAM 8-16 GB บน VPS ขนาด 1 GB การทดสอบจะสลับไปที่ดิสก์และทำงานช้าลง 10-100×
การทดสอบย้อนกลับในเครื่อง ใช้ VPS สำหรับการใช้งานจริง
รายการตรวจสอบก่อนการบิน
ก่อนที่จะกด Begin ในตัวทดสอบกลยุทธ์:
- Market Watch → แสดงทั้งหมด
- ดาวน์โหลดประวัติติ๊กสำหรับทุกคู่ (เปิดแผนภูมิ)
- Tick mannequin = “ทุก Tick อิงจาก Tick จริง”
- ชุดการแพร่กระจายตามความเป็นจริง (ไม่ใช่ “ปัจจุบัน” สำหรับการทดสอบทางประวัติศาสตร์ที่ยาวนาน)
- RAM อย่างน้อย 8 GB บนเครื่องทดสอบ
- ยืนยันเขตเวลาเซิร์ฟเวอร์ของโบรกเกอร์แล้ว
- ทำงานในพื้นที่ ไม่ใช่บน VPS ระดับล่าง
หากขาดไปประการใดผลก็ไม่น่าไว้วางใจ อย่าตัดสินใจซื้อขายโดยใช้ข้อมูลที่ไม่ดี
สิ่งที่ฉันสร้างขึ้นโดยใช้วิธีการนี้
Nexus 9: 9 คู่ FX (EURUSD, EURGBP, EURJPY, GBPJPY, USDCHF, EURAUD, GBPAUD, GBPCAD, EURCAD) + XAUUSD เป็นเครื่องมืออันดับที่ 10 การพลิกกลับเฉลี่ยที่ขอบเขตเซสชัน แก้ไข SL/TP ในทุกการซื้อขาย ไม่มีการทบทุน ไม่มีตาราง ไม่มีค่าเฉลี่ย
backtest 11 ปี (01 ม.ค. 2558 → 31 มี.ค. 2569) ยอดคงเหลือเริ่มต้น $1,000 → $18,508 ทุนสิ้นสุดที่การเบิกถอนสูงสุด 37.39% การทดสอบทุกครั้งด้วยการตั้งค่าข้างต้น
กราฟอิควิตี้แบบเต็ม พารามิเตอร์ และการเปรียบเทียบฉบับที่หน้าโครงการ:
หน้าผลิตภัณฑ์ MQL5:
แบบแยก ฉบับชุมชน (ผูกมัดกับบัญชี ฟรีภายใต้ความร่วมมือกับ Exness IB, XAUUSD เปิดใช้งานเสมอ) มีให้บริการผ่านทางไซต์โครงการ
หากคุณกำลังสร้างระบบหลายสกุลเงินของคุณเอง หวังว่ารายการตรวจสอบนี้จะช่วยคุณบรรเทาความเจ็บปวดได้บ้าง คำโกหกที่ใหญ่ที่สุดในการซื้อขายอย่างเป็นระบบรายย่อยคือเส้นอิควิตี้ที่สวยงามจากเครื่องมือทดสอบกลยุทธ์ที่กำหนดค่าไม่ถูกต้อง ทดสอบย้อนกลับอย่างถูกต้อง

