MQL5 विज़ार्ड: MACD संकेतों पर आधारित ट्रेडिंग रणनीति

Mike 2011.01.14 21:55 23 0 0
संलग्नक

MQL5 विज़ार्ड आपको विशेषज्ञ सलाहकार (Expert Advisors) स्वचालित रूप से बनाने की सुविधा देता है।

इस लेख में, हम MACD संकेतक की मुख्य और सिग्नल लाइनों के क्रॉसओवर पर आधारित ट्रेडिंग सिग्नल्स पर गौर करेंगे। इस रणनीति को "मुख्य और सिग्नल MACD लाइनों के क्रॉसओवर पर आधारित संकेत" कहा जाता है, जब हम MQL5 विज़ार्ड में EA बनाते हैं।

MACD संकेतक की मुख्य रेखा को तेज EMA और धीमी EMA के बीच के अंतर के रूप में गणना की जाती है। MACD की सिग्नल रेखा मुख्य रेखा को PeriodSignal अवधि के साथ स्मूथ करके प्राप्त की जाती है।

ट्रेड संकेत:

  • खरीदें: MACD संकेतक की मुख्य और सिग्नल रेखाओं का ऊपर की ओर क्रॉसओवर।
  • बेचें: MACD संकेतक की मुख्य और सिग्नल रेखाओं का नीचे की ओर क्रॉसओवर।

यह रणनीति MQL5 स्टैंडर्ड लाइब्रेरी के CSignalMACD क्लास में लागू की गई है (जो कि MQL5\Include\Expert\Signal\SignalMACD.mqh में स्थित है)।

चित्र 1. MACD लाइनों के क्रॉसओवर पर आधारित ट्रेड संकेत

चित्र 1. MACD लाइनों के क्रॉसओवर पर आधारित ट्रेड संकेत


ट्रेड संकेत

ट्रेडिंग रणनीति CSignalMACD क्लास में लागू की गई है, जिसमें संकेतक मानों तक पहुँच को सरल बनाने के लिए कुछ संरक्षित तरीके हैं:

double  MainMACD(int ind)      // मुख्य MACD रेखा के मान को लौटाता है
double  SignalMACD(int ind)    // सिग्नल MACD रेखा के मान को लौटाता है
double  StateMACD(int ind)     // मुख्य और सिग्नल MACD रेखाओं के बीच का अंतर लौटाता है
int     ExtStateMACD(int ind); // मुख्य और सिग्नल रेखाओं के बीच परिवर्तन की संख्या लौटाता है 


1. लम्बी स्थिति खोलें

लंबी स्थिति खोलने की शर्तें:

  • ExtStateMACD(1)==1; इसका मतलब है कि मुख्य रेखा सिग्नल MACD रेखा को ऊपर की ओर पार कर गई है
//+------------------------------------------------------------------+
//| लम्बी स्थिति खोलने की शर्तों की जांच करता है                    |
//+------------------------------------------------------------------+
bool CSignalMACD::CheckOpenLong(double& price,double& sl,double& tp,datetime& expiration)
  {
   price=0.0;
   sl   =m_symbol.Ask()-m_stop_loss*m_adjusted_point;
   tp   =m_symbol.Ask()+m_take_profit*m_adjusted_point;
//---
   return(ExtStateMACD(1)==1);
  }


2. लम्बी स्थिति बंद करें

लम्बी स्थिति बंद करने की शर्तें:

  • ExtStateMACD(1)==1; इसका मतलब है कि मुख्य रेखा सिग्नल MACD रेखा को नीचे की ओर पार कर गई है
//+------------------------------------------------------------------+
//| लम्बी स्थिति बंद करने की शर्तों की जांच करता है                         |
//+------------------------------------------------------------------+
bool CSignalMACD::CheckCloseLong(double& price)
  {
   price=0.0;
//---
   return(ExtStateMACD(1)==-1);
  }


