ตัวอย่างการใช้ Heiken Ashi กับ Multi Time Frame (MTF) - ระบบเทรดสำหรับ MetaTrader 4

Mike 2017.04.11 18:21 13 0 0
ไฟล์แนบ

คำอธิบาย

นี่คือตัวอย่างการใช้เทียน Heiken Ashi ในการเทรด

  • ใช้คำสั่งรอดำเนินการเท่านั้น (Buy-Limit & Sell-Limit)
  • สามารถใช้ Hedging ได้ (โดยการใช้หมายเลขแมจิกที่แตกต่างกัน)
  • สามารถกรองได้ (โดยใช้สองกรอบเวลา ตามโค้ดด้านล่าง)

ดูแนวคิด หลัก ของระบบนี้ในฟังก์ชั่นสองตัวดังต่อไปนี้:

int AshiUp(int TF=PERIOD_CURRENT)
  {
   double haLowHigh_1 = iCustom(Symbol(),TF,"Heiken Ashi",Red,White,Red,White,0,1);
   double haOpen_1    = iCustom(Symbol(),TF,"Heiken Ashi",Red,White,Red,White,2,1);
   double haClose_1   = iCustom(Symbol(),TF,"Heiken Ashi",Red,White,Red,White,3,1);

   double haLowHigh_0 = iCustom(Symbol(),TF,"Heiken Ashi",Red,White,Red,White,0,0);
   double haOpen_0    = iCustom(Symbol(),TF,"Heiken Ashi",Red,White,Red,White,2,0);
   double haClose_0   = iCustom(Symbol(),TF,"Heiken Ashi",Red,White,Red,White,3,0);

   if((haClose_0>haOpen_0 && haOpen_0==haLowHigh_0) && 
      (haClose_1>haOpen_1 && haOpen_1!=haLowHigh_1))
      return(1);

   else  return(0);
  }

int AshiDown(int TF=PERIOD_CURRENT)
  {
   double haLowHigh_1 = iCustom(Symbol(),TF,"Heiken Ashi",Red,White,Red,White,0,1);
   double haOpen_1    = iCustom(Symbol(),TF,"Heiken Ashi",Red,White,Red,White,2,1);
   double haClose_1   = iCustom(Symbol(),TF,"Heiken Ashi",Red,White,Red,White,3,1);

   double haLowHigh_0 = iCustom(Symbol(),TF,"Heiken Ashi",Red,White,Red,White,0,0);
   double haOpen_0    = iCustom(Symbol(),TF,"Heiken Ashi",Red,White,Red,White,2,0);
   double haClose_0   = iCustom(Symbol(),TF,"Heiken Ashi",Red,White,Red,White,3,0);

   if((haClose_0<haOpen_0 && haOpen_0==haLowHigh_0) && 
      (haClose_1<haOpen_1 && haOpen_1!=haLowHigh_1))
      return(1);

   else  return(0);
  }

ดูโค้ดด้านล่างสำหรับการตรวจจับการซื้อ:

//--- การเทรด
   if(TotalOrdersCount(MagicNumberBuy)<1)
      if(AshiUp(1440)==1 && AshiUp()==1)
         BuyExecute();

นอกจากนี้ ระบบไม่อนุญาตให้ทำงานกับโลหะตามที่เห็นด้านล่าง:

//+------------------------------------------------------------------+
//| ฟังก์ชั่นการเริ่มต้นของ Expert
//+------------------------------------------------------------------+
int OnInit()
  {
   Comment(" ");

   if(Symbol()=="Gold" || Symbol()=="GOLD" || Symbol()=="gold" || Symbol()=="XAUUSD" || Symbol()=="AUCMDUSD"
      || Symbol() == "Silver" || Symbol() == "SILVER" || Symbol() == "silver" || Symbol() == "XAGUSD" || Symbol() == "E_SI"
      || Symbol() == "Copper" || Symbol() == "COPPER" || Symbol() == "copper" || Symbol() == "CUCMDUSD"
      || Symbol() == "XAUEUR" || Symbol() == "Gold.Euro"    || Symbol() == "Gold.Eur"
      || Symbol() == "XAGEUR" || Symbol() == "Silver.Euro"  || Symbol() == "Silver.Eur"
      || Symbol() == "USOil"  || Symbol() == "USOIL"  || Symbol() == "UKOil"  || Symbol() == "UKOIL"
      || Symbol() == "NGAS"   || Symbol() == "NGas"   || Symbol() == "Bund"   || Symbol() == "BUND"   || Symbol() == "bund"
      || Symbol() == "Oil" || Symbol() == "Brent" || Symbol() == "BRENT" || Symbol() == "brent"       || Symbol() == "Crude"  || Symbol() == "COPPER" || Symbol() == "BRENTCMDUSD"
      || Symbol() == "WTI" || Symbol() == "Light" || Symbol() == "LIGHT" || Symbol() == "LIGHTCMDUSD" || Symbol() == "COPPER"
      || Symbol() == "Palladium" || Symbol() == "PALLADIUM" || Symbol() == "palladium" || Symbol() == "PDCMDUSD"
      || Symbol() == "Platinum"  || Symbol() == "PLATINUM"  || Symbol() == "platinum"  || Symbol() == "PTCMDUSD" )
     {
      Comment(SymbolErr);
      Alert(SymbolErr);
      return(INIT_FAILED);}
     }
.
.
.
}

รูปภาพ

ตัวอย่างการใช้ Heiken Ashi กับ Multi Time Frame (MTF)

คำแนะนำ

  • โค้ดตัวอย่างนี้เหมาะสำหรับนักเขียนโค้ด/นักเทรดที่สนใจโค้ดฟรีเพื่อศึกษา/ปรับปรุงในอนาคต
  • ไม่ควรใช้ในการเทรดด้วยเงินจริง
  • ใช้ได้เฉพาะในบัญชี Demo หรือ Strategy Tester
  • คุณสามารถลบบรรทัด (จาก 55 ถึง 70) เพื่อลองใช้กับโลหะ

โชคดีครับ!

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