डाइवर्जेंस टेम्पलेट इंडिकेटर: मेटाट्रेडर 4 के लिए उपयोगी टूल

Mike 2024.03.10 23:41 41 0 0
संलग्नक

DivEurusd

यह टेम्पलेट कैसे काम करता है?

यह इंडिकेटर एक टेम्पलेट प्रदान करता है जिसका उपयोग आप अपनी पसंद के ऑस्सीलेटर के आधार पर डाइवर्जेंस को प्लॉट करने के लिए कर सकते हैं।

आप जिस ऑस्सीलेटर का चयन करते हैं (चाहे वह CCI हो, RSI हो या आपका कस्टम इंडिकेटर), आप इस कोड के इस भाग को संशोधित कर सकते हैं:

   /////////////////////////////////////////////
   //इंडिकेटर डेटा को इंडिकेटर बफर में लोड करें
   //आप आसानी से RSI को किसी भी इंडिकेटर से बदल सकते हैं
   int BARS=MathMax(rates_total-IndicatorCounted()-pivots_period,1);
   for(int i=BARS;i>=0;i--)
   {
      indicatorBuffer[i]=iRSI(_Symbol, PERIOD_CURRENT, 14, PRICE_CLOSE, i);
   }
   //इंडिकेटर लोड करने का अंत
   /////////////////////////////////////////////


सिग्नल बफर्स

इस इंडिकेटर में चार अलग-अलग बफर्स हैं जो नीचे दिए गए हैं ताकि उत्पन्न सिग्नल को ट्रैक किया जा सके। जब भी संबंधित बफर में गैर-खाली मान होता है, तब एक सिग्नल होता है।
   SetIndexBuffer(3,bull_reg_divBuffer);
   SetIndexBuffer(4,bear_reg_divBuffer);
   SetIndexBuffer(5,bull_hid_divBuffer);
   SetIndexBuffer(6,bear_hid_divBuffer);


इनपुट सेक्शन

inputint pivots_period=5; //इंडिकेटर पिवट खोजने के लिए अवधिinputint alert_confirm_candles=1; //#सिग्नल की पुष्टि के लिए कैंडल(0=अलर्ट बंद करें)

इंडिकेटर बफर में पिवट हाई और पिवट लो खोजना pivots_period इनपुट पर निर्भर करता है। जितनी बड़ी आप इस मान को चुनेंगे, यह संभावित डाइवर्जेंस के लिए बड़ी स्विंग खोजेगा।

दूसरा इनपुट alert_confirm_candles है जो यह निर्धारित करता है कि सिग्नल की पुष्टि के लिए कितने बार इंतज़ार करना है। डाइवर्जेंस इंडिकेटर्स ज्यादातर लेगिंग होते हैं और कई झूठे सिग्नल उत्पन्न करते हैं। जितनी बड़ी आप इस मान को चुनेंगे, यह अधिक समय तक प्रतीक्षा करेगा और झूठे सिग्नल की संख्या कम करेगा। यह इस बात का समझौता है कि आप समय पर सिग्नल चाहते हैं या पुष्टि किए गए।

आम तौर पर, आपको pivots_period लागू करने की अनुमति नहीं है  < 2.


रीपेंट समस्या

जिन इंडिकेटरों को पिवट गणनाओं पर निर्भर होना पड़ता है, उन्हें हाल के उच्च/निम्न की पुष्टि के लिए pivots_period तक इंतज़ार करना पड़ता है। इसलिए इस इंडिकेटर को समय के साथ pivots_period पीछे जाकर सिग्नल को रीपेंट करने की आवश्यकता होती है।

   BARS=MathMax(rates_total-IndicatorCounted()-pivots_period,pivots_period);
   for(int i=BARS;i>=0;i--)
   {
      PHBuffer[i]=pivothigh(indicatorBuffer, pivots_period, pivots_period, i);
      PLBuffer[i]=pivotlow(indicatorBuffer, pivots_period, pivots_period, i);
      bull_reg_divBuffer[i]=BullRegDiv(i);
      bear_reg_divBuffer[i]=BearRegDiv(i);
      bull_hid_divBuffer[i]=BullHidDiv(i);
      bear_hid_divBuffer[i]=BearHidDiv(i);
   }   
    सूची
    टिप्पणी 0