โ† วิดีโอทั้งหมด
MT5 API ยท 4:19

จัดการข้อผิดพลาดการซื้อขาย

แยกการจับคู่ คำสั่งรอ และการปฏิเสธจากโบรกเกอร์ อ่านผลก่อนส่งรายการถัดไป

คำแนะนำทีละขั้นตอน

  1. 0:00

    จัดการข้อผิดพลาดการซื้อขาย

    บทเรียนนี้อธิบายผลและข้อผิดพลาดการซื้อขาย MT5 เราจะแยกการจับคู่ทั้งหมด การจับคู่บางส่วน คำสั่งรอ การปฏิเสธจากโบรกเกอร์ และผลที่ยังไม่แน่นอน

  2. 0:17

    เปิดคู่มือเมธอดซื้อขาย

    เปิดเอ็มทีไฟว์ดอตเอ็มอาร์พีซีดอตโปร เลือก Order Send ในหมวดช่วยซื้อขาย แล้วขยายคู่มือใต้ตัวอย่างโค้ด หากใช้เมธอดอื่น ให้เปิดคู่มือเฉพาะของเมธอดนั้น

  3. 0:31

    1. ตรวจรหัสสถานะ HTTP

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

  4. 0:54

    2. ตรวจ error และรายละเอียดโบรกเกอร์

    ถ้า error ไม่ใช่ null ให้อ่าน errorCode และ errorMessage หากมี mqlErrorTradeIntCode พร้อมคำอธิบาย ให้อ่านด้วย การปฏิเสธจากโบรกเกอร์อาจอยู่ในโครงสร้างนี้ จึงต้องเลือกวิธีแก้ตามรหัสจริง

  5. 1:14

    3. อ่านผลจากโบรกเกอร์

    สำหรับคำขอซื้อขาย รหัสสถานะเอชทีทีพีสองร้อยโดยไม่มีข้อผิดพลาดเอพีไอ หมายถึงส่งคำขอให้โบรกเกอร์แล้ว แต่ไม่ได้หมายความว่าจับคู่สำเร็จ อ่าน returnedCode, returnedStringCode และผลเฉพาะเมธอดใน data

  6. 1:36

    คำสั่งตลาด: ทั้งหมดหรือบางส่วน

    คำสั่งตลาด Buy หรือ Sell ที่คืนหนึ่งหมื่นเก้า Done หมายถึงเสร็จสมบูรณ์ หนึ่งหมื่นสิบ Done Partial หมายถึงจับคู่บางส่วน อ่านปริมาณ ราคา และ deal ที่เกิดขึ้น ตรวจสถานะกับประวัติเพื่อทราบส่วนที่เหลือ

  7. 1:55

    วางคำสั่งรอไม่ใช่จับคู่ทันที

    สำหรับคำสั่งตลาด หนึ่งหมื่นแปด Placed คือรับไว้เพื่อดำเนินการ ยังไม่ยืนยันการจับคู่ สำหรับคำสั่งรอ Placed หรือ Done ยืนยันการวางคำสั่ง เก็บ data order แล้วดู Opened Orders คำสั่งยังรอราคาที่กำหนดให้ทำงาน

  8. 2:16

    ตลาดปิดคือการปฏิเสธจากโบรกเกอร์

    ผลปฏิเสธอาจอยู่ใน data แม้ไม่มี error หนึ่งหมื่นสิบแปดหมายถึงตลาดปิด ให้รอช่วงเวลาซื้อขายของสัญลักษณ์นั้น อย่าตัดสินว่าสำเร็จเพียงเพราะมี data ต้องอ่านรหัสผลลัพธ์

  9. 2:34

    แก้ปัญหาตามสาเหตุ

    เงินไม่พอให้ลดปริมาณหรือเตรียมฟรีมาร์จินให้พอ ระดับ stop ไม่ถูกต้องให้แก้ราคาและระยะห่าง ปริมาณไม่ถูกต้องให้ใช้ขนาดและขั้นปริมาณที่สัญลักษณ์อนุญาต หากไม่มีราคาให้รอราคาใหม่ คู่มือแสดงรหัสและวิธีแก้ไว้ด้วยกัน

  10. 2:57

    หมดเวลา: ตรวจบัญชีก่อนลองใหม่

    คำขอซื้อขายหมดเวลาหรือหลุดจากโบรกเกอร์อาจมีผลไม่แน่นอน ตรวจคำสั่ง สถานะ และประวัติก่อนส่งอีกครั้ง ไม่เช่นนั้นอาจเกิดรายการซ้ำ รหัสโบรกเกอร์เดียวกันอาจอยู่ใน returnedCode ของ data หรือ mqlErrorTradeIntCode ของ error

  11. 3:21

    การปิดและแก้ไขมีเกณฑ์ของตนเอง

    สำหรับ Order Close ให้อ่านผลแล้วตรวจสถานะคงเหลือ การปิดบางส่วนยังเหลือปริมาณเปิดอยู่ สำหรับ Order Modify ค่า Done คือแก้ไขแล้ว ส่วน No Changes คือค่าที่ขอตั้งไว้อยู่แล้ว อย่านำเกณฑ์ Order Send ไปใช้กับทุกเมธอด

  12. 3:42

    การตรวจล่วงหน้าไม่ได้ส่งคำสั่งซื้อขาย

    Order Check ต่างจาก Order Send ให้อ่านรหัสและคำอธิบายใน mqlTradeCheckResult ของ data รหัสศูนย์พร้อม Done คือผ่านการตรวจล่วงหน้า ไม่ใช่เปิดคำสั่งแล้ว ต้องส่งรายการแยกต่างหากและตรวจผลการดำเนินการ

  13. 4:02

    ตรวจการซื้อขายในสามขั้น

    ทุกการซื้อขายให้ตรวจรหัสสถานะเอชทีทีพี error และผลโบรกเกอร์ตามเมธอด เก็บรหัส order, deal หรือสถานะตามความเหมาะสม หลังหมดเวลาหรือหลุดการเชื่อมต่อ ให้ตรวจบัญชีก่อนส่งใหม่