3. शॉर्ट स्थिति खोलें

शॉर्ट स्थिति खोलने की शर्तें लम्बी स्थिति बंद करने की शर्तों के समान हैं।

//+------------------------------------------------------------------+
//| शॉर्ट स्थिति खोलने की शर्तों की जांच करता है (बेचें)                  |
//+------------------------------------------------------------------+
bool CSignalMACD::CheckOpenShort(double& price,double& sl,double& tp,datetime& expiration)
  {
   price=0.0;
   sl   =m_symbol.Bid()+m_stop_loss*m_adjusted_point;
   tp   =m_symbol.Bid()-m_take_profit*m_adjusted_point;
//---
   return(ExtStateMACD(1)==-1);
  }


4. शॉर्ट स्थिति बंद करें

शॉर्ट स्थिति बंद करने की शर्तें लम्बी स्थिति खोलने की शर्तों के समान हैं।

//+------------------------------------------------------------------+
//| शॉर्ट स्थिति बंद करने की शर्तों की जांच करता है                        |
//+------------------------------------------------------------------+
bool CSignalMACD::CheckCloseShort(double& price)
  {
   price=0.0;
//---
   return(ExtStateMACD(1)==1);
  }

MQL5 विज़ार्ड का उपयोग करके विशेषज्ञ सलाहकार बनाना

इस रणनीति पर आधारित ट्रेडिंग रोबोट बनाने के लिए, आपको MQL5 विज़ार्ड के "तैयार विशेषज्ञ सलाहकार बनाने" विकल्प में "मुख्य और सिग्नल MACD लाइनों के क्रॉसओवर पर आधारित संकेत" का चयन करना होगा।

चित्र 2. MQL5 विज़ार्ड में मुख्य और सिग्नल MACD लाइनों के क्रॉसओवर पर आधारित संकेत चुनें

चित्र 2. MQL5 विज़ार्ड में मुख्य और सिग्नल MACD लाइनों के क्रॉसओवर पर आधारित संकेत चुनें

इसके बाद, आपको आवश्यक ट्रेलिंग स्टॉप एल्गोरिदम और पैसे और जोखिम प्रबंधन प्रणाली को निर्दिष्ट करना होगा। विशेषज्ञ सलाहकार का कोड स्वचालित रूप से बनाया जाएगा, आप इसे संकलित कर सकते हैं और स्ट्रेटजी टेस्टर्स में परीक्षण कर सकते हैं जो MetaTrader 5 क्लाइंट टर्मिनल में है।


परीक्षण परिणाम

आइए विशेषज्ञ सलाहकार के ऐतिहासिक डेटा पर बैकटेस्टिंग (EURUSD H1, परीक्षण अवधि: 1.1.2010-05.01.2011, PeriodFast=12, PeriodSlow=24, PeriodSignal=9, StopLoss=20, TakeProfit=80) पर गौर करें।

विशेषज्ञ सलाहकार बनाने में हमने निश्चित मात्रा (0.1) का उपयोग किया, ट्रेलिंग स्टॉप एल्गोरिदम का उपयोग नहीं किया गया।

चित्र 3. MACD लाइनों के क्रॉसओवर पर आधारित ट्रेडिंग संकेतों के साथ विशेषज्ञ सलाहकार के परीक्षण परिणाम

चित्र 3. MACD लाइनों के क्रॉसओवर पर आधारित ट्रेडिंग संकेतों के साथ विशेषज्ञ सलाहकार के परीक्षण परिणाम


संलग्नक: SignalMACD.mqh जिसमें CSignalMACD क्लास है (जो MQL5 स्टैंडर्ड लाइब्रेरी में शामिल है) MQL5\Include\Expert\Signal फोल्डर में स्थित है। testmacd.mq5 में MQL5 विज़ार्ड का उपयोग करके बनाए गए विशेषज्ञ सलाहकार का कोड है।

सूची
टिप्पणी 0