The elliott wave oscillator indicator is a gap between two averages, shaded four ways. Above zero and rising paints lime. Above zero but falling drops to sea green. Below zero the pair is crimson and tomato. Colour therefore tells you both which side you are on and whether the move still has push.
This build ships as a compiled .ex4 for MT4 and .ex5 for MT5; the screenshots below come from EURUSD H1.
| Platforms | MT4 (.ex4) + MT5 (.ex5) |
|---|---|
| Chart window | Separate window (levels 0) |
| Plots | 6: EWO BullRise, EWO BullFall, EWO BearFall, EWO BearRise, BUY, SELL |
| Alerts | popup, push notification, email, sound |
| Inputs | 8 |
What the Elliott Wave Oscillator Indicator draws on the chart
Four histogram plots plus a pair of marks.
`EWO BullRise` fills lime at width 3.
`EWO BullFall` drops to sea green.
Below zero, `EWO BearFall` fills crimson.
`EWO BearRise` fills tomato beside it.
Zero-cross marks use arrow 233 and arrow 234.
One reference line spans the pane.
- EWO BullRise: histogram, lime, width 3
- EWO BullFall: histogram, sea green, width 3
- EWO BearFall: histogram, crimson, width 3
- EWO BearRise: histogram, tomato, width 3
- BUY: arrow, lime, width 2, arrow code 233
- SELL: arrow, red, width 2, arrow code 234

How the Elliott Wave Oscillator Indicator calculates its values
Two averages, one gap
Subtraction is all it is. `FastEMA` `5` less `SlowEMA` `35`, both exponential on typical price. Typical price averages high, low and close, so the whole bar counts.
Four shades
Two questions decide the colour. Is the gap above or below zero, and is it wider or narrower than the bar before. Each combination fills its own buffer.
The arrows
Zero is the trigger. A gap moving from below to above prints a buy mark on the candle. The opposite crossing prints a sell, five points clear of the bar.
How to read the signals
Lime says up and still building.
Sea green says up but fading.
Crimson says down and building.
Tomato says down but fading.
A shade change inside one side often leads the cross.
Zero is where the two averages meet.
Alert channels in this build: popup, push notification, email and sound, one message per closed bar.
`EnableAlerts` heads the zero-cross alerts and ships true with `EnablePopup`. Turn on `EnablePushNotify` for a phone, `EnableEmail` for mail, or `EnableSound` to play `SoundFile`. Crossings report once a bar.
Every Elliott Wave Oscillator Indicator input
Core settings
| Setting | What it does | Default |
|---|---|---|
FastEMA |
Fast EMA period. Shorter average, `5`. | 5 |
SlowEMA |
Slow EMA period. Longer average, `35`. | 35 |
Alert settings
| Setting | What it does | Default |
|---|---|---|
EnableAlerts |
Enable alerts. Master switch, `true`. | on |
EnablePopup |
Popup alert. Box in the terminal, `true`. | on |
EnablePushNotify |
Push notification. Buzz on a phone, `false`. | off |
EnableEmail |
Email alert. Mail on a zero cross, `false`. | off |
EnableSound |
Sound alert. Cue on a zero cross, `false`. | off |
SoundFile |
Alert sound file. Which clip plays, `”alert.wav”`. | alert.wav |

Settings that fit your chart
Five against thirty-five is a wide spread, so the gap moves slowly. EURUSD H1 is the reference chart. Zero crossings come a couple of times a week there. On M5 the shading flickers. On H4 each crossing marks a real swing.
When the Elliott Wave Oscillator Indicator fails
Both averages lag, so the gap turns after price does.
Colour flips on the smallest change in width.
Column height means nothing across different symbols.
A zero cross in a range carries no weight.
Copy the compiled Elliott Wave Oscillator Indicator file into your MQL4/Indicators folder, and the MT5 build into MQL5/Indicators, then restart the terminal and drag it onto a chart. The step-by-step guide with screenshots is at how to install MT4 and MT5 indicators.
Background reading on the method behind the Elliott Wave Oscillator Indicator: Introduction To Elliott Wave Theory at StockCharts ChartSchool, Elliott wave principle on Wikipedia.
Download the Elliott Wave Oscillator Indicator for MT4 and MT5
The zip holds the compiled Elliott Wave Oscillator Indicator build for MT4 and MT5, plus a short README. Compiled files only, no source. Enter your email below and the download link arrives in your inbox.
Download this indicator free
Enter your email and the file is yours. You also get the full MT4 and MT5 library.
FAQ
Why are FastEMA and SlowEMA 5 and 35?
That spread is the usual Elliott wave oscillator setting, wide enough that the gap tracks a whole swing rather than a few bars. Narrowing it produces more zero crossings and far more colour changes to read.
What separates EWO BullRise from EWO BullFall?
Only direction. Both sit above zero, so both say the fast average leads. Lime means the gap widened against the previous bar and sea green means it narrowed, which is the earliest sign a move is tiring.
What price do FastEMA and SlowEMA read?
Typical price, the average of high, low and close. That way the whole bar registers rather than only where it finished, which suits an oscillator built to describe the shape of a swing.
Does a BUY arrow need a colour change first?
No. The arrow fires purely on the gap crossing zero. In practice the shading usually turns from crimson to tomato a few bars earlier, which is why the four colours are worth watching.
Are results guaranteed?
No. Trading involves risk. Results are not guaranteed; past performance is not indicative of future results. Use the Elliott Wave Oscillator Indicator as one input. Always backtest before trading live.
Category: this is part of our Oscillators collection. Also, truly, browse more Oscillators for MetaTrader, or explore every MT4 indicator and MT5 indicator on the site.
External references
- For background on this concept, see Introduction To Elliott Wave Theory at StockCharts ChartSchool.
- For broader market context, see Elliott wave principle on Wikipedia.
