होम सिस्टम ट्रेडिंग पोस्ट

VR---मूविंग: MetaTrader 5 के लिए बेहतरीन ट्रेडिंग सिस्टम

संलग्नक
20610.zip (8.81 KB, डाउनलोड 0 बार)

विचारकर्ता: Vladimir Pastushak.

MQL5 कोड: Vladimir Karputov.

यह EA मूविंग एवरेज इंडिकेटर पर ट्रेड करता है, जिसमें सभी प्रीपरेटरी और ट्रेडिंग फंक्शन्स को एक अलग फाइल Moving.mqh में CMoving ट्रेडिंग क्लास के रूप में लागू किया गया है।


इनपुट्स

  • मैजिक नंबर - EA की यूनिक पहचान;
  • लॉट्स - पोजीशन वॉल्यूम (पोजीशन वॉल्यूम शून्य से ऊपर या रिस्क साइज शून्य से ऊपर होनी चाहिए);
  • रिस्क - ट्रेड पर फ्री मार्जिन का प्रतिशत रिस्क (पोजीशन वॉल्यूम शून्य से ऊपर या रिस्क साइज शून्य से ऊपर होनी चाहिए);
  • MA: पीरियड - मूविंग एवरेज इंडिकेटर: टाइमफ्रेम;
  • MA: एवरेजिंग पीरियड - मूविंग एवरेज इंडिकेटर: एवरेजिंग पीरियड;
  • MA: होरिजेंटल शिफ्ट - मूविंग एवरेज इंडिकेटर: होरिजेंटल शिफ्ट;
  • MA: स्मूथिंग टाइप - मूविंग एवरेज इंडिकेटर: एवरेजिंग मेथड;
  • MA: प्राइस का प्रकार - मूविंग एवरेज इंडिकेटर: जिस कीमत पर इंडिकेटर की गणना की जाती है;
  • टेक प्रॉफिट - टेक प्रॉफिट (जब एक पोजीशन खुली हो);
  • पोजीशन्स की सीरीज के लिए लॉट मल्टीप्लायर - पोजीशन के वॉल्यूम को बढ़ाने के लिए;
  • मूविंग एवरेज से दूरी - मूविंग एवरेज इंडिकेटर से दूरी;
  • सामान्य लाभ की मौजूदगी में एडिटिव - यदि सामान्य लाभ हो तो इंडेंट में जोड़ना।

यह EA स्विंग प्रिंसिपल का उपयोग करता है, जिसमें लॉट्स की संख्या बढ़ाने की संभावना होती है; इसके संचालन के लिए एक सरल रणनीति का उपयोग किया जाता है:

  • यदि मूल्य मूविंग एवरेज इंडिकेटर से एक पूर्व निर्धारित मूविंग एवरेज से दूरी पर ऊपर हो, तो हम एक BUY पोजीशन खोलेंगे;
  • यदि मूल्य मूविंग एवरेज इंडिकेटर से एक पूर्व निर्धारित मूविंग एवरेज से दूरी पर नीचे जाता है, तो हम समान लॉट के साथ एक SELL पोजीशन खोलेंगे;
  • यदि मूल्य BUY पोजीशन से एक पूर्व निर्धारित मूविंग एवरेज से दूरी पर सबसे उच्च मूल्य पर बढ़ता है, तो हम अगली BUY पोजीशन खोलेंगे;
  • यदि मूल्य BUY पोजीशन से एक पूर्व निर्धारित मूविंग एवरेज से दूरी पर सबसे कम मूल्य पर गिरता है, तो हम अगली SELL पोजीशन खोलेंगे;


CMoving क्लास

सेटिंग पैरामीटर्स
Initialization

प्राथमिक इनिशियलाइजेशन - निम्नलिखित पैरामीटर्स सेट किए जाते हैं:

  • symbol - उस प्रतीक का नाम, जिस पर EA काम करेगा
  • magic - EA के लिए यूनिक पहचान
  • slippage - स्लिपेज।
