สิทธิ์ Algo Trading ใน MT5: ทำไม EA ไม่ส่งคำสั่ง และการให้สิทธิ์ DLL กับ WebRequest

ปัญหาที่พบบ่อยที่สุดหลังติดตั้ง EA คือ EA อยู่บนกราฟแล้วแต่ไม่เปิดไม้ สาเหตุจำนวนมากไม่ได้อยู่ที่ตรรกะของ EA แต่อยู่ที่สิทธิ์ ซึ่งมีหลายชั้นและต้องเปิดครบทุกชั้น บทความนี้อธิบายสวิตช์แต่ละตัว ตัวเลือกที่ปิดสวิตช์ให้เองโดยไม่รู้ตัว และสิทธิ์พิเศษอย่าง DLL และ WebRequest ที่ควรให้อย่างระวัง
สรุปสาระสำคัญ
- ปุ่ม Algo Trading บนแถบเครื่องมือเป็นสวิตช์รวม ปิดแล้ว EA ทุกตัวส่งคำสั่งใหม่ไม่ได้
- EA แต่ละตัวต้องได้รับอนุญาตในแท็บ Common ของหน้าต่างค่าตั้งด้วย
- บัญชีต้องอนุญาตให้เทรด ล็อกอินด้วยรหัสผ่านแบบ Investor จะส่งคำสั่งไม่ได้
- ตัวเลือกใน Options ปิด Algo Trading ให้เองได้เมื่อเปลี่ยนบัญชีหรือเปลี่ยน Profile
- DLL และ WebRequest ให้เฉพาะ EA ที่เชื่อถือได้และจำเป็นต้องใช้
สวิตช์รวม: ปุ่ม Algo Trading
ปุ่ม Algo Trading บนแถบเครื่องมือ หรือคีย์ลัด Ctrl+E เปิดปิดการเทรดอัตโนมัติของทั้งโปรแกรม MT4 และ MT5 รุ่นเก่าเรียกปุ่มนี้ว่า AutoTrading เมื่อปิด EA ยังอยู่บนกราฟ แต่ส่งคำสั่งใหม่หรือแก้ไม้ไม่ได้ ไม้ที่เปิดอยู่ไม่ได้ถูกปิดไปด้วย Stop Loss และ Take Profit ที่วางไว้บนเซิร์ฟเวอร์ยังทำงาน แต่การจัดการที่ EA ทำเอง เช่น Trailing Stop หรือการปิดทั้งชุด จะหยุดไปจนกว่าจะเปิดปุ่มอีกครั้ง
สิทธิ์ของ EA แต่ละตัว: แท็บ Common
ในหน้าต่างค่าตั้งของ EA แท็บ Common มีช่อง Allow Algo Trading ต้องเลือกไว้ EA ตัวนั้นจึงส่งคำสั่งได้ ถ้าลืมตอนติดตั้ง เปิดหน้าต่างเดิมได้ด้วย F7 บนกราฟ สิทธิ์นี้แยกกันตามกราฟ EA ตัวเดียวกันบนอีกกราฟอาจตั้งไว้ต่างกัน ค่าอื่นในหน้าต่างเดียวกันอธิบายใน ค่า Input ของ EA
สามเงื่อนไขต่อกันแบบอนุกรม
ปุ่มรวม สิทธิ์ของ EA และสิทธิ์การเทรดของบัญชี ทำงานเหมือนสวิตช์ที่ต่อกันเป็นแถว ไฟจะติดเมื่อเปิดครบทุกตัว ภาพด้านล่างไล่ทุกกรณีที่เป็นไปได้ของสามสวิตช์นี้

