ExpertClor_v01: EA สำหรับ MetaTrader 5 ที่ช่วยปิดออร์เดอร์

Mike 2017.08.10 21:55 28 0 0
ไฟล์แนบ

ผู้คิดค้นไอเดียจอห์น สมิธ, ผู้เขียนโค้ด MQL5barabashkakvn.

ExpertClor_v01 เป็น EA ที่ช่วยในการปิดออร์เดอร์เท่านั้น:

ExpertClor_v01

ออร์เดอร์จะถูกย้ายไปที่ Breakeven และ Stop Loss จะถูกคำนวณจากตัวชี้วัด StopATR_auto โดยออร์เดอร์จะถูกปิดเมื่อเส้นค่าเฉลี่ยเคลื่อนที่ (MA) ตัดกัน

เพื่อให้ EA ทำงานได้อย่างมีประสิทธิภาพ คุณจะต้องเพิ่มไฟล์ตัวชี้วัด StopATR_auto ลงในโฟลเดอร์ MQL5\Indicators\Downloads:

//+------------------------------------------------------------------+
//| ฟังก์ชันเริ่มต้นของ EA                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
...
//--- สร้าง handle ของตัวชี้วัด iCustom
   handle_iCustom=iCustom(m_symbol.Name(), TimeFrame, "Downloads\\StopATR_auto",
                           CountBarsForAverage,
                           Target
                          );

แม้ว่า EA นี้จะทำหน้าที่เฉพาะในการปิดออร์เดอร์ แต่ฉันได้เพิ่มโค้ดเล็กๆ สำหรับการเปิดออร์เดอร์:

//+------------------------------------------------------------------+
//| ฟังก์ชันสำหรับการ Tick ของ EA                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   if(MQLInfoInteger(MQL_DEBUG) || MQLInfoInteger(MQL_PROFILER) || 
      MQLInfoInteger(MQL_TESTER) || MQLInfoInteger(MQL_OPTIMIZATION))
     {
      static long counter=-50;
      static bool trade_buy=true;

      if(counter==0)
         m_trade.Buy(m_symbol.LotsMin());
      else if(counter%1500==0)
        {
         if(RefreshRates())
           {
            if(trade_buy)
              {
               OpenBuy(m_symbol.LotsMin());
               trade_buy=false;
              }
            else
              {
               OpenSell(m_symbol.LotsMin());
               trade_buy=true;
              }
           }
         else
            counter=counter-9;
        }

      counter++;
     }
//---

หน่วยนี้จะทำงานเมื่อคุณทดสอบหรือปรับแต่ง Expert Advisor นี้ โดยการเปิดออร์เดอร์ Buy หรือ Sell จะเกิดขึ้นหลังจากทุกๆ 1,500 ticks.

รายการ
ความคิดเห็น 0