เลือก MT4 หรือ MT5 ให้เริ่มจากงานที่ต้องทำครับ ถ้ามี EA หรืออินดิเคเตอร์เดิม ต้องรู้ว่ารุ่นใดรองรับ หากกำลังสร้างงานทดสอบหลายสกุล MT5 มีความสามารถที่ช่วยงานนั้น แต่ชื่อแพลตฟอร์มไม่ได้บอกว่าโบรกเกอร์เปิดสินค้า บัญชี หรือฟังก์ชันอะไรให้ใช้จริงบ้าง
ไม่จำเป็นต้องเลือกจากความรู้สึกว่ารุ่นใหม่ย่อมทำกำไรดีกว่า หรือรุ่นเก่าที่คุ้นเคยจะย้ายเมื่อไรก็ได้โดยผลไม่เปลี่ยน
ความต่างที่ผู้พัฒนาโปรแกรมระบุ
ตารางของ MetaQuotes แสดงความสามารถระดับแพลตฟอร์มดังนี้ ไม่ใช่รายการรับรองของทุกบัญชี
เลื่อนตารางซ้าย–ขวาเพื่ออ่านข้อมูลครบทุกคอลัมน์
| งาน | MT4 | MT5 |
|---|---|---|
| กรอบเวลามาตรฐาน | 9 กรอบ | 21 กรอบ |
| ชนิด pending order | 4 แบบ | 6 แบบ |
| Strategy Tester | เธรดเดียว | หลายเธรด หลายสกุล และโหมด real ticks |
| การจัดสถานะ | Hedging | รองรับทั้ง netting และ hedging |
จำนวนกรอบเวลามากขึ้นมีประโยชน์เมื่อใช้จริงในแผน ไม่ได้เพิ่มคุณภาพสัญญาณด้วยตัวมันเอง เช่นเดียวกับการทดสอบเร็วขึ้นที่ช่วยทำงานได้มากขึ้น แต่ยังต้องระวังการปรับกฎเข้าหาอดีต
Netting กับ hedging เปลี่ยนสิ่งที่เกิดหลังคลิก
ในโหมด netting สัญลักษณ์หนึ่งมีสถานะสุทธิ การส่งคำสั่งตรงข้ามอาจลด ปิด หรือกลับทิศสถานะเดิม ตามขนาดที่ส่ง ส่วนโหมด hedging สามารถมีหลายสถานะแยกกัน รวมถึงคนละฝั่ง
ตัวอย่างสมมติถือ Buy0.10 ล็อตแล้วส่ง Sell0.04 ล็อตในสัญลักษณ์เดียวกัน โหมด netting จะเหลือสุทธิ Buy0.06 ล็อต หากไม่มีเหตุอื่น ส่วน hedging อาจมี Buy0.10 กับ Sell0.04 แยกกัน ไม่ใช่ผลเงินและ margin เหมือนกันทุกอย่าง
EA ที่ตั้งสมมติฐานว่ามีหลายสถานะแยกกันจึงต้องได้รับการทดสอบกับโหมดบัญชีจริง ไม่เลือก hedging หรือ netting เพียงเพราะใครเรียกว่าเป็นแบบมาตรฐานสำหรับทุกคน
EA ไม่ได้ย้ายด้วยการเปลี่ยนนามสกุลไฟล์
MT4 ใช้ระบบ MQL4 ส่วน MT5 ใช้ MQL5 ไฟล์โปรแกรมที่คอมไพล์สำหรับแพลตฟอร์มหนึ่งไม่ได้กลายเป็นอีกเวอร์ชันเพราะเปลี่ยนชื่อไฟล์ หากมีโค้ดต้นฉบับ การย้ายต้องพิจารณาวิธีส่งคำสั่งและการเข้าถึงข้อมูลของอีกระบบ ไม่ใช่แค่แปลข้อความให้คอมไพล์ผ่าน
ขอรายการเวอร์ชันที่รองรับจากผู้พัฒนาระบบ แล้วทดสอบว่าการเปิด ปิด แบ่งปิด ตั้ง stop และกู้สถานะหลังโปรแกรมเริ่มใหม่ทำงานตามที่คาด ก่อนนำผลไปเปรียบเทียบ
ประเภทบัญชีกับแพลตฟอร์มต้องอ่านคู่กัน
ไม่ควรยืนยันว่าต้นทุนเท่ากันเป๊ะเมื่อเปลี่ยน MT4 เป็น MT5 เพราะผู้ให้บริการอาจเสนอเงื่อนไขบัญชีหรือสัญลักษณ์ต่างกัน สิ่งที่โปรแกรมรองรับก็ไม่ใช่หลักฐานว่าบัญชีที่เลือกใช้ได้ทั้งหมด
ข้อมูลที่ควรเทียบคือชื่อเซิร์ฟเวอร์ สัญลักษณ์ที่มี suffix ขนาดสัญญา step วิธีคำนวณ margin เวลาเซิร์ฟเวอร์ และคำสั่งที่รองรับ โดยเฉพาะระบบที่ใช้ราคาปิดแท่งวัน เวลาเซิร์ฟเวอร์ต่างกันอาจทำให้ข้อมูลแท่งต่างกัน
ย้ายให้ตรวจย้อนกลับได้
เก็บไฟล์และค่าตั้งต้นของเวอร์ชันเดิม พร้อมบันทึกเวอร์ชันโปรแกรม สเปกสินค้า และช่วงข้อมูลที่ใช้ เปรียบเทียบกรณีคำสั่งเล็ก ๆ บนสภาพแวดล้อมทดลองทีละเรื่อง ไม่ใช้เพียงยอดกำไรสุดท้ายตัดสินว่าการย้ายสมบูรณ์
สำหรับการทดสอบย้อนหลัง แยกชุดที่ใช้ปรับกฎออกจากชุดประเมิน และอ่านข้อจำกัดของข้อมูล real ticks ด้วย คำว่า real บอกแหล่งข้อมูลราคา ไม่ได้หมายความว่าจำลองการดำเนินคำสั่งจริงได้ทุกเหตุการณ์ อ่านต่อที่ EA และการทดสอบ