क्या आप अपने ट्रेडिंग अकाउंट को सुरक्षित रखने के लिए एक आसान तरीका खोज रहे हैं? यदि आपकी ट्रेडिंग में ड्रॉडाउन एक निश्चित प्रतिशत तक पहुँच जाता है, तो आप सभी ऑर्डर को स्वचालित रूप से बंद कर सकते हैं। यह कोड आपको यही सुविधा प्रदान करता है।
बस आपको ऑर्डर का मैजिक नंबर डालना है (यदि सभी ऑर्डर को कंट्रोल करना है तो 0 डालें) और उस अधिकतम ड्रॉडाउन प्रतिशत को सेट करना है, जिस पर कोड ऑर्डर को बंद कर देगा।
इस कोड का उपयोग करने के लिए आपको केवल DD_close फ़ंक्शन को कॉल करना है।
इस कोड के साथ EA का हेडर फ़ाइल संलग्न है।
// इस ऑप्शन का उपयोग करने के लिए, आपको केवल इस फ़ंक्शन को कॉल करना है : ( DD_close ) //+------------------------------------------------------------------+ //| ग्लोबल स्कोप | //+------------------------------------------------------------------+ bool Close_All_V; //+------------------------------------------------------------------+ //| मुख्य फ़ंक्शन | //+------------------------------------------------------------------+ // ड्रॉडाउन : यहाँ ड्रॉडाउन प्रतिशत है, 100 का मतलब है कोई ऑर्डर बंद नहीं होगा। // मैजिक नंबर : आपके EA का मैजिक नंबर, 0 डालें ताकि सभी ऑर्डर को कंट्रोल किया जा सके। void DD_close(int DD,int Magic_Number) { if(DD(Magic_Number)>=DD) Close_All_V=true; if(Close_All_V) Close_All(Magic_Number); } //+------------------------------------------------------------------+ //| चेक क्लोज | //+------------------------------------------------------------------+ void Check_Close(int Check_Number) // ऑर्डर बंद करने की जांच करें { if(Check_Number<0) Print("OrderClose failed with error: ",ErrorDescription(GetLastError())); else Close_All_V=false; } //+------------------------------------------------------------------+ //| सभी बंद करें | //+------------------------------------------------------------------+ void Close_All(int M_N) { int Loop=0; for(int i=0; Loop<OrdersTotal(); i++) if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) { Loop++; if(OrderSymbol()==Symbol()) if(OrderMagicNumber()==M_N || OrderMagicNumber()==0) { if(OrderType()==OP_BUY) Check_Close(OrderClose(OrderTicket(),OrderLots(),Bid,100,clrNONE)); if(OrderType()==OP_SELL) Check_Close(OrderClose(OrderTicket(),OrderLots(),Ask,100,clrNONE)); } } } //+------------------------------------------------------------------+ //| लॉस की गणना करें | //+------------------------------------------------------------------+ double Loss(int M_N) { double re=0; int Loop=0; for(int i=0; Loop<OrdersTotal(); i++) if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) { Loop++; if(OrderSymbol()==Symbol()) if(OrderMagicNumber()==M_N || OrderMagicNumber()==0) re=re+OrderProfit(); } return re * -1; } //+------------------------------------------------------------------+ //| ड्रॉडाउन प्रतिशत की गणना करें | //+------------------------------------------------------------------+ double DD(int M_N) { return ( 100 / AccountBalance ( ) ) * Loss ( M_N ); } //+------------------------------------------------------------------+
संबंधित पोस्ट
- MetaTrader 4 के लिए विज़ुअल ऑर्डर प्रोसेसिंग - आपके ट्रेडिंग साथी
- MQL5 विजार्ड: मॉर्निंग/ईवनिंग स्टार पैटर्न और स्टोकास्टिक पर आधारित ट्रेड सिग्नल
- MQL5 विजार्ड: मॉर्निंग/इविनिंग स्टार और RSI पर आधारित ट्रेड सिग्नल
- MQL5 विजार्ड: सुबह/शाम के तारे के आधार पर ट्रेड सिग्नल + CCI के साथ एक्सपर्ट एडवाइजर
- MQL5 विजार्ड: बुलिश हरामी/बियरिश हरामी और RSI पर आधारित ट्रेड सिग्नल