ट्रेडिंग में इंडिकेटर्स और सिस्टम ट्रेडिंग के लिए यह जानना बहुत ज़रूरी होता है कि क्या किसी निश्चित समय-फ्रेम पर नया बार आया है। आइए जानते हैं, इसे कैसे किया जा सकता है।
जब आप isNewBar() फंक्शन को पहली बार कॉल करते हैं, तो वर्तमान बार को नया बार नहीं माना जाता है। यह फंक्शन अपने समय को सेव करता है, और अगला बार नया होगा।
कोड को समझने में आसान बनाने के लिए इसमें टिप्पणी की गई है, उम्मीद है कि यह आपके लिए उपयोगी होगी।
ध्यान दें कि यह विधि MQL4 में बहुत प्रचलित है - Bars फंक्शन का उपयोग करके बार की गिनती (यह यहाँ रूसी में चर्चा की गई है)।
MQL5 में यह तभी काम करेगा जब चार्ट में अधिकतम बार की सेटिंग अनलिमिटेड हो:

इस स्थिति में, जब नए बार आते हैं, तो Bars फंक्शन बढ़ते हुए बार की संख्या लौटाएगा, लेकिन यदि चार्ट में अधिकतम बार सीमित (जैसे 10000 बार) हैं, तो यह तरीका काम नहीं करेगा! इसे जांचना बहुत आसान है।
इसीलिए आवश्यक है कि अंतिम बार के समय को सेव किया जाए और उनकी तुलना की जाए, क्योंकि बार पूरा होने तक समय में कोई बदलाव नहीं होता है।
यह विधि इंडिकेटर में उपयोग की गई है।