สามสวิตช์ที่มีสองสถานะให้ 2 × 2 × 2 = 8 กรณี EA ส่งคำสั่งได้เพียง 1 กรณี คือเมื่อเปิดครบทั้งสาม อีก 6 กรณีโปรแกรมไม่อนุญาตตั้งแต่แรก ส่วนอีก 1 กรณีน่าสับสนที่สุด คือโปรแกรมอนุญาต ไอคอนบนกราฟดูพร้อม แต่บัญชีไม่อนุญาตให้เทรด คำสั่งจึงถูกปฏิเสธ และจะมีข้อความในแท็บ Journal หรือ Experts บอกไว้
ตัวเลือกที่ปิดสวิตช์ให้เอง
ในเมนู Tools → Options แท็บ Expert Advisors มีช่อง Allow algorithmic trading ที่ตรงกับปุ่มรวม และมีตัวเลือกให้ปิด Algo Trading อัตโนมัติเมื่อเปลี่ยนบัญชีหรือเปลี่ยน Profile บางรุ่นมีตัวเลือกเมื่อเปลี่ยนสัญลักษณ์หรือ Timeframe ของกราฟด้วย ตัวเลือกเหล่านี้ช่วยกันไม่ให้ EA ทำงานบนบัญชีที่ไม่ได้ตั้งใจ แต่ถ้าลืมว่าเปิดไว้ การสลับไปดูบัญชีอื่นแล้วกลับมาจะทำให้ EA ทุกตัวหยุดโดยไม่มีหน้าต่างเตือน
ไอคอนบนกราฟบอกอะไร
เมื่อใส่ EA บนกราฟ มุมขวาบนจะแสดงชื่อ EA พร้อมไอคอนเล็ก ๆ ใน MT4 และ MT5 รุ่นเก่าเป็นรูปหน้ายิ้มเมื่อได้รับอนุญาต และหน้าบึ้งเมื่อไม่ได้รับอนุญาต รุ่นใหม่เปลี่ยนเป็นไอคอนที่มีสีเมื่อได้รับอนุญาตและเป็นสีเทาเมื่อไม่ได้รับอนุญาต ลักษณะไอคอนต่างกันตามรุ่นของโปรแกรม
สถานะไม่ได้รับอนุญาตมาจากสวิตช์ฝั่งโปรแกรม คือปุ่มรวมปิดอยู่ หรือช่อง Allow Algo Trading ของ EA ตัวนั้นไม่ได้เลือก ไอคอนไม่ได้บอกว่าตลาดเปิด Margin พอ หรือเงื่อนไขเข้าของ EA เกิดขึ้นแล้ว ไอคอนที่ดูพร้อมจึงแปลว่าผ่านด่านแรกเท่านั้น
บัญชีที่ไม่อนุญาตให้เทรด
- ล็อกอินด้วยรหัสผ่านแบบ Investor — ดูข้อมูลได้อย่างเดียว ส่งคำสั่งไม่ได้ ใช้เมื่อให้ผู้อื่นดูบัญชี
- โบรกเกอร์ปิดสิทธิ์การเทรดของบัญชีหรือสัญลักษณ์ — เช่น สัญลักษณ์ที่เปิดให้ปิดไม้ได้อย่างเดียว
- ตลาดของสัญลักษณ์นั้นปิดอยู่ — ไม่ใช่เรื่องสิทธิ์ แต่ผลเหมือนกันคือคำสั่งไม่ผ่าน
สิทธิ์ DLL และ WebRequest
EA บางตัวต้องการสิทธิ์เพิ่มจากการเทรด DLL คือโปรแกรมภายนอกที่ EA เรียกใช้ได้ และทำงานบนเครื่องด้วยสิทธิ์เดียวกับ MT5 จึงเข้าถึงไฟล์และเครือข่ายของเครื่องได้กว้าง WebRequest ให้ EA ติดต่อเว็บภายนอก ต้องใส่ที่อยู่เว็บที่อนุญาตไว้ในรายการของแท็บ Expert Advisors ก่อน
- เปิด DLL เฉพาะ EA จากแหล่งที่เชื่อถือได้ — และเฉพาะตัวที่ต้องใช้จริง ไม่เปิดไว้ให้ทุกตัว
- ใส่ WebRequest เฉพาะที่อยู่ที่ผู้พัฒนาระบุ — ถ้า EA ขอที่อยู่ที่ไม่อธิบายว่าใช้ทำอะไร ควรถามก่อน
- ไม่ใช้บัญชีจริงกับ EA ที่ไม่รู้ที่มา — สิทธิ์เหล่านี้ให้โปรแกรมทำได้มากกว่าการเทรด
ลำดับการตรวจเมื่อ EA ไม่ส่งคำสั่ง
- ปุ่ม Algo Trading — เปิดอยู่หรือไม่ และถูกปิดเองหลังเปลี่ยนบัญชีหรือไม่
- ไอคอนบนกราฟ — ถ้าแสดงว่าไม่ได้รับอนุญาต ให้กด F7 แล้วตรวจแท็บ Common
- บัญชี — ล็อกอินด้วยรหัสผ่านหลัก และสัญลักษณ์เปิดให้เทรด
- แท็บ Journal และ Experts — อ่านข้อความล่าสุดก่อนสรุปว่า EA เสีย
- ค่าตั้งของ EA — ตัวกรองเวลา Max spread และเงื่อนไขเข้าอาจยังไม่เกิด ตามที่อธิบายใน วิธีติดตั้ง EA บน MT5
ถ้ารัน EA บน VPS ให้ตรวจบนเครื่องนั้นโดยตรง เพราะสถานะของปุ่มและตัวเลือกบนแต่ละเครื่องแยกกัน
ความผิดพลาดที่พบบ่อย
- เปิดปุ่มรวมแต่ลืมแท็บ Common — ไอคอนยังแสดงว่าไม่ได้รับอนุญาต
- ล็อกอินด้วยรหัส Investor แล้วรอ EA เปิดไม้ — คำสั่งถูกปฏิเสธทุกครั้ง
- สลับบัญชีแล้วไม่กลับมาตรวจปุ่ม — EA ทุกตัวหยุดเงียบ ๆ
- เปิด DLL ให้ทุก EA ไว้ก่อน — ให้สิทธิ์เกินกว่าที่ระบบต้องใช้
สรุป
EA ส่งคำสั่งได้เมื่อผ่านครบทุกด่าน คือปุ่มรวม สิทธิ์ของ EA ตัวนั้น และสิทธิ์ของบัญชี ไอคอนบนกราฟบอกได้แค่ด่านฝั่งโปรแกรม ส่วนด่านอื่นต้องดูจากข้อความในแท็บ Journal สิทธิ์พิเศษอย่าง DLL และ WebRequest ให้เท่าที่จำเป็น ส่วนหน้าที่ของหน้าต่างอื่นในโปรแกรมอ่านได้ใน ส่วนต่าง ๆ ของ MT5



Discussion