GetFlag
यह इनिशियलाइजेशन फ्लैग की स्थिति लौटाता है। इसका उपयोग बेसिक EA से कॉल करने पर CMoving क्लास के आंतरिक m_init वेरिएबल की स्थिति की जांच करने के लिए किया जाता है।
LotsOrRisk
पोजीशन लॉट्स की गणना के प्रकार को परिभाषित करना: या तो मैनुअल (जब lots पैरामीटर शून्य से ऊपर हो) या ट्रेड पर फ्री मार्जिन का प्रतिशत (जब risk पैरामीटर शून्य से ऊपर हो)।
CreateMA
मूविंग एवरेज इंडिकेटर बनाना।
TakeProfit
टेक प्रॉफिट पैरामीटर को परिभाषित करना।
Multiplier
लॉट बढ़ाने वाले पैरामीटर को परिभाषित करना।
DistanceMA
मूविंग एवरेज इंडिकेटर से इंडेंट को परिभाषित करना।
ProfitPlus
सामान्य लाभ पर अतिरिक्त इंडेंट को परिभाषित करना।
मुख्य फंक्शन
Processing
मुख्य फंक्शन, जिसमें सभी गणनाएँ की जाती हैं।
क्लास फंक्शन्स प्रोटेक्टेड एक्सेस स्पेसिफायर के साथ
RefreshRates
प्रतीक के लिए कोट्स को अपडेट करना।
CheckVolumeValue
दिए गए पोजीशन वॉल्यूम की जांच करना (यह मैन्युअल रूप से पोजीशन वॉल्यूम को परिभाषित करते समय उपयोग किया जाता है)।
IsFillingTypeAllowed
ऑर्डर भरने के तरीके की जांच करना।
iMAGet
उस बार पर मूविंग एवरेज इंडिकेटर के मान प्राप्त करना, जिसका इंडेक्स index है।
CalculateAllPositions

कॉल पर पोजीशन्स की जानकारी प्राप्त करना:

  • count_buys - BUY पोजीशन्स की संख्या;
  • price_highest_buy - सबसे उच्च BUY पोजीशन की कीमत;
  • price_lowest_buy - सबसे कम BUY पोजीशन की कीमत;
  • lot_highest_buy - सबसे उच्च BUY पोजीशन का वॉल्यूम;
  • lot_lowest_buy - सबसे कम BUY पोजीशन का वॉल्यूम;
  • total_lots_buy - सभी BUY पोजीशन्स का कुल वॉल्यूम;
  • count_sells - SELL पोजीशन्स की संख्या;
  • price_lowest_sell - सबसे कम SELL पोजीशन की कीमत;
  • price_highest_sell - सबसे उच्च SELL पोजीशन की कीमत;
  • lot_lowest_sell - सबसे कम SELL पोजीशन का वॉल्यूम;
  • lot_highest_sell - सबसे उच्च SELL पोजीशन का वॉल्यूम;
  • total_lots_sell - सभी SELL पोजीशन्स का कुल वॉल्यूम。
Prices
BUY और SELL पोजीशन्स के लिए संदर्भ मूल्य प्राप्त करना, जो पूर्व निर्धारित मूविंग एवरेज से दूरी को ध्यान में रखते हुए।
LotCheck
पोजीशन वॉल्यूम की जांच और सामान्यीकरण (यह मैन्युअल रूप से पोजीशन साइज को परिभाषित करते समय उपयोग किया जाता है)।
OpenBuy
BUY पोजीशन खोलना।
OpenSell
SELL पोजीशन खोलना।
PrintResult
पोजीशन खोलने के लिए व्यापार संचालन के परिणाम प्रिंट करना।
SetTakeProfit
पोजीशन्स के लिए टेक प्रॉफिट स्तर सेट करना या सभी टेक प्रॉफिट और स्टॉप लॉस स्तरों को हटाना (जहाँ delete_take_profit पैरामीटर "true" के बराबर हो)।
CompareDoubles
दो रियल नंबरों की तुलना करना कि क्या वे समान हैं।
AwerageTakeProfit
किसी विशेष प्रकार की पोजीशन के लिए एकल टेक प्रॉफिट स्तर की गणना और सेट करना pos_type.

GBPUSD, H1, "हर टिक वास्तविक टिक पर आधारित।"

VR---MUVING

संबंधित पोस्ट

टिप्पणी (0)