Chart Projection Indicator for MT4 and MT5

Written by Dominic Walsh · Published · Last updated

Measuring a leg is easy; deciding what to do with the measurement is the work. The chart projection indicator takes the most recent completed leg, applies four ratios to its length, and draws each result as a ray running forward past the last bar so you can see the targets before price reaches them.

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 3: Swing structure, Projection up, Projection down
Alerts popup, push notification, email, sound
Inputs 33

What the Chart Projection Indicator shows

A swing skeleton, two marks and forward rays.

`Swing structure` traces goldenrod as connected sections.

`Projection up` prints spring green using arrow 233.

`Projection down` prints orange red using arrow 234.

`InpLevelColor` `clrDodgerBlue` draws the ratio rays.

`InpShowPanel` adds a summary box in a corner.

  • Swing structure: section, goldenrod, width 1
  • Projection up: arrow, spring green, width 3, arrow code 233
  • Projection down: arrow, orange red, width 3, arrow code 234
chart projection indicator: The swing skeleton with forward rays, EURUSD H1.
The swing skeleton with forward rays, EURUSD H1.

How the plots get their values

Building the skeleton

`InpPivotBars` `3` bars either side define a turn and `InpLookback` `1500` bounds the scan. Joining those turns gives the goldenrod zig-zag the rest of the tool measures from.

Choosing the leg

`InpMode` `PRJ_ABCD` takes the two pivots before the most recent one as the measured leg, then projects from that newest pivot as the anchor.

The four ratios

`InpRatio1` `0.618`, `InpRatio2` `1.000`, `InpRatio3` `1.618` and `InpRatio4` `2.618` each multiply the leg. Setting any of them to zero removes that ray.

How to take it

Goldenrod sections show which turns it picked.

Rays run `InpForwardBars` `30` past the last bar.

The unit ratio repeats the leg exactly.

Ratios above one are extensions of it.

`InpArrowATR` `1.00` scales the mark distance.

`InpMaxPivotText` `6` limits the price tags drawn.

Alert channels in this build: popup, push notification, email and sound, one message per closed bar.

A fresh projection is what reports. `EnableAlerts` decides whether it speaks, with `EnablePopup` already open. The push route, the mail route and the file named by `SoundFile` each stay closed until you want them.

Every Chart Projection Indicator input

Core settings

Setting What it does Default
InpLookback Bars scanned for pivots (100..20000). Bars scanned for turns, `1500`. 1500
InpPivotBars Bars each side of a pivot (1..50). Bars either side defining a turn, `3`. 3
InpAtrPeriod ATR period (arrow offsets). Window behind the mark spacing, `14`. 14
InpMode How the leg is measured. How it picks the measured leg, `PRJ_ABCD`. PRJ_ABCD
InpRatio1 Projection ratio 1 (0 = off). First projection ratio, `0.618`. 0.618
InpRatio2 Projection ratio 2 (0 = off). 1.000
InpRatio3 Projection ratio 3 (0 = off). Third ratio, the common extension, `1.618`. 1.618
InpRatio4 Projection ratio 4 (0 = off). 2.618
InpForwardBars Bars the projection rays run past the last bar. Bars the rays run past the last one, `30`. 30
InpMaxPivotText Pivot price tags kept (object cap, 0..30). Pivot price tags kept, `6`. 6
InpX Panel X offset (px). 14
InpY Panel Y offset (px) – clears the one-click panel. 120

Display settings

Setting What it does Default
InpArrowATR Arrow distance from the pivot (x ATR). Range multiples a mark stands off, `1.00`. 1.00
InpUpColor Up projection (lime test: red 0). spring green
InpDnColor Down projection. orange red
InpLegColor Measured leg line. goldenrod
InpLevelColor Projection rays. dodger blue
InpUpLabel Text beside an up-projection arrow. PROJ UP
InpDnLabel Text beside a down-projection arrow. PROJ DN
InpTextSize Chart text size. 8
InpShowPanel Show the projection panel. on
InpCorner Panel corner (0=UL 1=UR 2=LL 3=LR). 0
InpFontSize Panel font size. 9
InpFont Panel font. Consolas
InpPanelBg Panel background. RGB 10,18,10
InpBorderColor Panel border. slate gray
InpTextColor Panel text. gainsboro

Alert settings

Setting What it does Default
EnableAlerts Whether a projection speaks, `true`. on
EnablePopup (see inputs panel) on
EnablePushNotify (see inputs panel) off
EnableEmail (see inputs panel) off
EnableSound (see inputs panel) off
SoundFile (see inputs panel) alert.wav
chart projection indicator: Inputs panel, the four ratios under the pivot rule.
Inputs panel, the four ratios under the pivot rule.

What to load it on

Fifteen hundred bars of scan with a three-bar pivot rule finds plenty of structure. EURUSD H1 is the reference chart, covering about two months. On M5 the pivots become noise. On H4 the same scan reaches back most of a year.

Where this one struggles

A projection is arithmetic, not a forecast.

Three-bar pivots pick up small turns as well as large ones.

The measured leg changes whenever a new pivot confirms.

Rays, tags and the panel add up to many chart objects.

Copy the compiled Chart Projection 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 Chart Projection Indicator: Fibonacci Extensions at Investopedia, Fibonacci Extension at BabyPips.

Download the Chart Projection Indicator for MT4 and MT5

The zip holds the compiled Chart Projection 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.

  • 1,380+ indicators
  • MT4 and MT5 files
  • No spam, unsubscribe any time

FAQ

What does InpMode PRJ_ABCD measure?

The leg formed by the two pivots preceding the most recent one, which it then projects forward from that newest pivot. Three points define the measurement and the fourth is what the rays are aiming at.

Why does InpRatio3 1.618 get used so often?

It is the classic extension figure from the same sequence the retracement ratios come from. Whether markets respect it is debatable; that many traders draw it is not, which is part of why it appears.

What does InpForwardBars 30 control?

How far each ray runs past the most recent bar. It affects drawing only, so shortening it tidies the chart without changing any of the prices the projections sit at.

Can InpRatio2 and InpRatio4 be switched off?

Yes, set either to zero and that ray disappears. On a busy chart two rays read better than four, and the unit ratio plus the main extension covers most of what people use this for.

Are results guaranteed?

No. Trading involves risk. Results are not guaranteed; past performance is not indicative of future results. Use the Chart Projection Indicator as one input. Always backtest before trading live.

External references

Dominic Walsh - Forex trader and MT4/MT5 developer

About the author

Written by Dominic Walsh, a Forex trader and MT4/MT5 indicator, Expert Advisor and script developer. Every tool on forexmt4systems.com is tested on live charts before release and ships with ready-to-use compiled MT4 (.ex4) and MT5 (.ex5) files. Learn more about the trader and developer behind this site.

How we build, test and correct every tool: Editorial & Testing Policy. Trading carries risk; see the disclaimer.

Leave a Comment