ผู้คิดค้นไอเดีย — จอห์น สมิธ, ผู้เขียนโค้ด MQL5 — barabashkakvn.
ExpertClor_v01 เป็น EA ที่ช่วยในการปิดออร์เดอร์เท่านั้น:

ออร์เดอร์จะถูกย้ายไปที่ 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