Download 4 EMA Trend MT4 Indicator

4-EMA-Trend-MT4-IndicatorDownload 4 EMA Trend MT4 Indicator. This is simple trend indicator based on EMA (exponential moving average). When trend going to bullish you search for best entry points when candles close above blue EMA. When you see candle is close below yellow EMA, it’s sell party :D

EMA Trend Indicator creates 2 channels based on 2 Exponential moving averages to identify the momentum and strength of the current trend on the selected currency pair. If the price becomes distant from the channel, that means the pair is trending. If the channel is flat and prices move in the channel, that means the market lacks momentum.

How to Trade With EMA Trend Indicator:

Buy Signal:
-Wait for the candlestick bar to close completely above the channels.

Sell Signal:
-Wait for the candlestick bar to close completely below the channels.

//| EMA_Trend_Indicator.mq4 |
//| Copyright © 2006, Robert L Hill |
// Uses an idea from david to use EMAs to determine trend
#property copyright “Copyright © 2005, Metaquotes”
#property link “mailto:[email protected]

#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 Yellow
#property indicator_color2 Purple
#property indicator_color3 Purple
#property indicator_color4 Yellow
#property indicator_width1 2
#property indicator_width2 2
#property indicator_width3 2
#property indicator_width4 2

//—- input parameters
extern int FastMAPeriod=21;
extern int SlowMAPeriod=34;

//—- buffers
double fastEMA_HighBuffer[];
double fastEMA_LowBuffer[];
double slowEMA_HighBuffer[];
double slowEMA_LowBuffer[];
//—- variables

//| Custom indicator initialization function |
int init()
//—- indicators
//—- name for DataWindow and indicator subwindow label
IndicatorShortName(“MA Trend “);
//| Custor indicator deinitialization function |
int deinit()

//| Custom indicator iteration function |
int start()
int limit;
int counted_bars = IndicatorCounted();
//—- check for possible errors
if (counted_bars<0) return(-1);
//—- last counted bar will be recounted
if (counted_bars>0) counted_bars–;
limit = Bars – counted_bars;

for(int i=limit; i>=0; i–)
fastEMA_HighBuffer[i] = iMA(NULL,0,FastMAPeriod,0,MODE_EMA,PRICE_HIGH,i);
fastEMA_LowBuffer[i] = iMA(NULL,0,FastMAPeriod,0,MODE_EMA,PRICE_LOW,i);
slowEMA_HighBuffer[i] = iMA(NULL,0,SlowMAPeriod,0,MODE_EMA,PRICE_HIGH,i);
slowEMA_LowBuffer[i] = iMA(NULL,0,SlowMAPeriod,0,MODE_EMA,PRICE_LOW,i);


Click Here to Download

0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *