"Test_ChartEvent.mq4" एक सिस्टम ट्रेडिंग है जिसका उद्देश्य विभिन्न प्रकार के चार्ट इवेंट्स को प्रदर्शित करना है: कीबोर्ड की घटनाएँ, माउस क्लिक और मूव इवेंट्स, और कस्टम इवेंट्स। आप मदद के लिए 'H' की दबा सकते हैं और MOUSE_MOVE इवेंट मोड में जाने के लिए 'M' की दबा सकते हैं।
यह स्रोत कोड मेटाट्रेडर 4 और मेटाट्रेडर 5 दोनों में काम करता है।
फंक्शन प्रोटोटाइप
- bool Obj_Create()
- bool Obj_Delete()
- bool Obj_Move(int hSens,int vSens) - ऑब्जेक्ट को मूव करता है।
- void Print_Info() - ऑब्जेक्ट्स के बारे में जानकारी प्रिंट करता है।
- int MouseMove(int aXX,int aYY,string sState) - माउस मूव इवेंट को हैंडल करता है।
वैश्विक चर
- int gChartNo=0
- int gSubWinNo=0
- string gsObj_Name_selected="" - वर्तमान में चयनित ऑब्जेक्ट का नाम।
कस्टम इवेंट्स
तीन प्रकार के कस्टम इवेंट्स परिभाषित किए गए हैं:
- #define cMyEvent_1 0
- #define cMyEvent_2 1
- #define cMyEvent_3_broadcast 2
OnTimer() फंक्शन
यह फंक्शन कस्टम चार्ट इवेंट्स को नियमित रूप से बनाता है। और यह तीन कस्टम इवेंट्स (cMyEvent_1, cMyEvent_2 और cMyEvent_3_broadcast) को यादृच्छिक रूप से उत्पन्न करता है। विशेष रूप से, cMyEvent_3_broadcast इवेंट सभी खुले चार्ट विंडोज के लिए उत्पन्न होता है।
क्लास का उदाहरण
"CObjectMan" क्लास को चार्ट पर ऑब्जेक्ट्स की कार्यक्षमता को संभालने के लिए बनाया गया है। क्लास के दो उदाहरण (चर) घोषित किए गए हैं: gObjectMan1 और gObjectMan2।
इन दो उदाहरणों से जुड़े ग्राफिक ऑब्जेक्ट्स के नाम क्रमशः: "ग्रीन बटन" और "येलो बटन" हैं।
इवेंट प्रोसेसिंग
void OnChartEvent():
"CHARTEVENT_KEYDOWN" इवेंट्स:
- 4 दिशा की कुंजियाँ (तीर) या डिजिटल पैनल पर 4 दिशा की कुंजियाँ चयनित ऑब्जेक्ट को मूव करने के लिए।
- 'H': मदद की जानकारी प्रिंट करें (विशेषज्ञ लॉग विंडो में)।
- 'I': दो ऑब्जेक्ट्स की स्थिति की जानकारी प्रिंट करें।
- 'M': MOUSE_MOVE इवेंट को सक्रिय करें।
कस्टम इवेंट्स
इन इवेंट्स के बारे में जानकारी प्रिंट करें। खासकर MyEvent_3_broadcast इवेंट के लिए।
ऑब्जेक्ट इवेंट्स
- CHARTEVENT_OBJECT_CHANGE, CHARTEVENT_OBJECT_DRAG, CHARTEVENT_OBJECT_DELETE - संबंधित ऑब्जेक्ट का नाम प्रिंट करें।
- CHARTEVENT_OBJECT_CLICK - क्लिक किए गए ऑब्जेक्ट का नाम प्रिंट करें, दिशा कुंजियों द्वारा मूव करने के लिए इसका नाम चुनें।
माउस इवेंट्स
- CHARTEVENT_CLICK - क्लिक किए गए बार की जानकारी प्रिंट करें: कीमतें (खुली, बंद) और बार का समय।
- CHARTEVENT_MOUSE_MOVE (देखें: CHART_EVENT_MOUSE_MOVE) - कवर किए गए अंतराल की जानकारी प्रिंट करें: बार की संख्या, कीमत में परिवर्तन।

डेमोंस्ट्रेशन
आप निम्नलिखित परीक्षण कर सकते हैं:
- दो ऑब्जेक्ट्स (बटन) में से एक पर क्लिक करें और चयनित ऑब्जेक्ट को मूव करने के लिए दिशा कुंजियों का उपयोग करें।
- ग्राफिक बार पर क्लिक करें और लॉग टैब (संदेश) में बार की जानकारी देखें।
- 'M' की दबाकर MOUSE_MOVE इवेंट मोड में प्रवेश करें। Ctrl+F दबाकर क्रॉसहेयर दिखाएं, फिर ड्रैग'एन'D्रॉप ऑपरेशन करें। यदि आप लॉग संदेश नहीं देखते हैं, तो कृपया इनपुट पैरामीटर बदलें: "iLogLevel"।
संबंधित पोस्ट
- MetaTrader 4 के लिए विज़ुअल ऑर्डर प्रोसेसिंग - आपके ट्रेडिंग साथी
- MQL5 विजार्ड: मॉर्निंग/इविनिंग स्टार और RSI पर आधारित ट्रेड सिग्नल
- MQL5 विजार्ड: मॉर्निंग/ईवनिंग स्टार पैटर्न और स्टोकास्टिक पर आधारित ट्रेड सिग्नल
- MQL5 विजार्ड: बुलिश/बेयरिश मीटिंग लाइन्स पर आधारित ट्रेड सिग्नल्स + CCI
- MQL5 विजार्ड: दो EMA के क्रॉसओवर पर आधारित ट्रेड सिग्नल और इंट्राडे टाइम फ़िल्टर