Multi Timeframe Candles Indicator For MT4
Table Of Contents:
- Multi Timeframe Candles Indicator For MT4
- Установка Multi Timeframe Candles Indicator For MT4
- Параметры Multi Timeframe Candles Indicator For MT4
- Буферы Multi Timeframe Candles Indicator For MT4
- Основные части кодекса
Multi Timeframe Candles Indicator For MT4 свечей с Multi Timeframe Candles Indicator For MT4 строит свечи с более высокого таймфрейма на вершине графика цены актива. Например, индикатор может перекрывать 1-часовые свечи поверх 5-минутного графика. Это может оказаться особенно полезным для трейдеров, которые обнаруживают рыночный тренд на графике с более высоким таймфреймом, а затем точно определяют входы на более коротком таймфрейме.
Установка Multi Timeframe Candles Indicator For MT4
После того, как вы загрузили индикатор через форму выше, вам необходимо распаковать zip-файл. Затем вам нужно скопировать файл MTF_Candles.mq4 в папку MQL4Indicators вашей установки MT4 . После этого перезапустите MT4, и вы сможете увидеть индикатор в списке индикаторов.
Параметры Multi Timeframe Candles Indicator For MT4
Multi Timeframe Candles Indicator For MT4 имеет параметры 3 для настройки.
extern string timeframe = "H4"; extern color BullColor = SteelBlue; extern color BearColor = Red;
Буферы Multi Timeframe Candles Indicator For MT4
Multi Timeframe Candles Indicator For MT4 предоставляет буферы 1 .
SetIndexBuffer(0,extBuffer);
Основные части кодекса
int start() { int counted_bars=IndicatorCounted(); int limit,i,j; if(counted_bars gt 0) counted_bars--; limit=Bars-counted_bars; if(counted_bars==0) { //ArrayInitialize(extBuffer,0); limit--; } p=tfstrtoint(timeframe); for(i=limit-1; i gt =0; i--) { int rp = MathCeil(i*Period()/p); int rp1 = MathCeil((i+1)*Period()/p); for(j=i;j lt =i+p/Period();j++) { if(iOpen(NULL,p,rp)==iOpen(NULL,0,i)) { open=iOpen(NULL,0,i); close = iClose(NULL,0,i); open1 = iOpen(NULL,p,rp1); close1= iClose(NULL,p,rp1); } } extBuffer[i]=open; if(extBuffer[i]!=extBuffer[i+1]) { currentCandle++; createCandle(Time[i],open); } updateCandle(Time[i],close1); } return(0); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void createCandle(double t,double o) { ObjectCreate("candle"+(string)currentCandle,OBJ_RECTANGLE,0,t,o,t,o); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void updateCandle(double t,double c) { ObjectSet("candle"+(string)currentCandle,OBJPROP_TIME2,t); ObjectSet("candle"+(string)currentCandle,OBJPROP_PRICE2,c); if(ObjectGet("candle"+(string)currentCandle,OBJPROP_PRICE1) gt ObjectGet("candle"+(string)currentCandle,OBJPROP_PRICE2)) { ObjectSet("candle"+(string)currentCandle,OBJPROP_COLOR,BearColor); } else { ObjectSet("candle"+(string)currentCandle,OBJPROP_COLOR,BullColor); } } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void deleteCandles() { ObjectsDeleteAll(0,OBJ_RECTANGLE); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int deinit() { deleteCandles(); return(0); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int tfstrtoint(string str) { if(str=="M1") { return(1); } if(str=="M5") { return(5); } if(str=="M15") { return(15); } if(str=="M30") { return(30); } if(str=="H1") { return(60); } if(str=="H4") { return(240); } if(str=="D1") { return(1440); } if(str=="W1") { return(10080); } if(str=="MN") { return(43200); } if(str=="") { return(0); } } //+------------------------------------------------------------------+