Multi Timeframe Candles Indicator For MT4
Table Of Contents:
- Multi Timeframe Candles Indicator For MT4
- Installation des Multi Timeframe Candles Indicator For MT4
- Parameter des Multi Timeframe Candles Indicator For MT4
- Puffer des Multi Timeframe Candles Indicator For MT4
- Hauptteile des Codes
Der Multi Timeframe Candles Indicator For MT4 zeichnet Kerzenstifte aus einem höheren Zeitrahmen auf einem Asset-Preischart. Beispielsweise kann der Indikator 1-Stunden-Kerzen auf einem 5-Minuten-Chart anzeigen. Dies kann sich insbesondere für Händler als hilfreich erweisen, die einen Markttrend in einem höheren Zeitrahmen-Chart erkennen und dann Einträge in einem kürzeren Zeitrahmen lokalisieren.
Installation des Multi Timeframe Candles Indicator For MT4
Nachdem Sie den Indikator über das obige Formular heruntergeladen haben, müssen Sie die Zip-Datei entpacken. Anschließend müssen Sie die Datei MTF_Candles.mq4 in den Ordner MQL4Indicators Ihrer MT4 Installation kopieren. Starten Sie danach MT4 neu und Sie können den Indikator in der Liste der Indikatoren sehen.
Parameter des Multi Timeframe Candles Indicator For MT4
Der Multi Timeframe Candles Indicator For MT4 verfügt über 3 zu konfigurierende Parameter.
extern string timeframe = "H4"; extern color BullColor = SteelBlue; extern color BearColor = Red;
Puffer des Multi Timeframe Candles Indicator For MT4
Der Multi Timeframe Candles Indicator For MT4 stellt 1 Puffer bereit.
SetIndexBuffer(0,extBuffer);
Hauptteile des Codes
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); } } //+------------------------------------------------------------------+