Reversal Indicator For MT5
Table Of Contents:
- Reversal Indicator For MT5
- 安装Reversal Indicator For MT5
- Reversal Indicator For MT5参数
- Reversal Indicator For MT5缓冲区
- 守则主要部分
Reversal Indicator For MT5的Reversal Indicator For MT5显示一种特殊的反转类型。指标的制定者关注范围。如果实际蜡烛在该范围内产生新的低点,但随后以看涨蜡烛收盘,则您应该在下一个蜡烛上输入多头。
安装Reversal Indicator For MT5
通过上面的表格下载指标后,您需要解压缩zip文件。然后,您需要将文件Reversal.mq5复制到MT5安装的文件夹MQL5Indicators中。之后,请重启MT5,然后您将能够在指标列表中看到该指标。
Reversal Indicator For MT5参数
Reversal Indicator For MT5具有要配置的2 参数。
input int Interval=10; input bool Send_Email=true;
Reversal Indicator For MT5缓冲区
Reversal Indicator For MT5提供2 缓冲区。
SetIndexBuffer(0,Buffer1); SetIndexBuffer(1,Buffer2);
守则主要部分
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[]) { int limit=rates_total-prev_calculated; //--- counting from 0 to rates_total ArraySetAsSeries(Buffer1,true); ArraySetAsSeries(Buffer2,true); //--- initial zero if(prev_calculated lt 1) { ArrayInitialize(Buffer1,0); ArrayInitialize(Buffer2,0); } else limit++; datetime Time[]; if(CopyHigh(Symbol(), PERIOD_H6, 0, rates_total, High) lt = 0) return(rates_total); ArraySetAsSeries(High,true); if(CopyClose(Symbol(), PERIOD_H6, 0, rates_total, Close) lt = 0) return(rates_total); ArraySetAsSeries(Close,true); if(CopyOpen(Symbol(), PERIOD_H6, 0, rates_total, Open) lt = 0) return(rates_total); ArraySetAsSeries(Open,true); if(CopyLow(Symbol(), PERIOD_H6, 0, rates_total, Low) lt = 0) return(rates_total); ArraySetAsSeries(Low,true); if(CopyTime(Symbol(), Period(), 0, rates_total, Time) lt = 0) return(rates_total); ArraySetAsSeries(Time,true); //--- main loop for(int i=limit-1; i gt =0; i--) { if(i gt =MathMin(5000-1,rates_total-1-50)) continue; //omit some old rates to prevent "Array out of range" or slow calculation //Indicator Buffer 1 if(High[1+i]==Resistance(Interval*PeriodSeconds(),false,00,00,false,i) //Candlestick High is equal to Resistance && Close[1+i] lt Open[1+i]//Candlestick Close lt Candlestick Open ) { Buffer1[i]=High[i]; //Set indicator value at Candlestick High if(i==1 && Time[1]!=time_alert) myAlert("indicator","Sell"); //Alert on next bar open time_alert=Time[1]; } else { Buffer1[i]=0; } //Indicator Buffer 2 if(Low[1+i]==Support(Interval*PeriodSeconds(),false,00,00,false,i) //Candlestick Low is equal to Support && Close[1+i] gt Open[1+i]//Candlestick Close gt Candlestick Open ) { Buffer2[i]=Low[i]; //Set indicator value at Candlestick Low if(i==1 && Time[1]!=time_alert) myAlert("indicator","Buy"); //Alert on next bar open time_alert=Time[1]; } else { Buffer2[i]=0; } } return(rates_total); } //+------------------------------------------------------------------+