One wave in the count gets more attention than the rest, and this tool aims at it directly. The elliot fibonacci indicator finds a three-pivot impulse, measures how deeply the pullback retraced the first leg, and projects the two common extensions from the point that pullback ended.
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 | Main price chart |
| Plots | 2: Wave3 Buy, Wave3 Sell |
| Alerts | popup |
| Inputs | 10 |
A look at the plots
Two marks on price plus drawn levels.
`Wave3 Buy` prints deep sky blue using arrow 233.
`Wave3 Sell` prints orange red using arrow 234.
`InpFibColor` `clrGold` is the tint on the pull-back levels.
`InpExtColor` `clrMagenta` is the tint on the two far levels.
Every object name starts with `InpObjPrefix` `”EFI_”`.
- Wave3 Buy: arrow, deep sky blue, width 2, arrow code 233
- Wave3 Sell: arrow, orange red, width 2, arrow code 234

Following the source
Three pivots
`InpFractalLen` `3` bars either side define each one. Three consecutive alternating pivots give a leg and the pullback that followed it, which is all the measurement needs.
The size filter
`InpMinLegPct` `0.0015` demands the leg be at least that fraction of price. Roughly fifteen pips on a major pair, which discards the legs too small to measure usefully.
How deep it pulled back
The pullback divided by the leg gives the retracement. That ratio decides whether the shape qualifies, and the projections then run forward from the pullback’s end.
Reading it on a live chart
Gold lines mark where price pulled back to.
Magenta lines mark the two far targets.
`InpDrawProjection` turns that second pair on or off.
`InpLookback` `220` bounds how far back it scans.
Every pivot confirms three bars late.
A mark lands where the shape finished.
Alert channels in this build: popup, one message per closed bar.
`InpAlertOnNew` `true` raises a terminal message when a fresh shape completes on a closed bar. That terminal message is the only destination this build offers, since no handset, mail or audio route exists in its panel.
Every Elliot Fibonacci Indicator input
Core settings
| Setting | What it does | Default |
|---|---|---|
InpFractalLen |
Fractal length (bars each side). Bars either side defining a pivot, `3`. | 3 |
InpLookback |
Bars to scan back for impulse legs. Bars scanned for impulse legs, `220`. | 220 |
InpMinLegPct |
Min Wave1 leg size (% of price). Smallest leg accepted, as a fraction of price, `0.0015`. | 0.0015 |
InpObjPrefix |
Prefix on every object name, `”EFI_”`. | EFI_ |
Display settings
| Setting | What it does | Default |
|---|---|---|
InpDrawFibLines |
Draw Fib retracements. Draw the retracement levels, `true`. | on |
InpDrawProjection |
Draw 1.272 / 1.618 projections. Draw the two far levels, `true`. | on |
InpFibColor |
Colour of the retracements, `clrGold`. | gold |
InpExtColor |
Tint on the two far levels, `clrMagenta`. | magenta |
InpFibWidth |
How heavy those lines draw, `1`. | 1 |
Alert settings
| Setting | What it does | Default |
|---|---|---|
InpAlertOnNew |
Speak when a new shape completes, `true`. | on |

Matching it to your chart
Two hundred and twenty bars has to contain three clean pivots for anything to draw. EURUSD H1 is the reference chart, covering about nine days. On M5 the pivots are noise. On H4 a single shape can span two months.
What it misses
Three pivots can be found in most price histories.
The wave count here is a shape, not a full count.
A projected level is a price, not a promise.
Every pivot confirms three bars after the fact.
Copy the compiled Elliot Fibonacci 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.
Related on forexmt4systems.com: Fibonacci Retracement Strategy.
Background reading on the method behind the Elliot Fibonacci Indicator: Elliott wave principle on Wikipedia, Elliott Wave Theory at Investopedia.
Download the Elliot Fibonacci Indicator for MT4 and MT5
The zip holds the compiled Elliot Fibonacci 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
What three pivots does InpFractalLen 3 need?
Three alternating turns in a row, each confirmed by three bars on either side. The first two give the impulse leg and the third marks where the pullback ended, which is the anchor for everything projected.
What does InpMinLegPct 0.0015 rule out?
Legs smaller than about fifteen pips on a major pair. Measuring a retracement of a tiny move produces a ratio that means nothing, so the filter keeps the tool aimed at swings with some size.
Which two lines does InpDrawProjection add?
The 1.272 and 1.618 extensions of the measured leg, both running from the point the pull back ended. Those two are the figures most often watched when a third wave is due.
Where does a Wave3 Buy arrow land?
On the bar where the three-pivot shape completed and passed the size filter. It marks the shape being recognised rather than the start of the move, which by then is already under way.
Are results guaranteed?
No. Trading involves risk. Results are not guaranteed; past performance is not indicative of future results. Use the Elliot Fibonacci 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
- The core method is documented in Fibonacci retracement on Wikipedia.
- Additional market context is at Fibonacci Fans at StockCharts ChartSchool.
