पेंडिंग ऑर्डर एक ऐसा ऑर्डर है जो तब क्रियान्वित होता है जब कीमत किसी निश्चित स्तर तक पहुँचती है, अर्थात्, एक पेंडिंग ऑर्डर का अर्थ है कि हम एक विशिष्ट मूल्य स्तर पर स्थिति खोलने का आदेश दे रहे हैं। जब कीमत उस पूर्व निर्धारित स्तर को छूती है, तो हमारे पास स्वचालित रूप से एक ट्रेडिंग स्थिति खुल जाती है।
मेटाट्रेडर 4 पर 6 प्रकार के ऑर्डर होते हैं:
- प्रकार 0 = खरीद
- प्रकार 1 = बेचना
- प्रकार 2 = खरीद सीमित
- प्रकार 3 = बेचने की सीमा
- प्रकार 4 = खरीद स्टॉप
- प्रकार 5 = बेचना स्टॉप
इन 6 प्रकारों में से, 4 प्रकार के पेंडिंग ऑर्डर उपलब्ध हैं। हम पेंडिंग ऑर्डर्स के प्रकारों पर एक-एक करके चर्चा करेंगे और फिर हम तुरंत EA को क्रियान्वित करेंगे।
1. खरीद सीमित
खरीद सीमित ऑर्डर तब चलता है जब कीमत नीचे है, इसलिए इस ऑर्डर में स्ट्रक्चर को बदलने की आवश्यकता होती है और कीमत बुक की जाती है।
खरीद ऑर्डर के लिए नोट:
OrderSend(Symbol(), 0, start_lot, Ask, 3, Ask - SL * Point, Ask + TP * Point, "", Magic, 0, Blue);
यहाँ अंडरलाइन भाग में पेंडिंग ऑर्डर के लिए आवश्यक बदलाव करना होगा।
इसके अलावा, एक महत्वपूर्ण हिस्सा है Distance वर्तमान कीमतों और बुक की गई कीमत के बीच।
Ask - Distance * Point
इस प्रकार:
OrderSend(Symbol(), 2, start_lot, Ask - Distance * Point, 3, Ask - Distance * Point - SL * Point, Ask - Distance * Point + TP * Point, "", Magic, 0, Blue);
इसे इस तरह भी लिखा जा सकता है:
OrderSend(Symbol(), OP_BUYLIMIT, start_lot, Ask - Distance * Point, 3, Ask - Distance * Point - SL * Point, Ask - Distance * Point + TP * Point, "", Magic, 0, Blue);
2. बेचने की सीमा
बेचने की सीमा ऑर्डर तब होते हैं जब कीमत ऊपर की ओर बढ़ रही होती है।
खरीद सीमित ऑर्डर की तरह, यहाँ भी ऑर्डर का प्रकार और दूरी महत्वपूर्ण हैं, इसलिए कृपया तुलना करें।
OrderSend(Symbol(), 3, start_lot, Bid + Distance * Point, 3, Bid + Distance * Point + SL * Point, Bid + Distance * Point - TP * Point, "", Magic, 0, Red);
इसे इस तरह भी लिखा जा सकता है:
OrderSend(Symbol(), OP_SELLLIMIT, start_lot, Bid + Distance * Point, 3, Bid + Distance * Point + SL * Point, Bid + Distance * Point - TP * Point, "", Magic, 0, Red);
3. खरीद स्टॉप
खरीद स्टॉप ऑर्डर तब होते हैं जब कीमत ऊपर की ओर बढ़ रही होती है।
कृपया पहले वाले प्रकार से तुलना करें।
OrderSend(Symbol(), 4, start_lot, Ask + Distance * Point, 3, Ask + Distance * Point - SL * Point, Ask + Distance * Point + TP * Point, "", Magic, 0, Blue);
इसे इस तरह भी लिखा जा सकता है:
OrderSend(Symbol(), OP_BUYSTOP, start_lot, Ask + Distance * Point, 3, Ask + Distance * Point - SL * Point, Ask + Distance * Point + TP * Point, "", Magic, 0, Blue);
4. बेचने का स्टॉप
बेचने का स्टॉप ऑर्डर तब होता है जब कीमत नीचे की ओर बढ़ रही होती है।
कृपया पहले वाले प्रकार से तुलना करें।
OrderSend(Symbol(), 5, start_lot, Bid - Distance * Point, 3, Bid - Distance * Point + SL * Point, Bid - Distance * Point - TP * Point, "", Magic, 0, Red);
इसे इस तरह भी लिखा जा सकता है:
OrderSend(Symbol(), OP_SELLSTOP, start_lot, Bid - Distance * Point, 3, Bid - Distance * Point + SL * Point, Bid - Distance * Point - TP * Point, "", Magic, 0, Red);
जैसा कि मैंने शुरुआत में वादा किया था, हम चार पेंडिंग ऑर्डर्स का उपयोग करके EA को सरल बनाने का प्रयास करेंगे!
लेकिन हमें एक ऑर्डर बनाने से पहले इसकी प्रकार के अनुसार फ़िल्टर की संख्या बनानी होगी, इसलिए मैं एक स्क्रिप्ट प्रदान कर रहा हूँ जो ऑर्डर के प्रकार की गणना करने के लिए एक फ़ंक्शन है।
int totalorder(int m) {
int total = 0;
for (int i = 0; i < OrdersTotal(); i++) {
if (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue;
if (OrderSymbol() != Symbol() || OrderMagicNumber() != Magic || OrderType() != m) continue;
total++;
}
return (total);
}
कैसे कॉल करें
उदाहरण:
खरीद सीमित के लिए
if (totalorder(OP_BUYLIMIT) == 0) { res = OrderSend(Symbol(), 2, start_lot, Ask - Distance * Point, 3, Ask - Distance * Point - SL * Point, Ask - Distance * Point + TP * Point, "", Magic, 0, Blue); }
या
if (totalorder(2) == 0) { res = OrderSend(Symbol(), OP_BUYLIMIT, start_lot, Ask - Distance * Point, 3, Ask - Distance * Point - SL * Point, Ask - Distance * Point + TP * Point, "", Magic, 0, Blue); }
बेचने की सीमा के लिए
if (totalorder(OP_SELLLIMIT) == 0) { res = OrderSend(Symbol(), 3, start_lot, Bid + Distance * Point, 3, Bid + Distance * Point + SL * Point, Bid + Distance * Point - TP * Point, "", Magic, 0, Red); }
या
if (totalorder(3) == 0) { res = OrderSend(Symbol(), OP_SELLLIMIT, start_lot, Bid + Distance * Point, 3, Bid + Distance * Point + SL * Point, Bid + Distance * Point - TP * Point, "", Magic, 0, Red); }
EA इस प्रकार चलता है:

आशा है कि यह जानकारी उपयोगी साबित होगी, कृपया अपनी टिप्पणियाँ दें।
लाभ प्राप्त करें, शुभकामनाएँ और आपका दिन शुभ हो!
टिप्पणी 0