ATR Probability Levels Indicator For MT5
Table Of Contents:
- ATR Probability Levels Indicator For MT5
- ATR Probability Levels Indicator For MT5 स्थापित करना
- ATR Probability Levels Indicator For MT5 पैरामीटर
- ATR Probability Levels Indicator For MT5 के ATR Probability Levels Indicator For MT5
- संहिता के मुख्य भाग
ATR Probability Levels Indicator For MT5 5 के लिए ATR Probability Levels Indicator For MT5 उच्च संभावना स्तरों की गणना करता है जो बाजार एक निर्धारित अवधि के दौरान पहुंच सकता है। यह एटीआर संकेतक के आधार पर मूल्यों की गणना करता है। एटीआर गणना के लिए मानक समय सीमा दैनिक समय सीमा है। ऊपर के स्तर नीले रंग के साथ खींचे जाते हैं। नीचे के स्तर को नारंगी रंग के साथ खींचा गया है।
ATR Probability Levels Indicator For MT5 स्थापित करना
आपके द्वारा उपर्युक्त फ़ॉर्म के माध्यम से संकेतक डाउनलोड करने के बाद आपको ज़िप-फ़ाइल को अनज़िप करना होगा। तो फिर तुम फाइल कॉपी करने की जरूरत है ATR Probability Levels.mq5 फ़ोल्डर में MQL5Indicators अपने की MT5 स्थापना। उसके बाद कृपया MT5 को पुनः आरंभ करें और फिर आप संकेतक की सूची में संकेतक देख पाएंगे।
ATR Probability Levels Indicator For MT5 पैरामीटर
ATR Probability Levels Indicator For MT5 पास कॉन्फ़िगर करने के लिए 6 पैरामीटर हैं।
input ENUM_TIMEFRAMES inpTimeFrame = PERIOD_D1; // Timeframe for data input int inpAtrPeriod = 21; // ATR period input color inpUp = clrDeepSkyBlue; // Color for high levels input color inpDn = clrOrangeRed; // Color for low levels input string inpUniqueID = "AtrLevels1"; // Unique ID for objects input int inpLabelsShift = 10; // Labels shift
ATR Probability Levels Indicator For MT5 के ATR Probability Levels Indicator For MT5
ATR Probability Levels Indicator For MT5 0 बफ़र्स प्रदान करता है।
संहिता के मुख्य भाग
int OnCalculate(const int rates_total,const int prev_calculated,const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) { MqlRates _rates[]; int _ratesCopied=CopyRates(_Symbol,inpTimeFrame,1,inpAtrPeriod+1,_rates); if(_ratesCopied != inpAtrPeriod+1) return(prev_calculated); double _atr = 0; for(int k=0;k lt inpAtrPeriod; k++) _atr += MathMax(_rates[k+1].high,_rates[k].close)-MathMin(_rates[k+1].low,_rates[k].close); _atr /= inpAtrPeriod; double _pclose = _rates[inpAtrPeriod].close; string _tf = timeFrameToString(inpTimeFrame); datetime _time = time[rates_total-1]+PeriodSeconds(_Period)*inpLabelsShift; _createLine("res3",_pclose+_atr,_time,inpUp,inpUp,_tf+" probability band R3 ("+DoubleToString(_pclose+_atr,_Digits)+")"); _createLine("res2",_pclose+_atr*0.75,_time,inpUp,inpUp,_tf+" probability band R2 ("+DoubleToString(_pclose+_atr*0.75,_Digits)+")"); _createLine("res1",_pclose+_atr*0.50,_time,inpUp,inpUp,_tf+" probability band R1 ("+DoubleToString(_pclose+_atr*0.50,_Digits)+")"); _createLine("sup1",_pclose-_atr*0.50,_time,inpDn,inpDn,_tf+" probability band S1 ("+DoubleToString(_pclose-_atr*0.50,_Digits)+")"); _createLine("sup2",_pclose-_atr*0.75,_time,inpDn,inpDn,_tf+" probability band S2 ("+DoubleToString(_pclose-_atr*0.75,_Digits)+")"); _createLine("sup3",_pclose-_atr,_time,inpDn,inpDn,_tf+" probability band S3 ("+DoubleToString(_pclose-_atr,_Digits)+")"); ChartRedraw(); return (rates_total); } //+------------------------------------------------------------------+ //| Custom function(s) | //+------------------------------------------------------------------+ void _createLine(string _add,double _price,datetime _time,color _color,color _textColor,string _text,int _style=STYLE_DOT) { string _name=inpUniqueID+":"+_add; ObjectCreate(0,_name,OBJ_HLINE,0,0,0); ObjectSetInteger(0,_name,OBJPROP_COLOR,_color); ObjectSetInteger(0,_name,OBJPROP_STYLE,_style); ObjectSetDouble(0,_name,OBJPROP_PRICE,0,_price); _name=inpUniqueID+":label:"+_add; ObjectCreate(0,_name,OBJ_TEXT,0,0,0); ObjectSetInteger(0,_name,OBJPROP_COLOR,_textColor); ObjectSetInteger(0,_name,OBJPROP_TIME,0,_time); ObjectSetInteger(0,_name,OBJPROP_FONTSIZE,8); ObjectSetDouble(0,_name,OBJPROP_PRICE,0,_price); ObjectSetString(0,_name,OBJPROP_FONT,"Arial"); ObjectSetString(0,_name,OBJPROP_TEXT,_text); } //------------------ int _tfsPer[]={PERIOD_M1,PERIOD_M2,PERIOD_M3,PERIOD_M4,PERIOD_M5,PERIOD_M6,PERIOD_M10,PERIOD_M12,PERIOD_M15,PERIOD_M20,PERIOD_M30,PERIOD_H1,PERIOD_H2,PERIOD_H3,PERIOD_H4,PERIOD_H6,PERIOD_H8,PERIOD_H12,PERIOD_D1,PERIOD_W1,PERIOD_MN1}; string _tfsStr[]={"1 minute","2 minutes","3 minutes","4 minutes","5 minutes","6 minutes","10 minutes","12 minutes","15 minutes","20 minutes","30 minutes","1 hour","2 hours","3 hours","4 hours","6 hours","8 hours","12 hours","daily","weekly","monthly"}; //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ string timeFrameToString(int period) { if(period==PERIOD_CURRENT) period=_Period; int i; for(i=0;i lt ArraySize(_tfsPer);i++) if(period==_tfsPer[i]) break; return(_tfsStr[i]); } //+------------------------------------------------------------------+