การใช้ Stop Loss และ Take Profit ใน MetaTrader 5: เคล็ดลับการเทรด

Mike 2017.11.03 20:43 11 0 0
ไฟล์แนบ

หลายคนอาจสงสัยว่าเมื่อไรที่การเทรดจะถูกปิดด้วย Stop Loss หรือ Take Profit และมีการคำนวณปริมาณอย่างไร วันนี้เราจะมาดูกันว่าเมื่อใดที่ Stop Loss จะถูกใช้งานและเมื่อใดที่ Take Profit จะเข้ามาช่วยเราในการทำกำไร

เมื่อคุณใช้ Stop Loss และการเทรดถูกปิดด้วยเหตุนี้ ปริมาณจะถูกปรับเป็นสองเท่า แต่ถ้าเป็น Take Profit จะใช้ปริมาณขั้นต่ำในการเปิดรายการใหม่ ในการตรวจสอบว่าเกิดการเทรดขึ้นหลังจากการเปิดใช้งาน Stop Loss หรือ Take Profit เราจะต้องใช้ฟังก์ชัน OnTradeTransaction เป็นตัวช่วย

นอกจากนี้ ใน build 1625 มีการเพิ่ม ENUM_DEAL_REASON ที่ช่วยให้เราสามารถระบุเหตุผลการทำธุรกรรมได้อย่างชัดเจน:

ENUM_DEAL_REASON คำอธิบายเหตุผล
... ...
DEAL_REASON_SL การดำเนินการถูกทำขึ้นจากการเปิดใช้งาน Stop Loss
DEAL_REASON_TP การดำเนินการถูกทำขึ้นจากการเปิดใช้งาน Take Profit
... ...

เราสามารถตรวจสอบได้ใน OnTradeTransaction อีกครั้งหนึ่ง

พูดง่ายๆ ก็คือ นี่คือวิธีที่ง่ายและเชื่อถือได้ในการตรวจสอบว่าการเทรดเกิดจาก Take Profit หรือ Stop Loss

ในตอนนี้ (build 1626) Expert Advisor นี้สามารถตรวจสอบได้เฉพาะในการทดสอบแบบสด โดยการเปิดในกราฟหรือตั้งในโหมดดีบักบนข้อมูลจริง (F5 ใน MetaEditor) สำหรับวิธีที่ฉันใช้คือ:

ใน OnTradeTransaction เราจะตรวจสอบว่า Take Profit หรือ Stop Loss ถูกเรียกใช้งาน:

      if(deal_symbol==m_symbol.Name() && deal_magic==m_magic)
         if(deal_entry==DEAL_ENTRY_OUT)
           {
            if(deal_reason==DEAL_REASON_SL)
               ExtLot*=2.0;
            else if(deal_reason==DEAL_REASON_TP)
               ExtLot=m_symbol.LotsMin();
           }
รายการ
ความคิดเห็น 0