No Repaint Arrow Indicator: Heikin-Ashi Flip Plus ATR

Written by Dominic Walsh · Published · Last updated

The no repaint arrow indicator builds Heikin-Ashi candles internally and watches for a colour flip. A flip alone means little, so two more tests follow. The bar range must clear `AtrMult` times ATR, and the close must break the previous midpoint by a margin. Only then does an arrow print.

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: Buy, Sell
Alerts popup, push notification, email, sound
Inputs 11

What the No repaint arrow Indicator draws on the chart

Buy places a lime arrow below a bar where the internal candles turned green.

Sell places a red arrow above one where they turned red.

Each arrow sits `ArrowOffsetATR` `0.4` of an ATR from the bar, so the gap scales with volatility.

The Heikin-Ashi candles themselves stay internal and never appear on the chart.

  • Buy: arrow, lime, width 2, arrow code 233
  • Sell: arrow, red, width 2, arrow code 234
No repaint arrow indicator on EURUSD H1 with ATR-gated flip arrows
No repaint arrow indicator on EURUSD H1 with ATR-gated flip arrows

How the No repaint arrow Indicator calculates its values

Building the candles in one pass

HaClose takes the average of open, high, low and close. HaOpen takes the midpoint of the previous Heikin-Ashi pair. Both fill forward from the oldest bar, alongside a running ATR, so nothing recalculates the same value twice.

Testing the flip

buySig needs the current internal candle green and the previous one red. `ConfirmBars` `1` then demands that many same-direction candles ending at the signal bar. Raising it asks for a longer run before the mark appears.

Two volatility gates

The bar range must reach `AtrMult` `0.8` times ATR. breakBuf takes a quarter of that figure, and the close must clear the previous bar midpoint by it. Both gates scale with ATR, so a quiet session raises the bar less than a busy one.

How to read the signals

A mark means a colour flip that also carried size and follow-through.

`ConfirmClosed` locks the test to completed bars, which is where the name comes from.

Flips without the ATR gate are common. That is exactly what the gate removes.

Raise `AtrMult` toward 1.2 if the chart still fills with marks.

Alert channels in this build: popup, push notification, email and sound.

Two channels start live here. `EnableAlerts` and `EnablePopup` are true, and so is `EnableSound`, while `EnablePushNotify` and `EnableEmail` are false. `SoundFile` picks the clip. This build has no once-per-bar guard, so the sound channel can repeat inside a bar.

Every No repaint arrow Indicator input

Core settings

Setting What it does Default
AtrPeriod ATR period. Bars in the running ATR, default `14`. 14
AtrMult Min bar range as ATR multiple. Minimum bar range in ATR units, default `0.8`. 0.8
ConfirmBars Same-direction HA bars required. Same-direction internal candles required, default `1`. 1
ConfirmClosed Lock signals on bar close (no-repaint). Locks signals to the closed bar, default `true`. on

Display settings

Setting What it does Default
ArrowOffsetATR Arrow offset (ATR fraction). Arrow distance from the bar in ATR units, default `0.4`. 0.4

Alert settings

Setting What it does Default
EnableAlerts Master switch for the signal alerts, default `true`. on
EnablePopup Terminal dialog on a new signal, default `true`. on
EnablePushNotify Mobile push for a new signal, default `false`. off
EnableEmail Mail delivery for a new signal, default `false`. off
EnableSound Sound playback on a new signal, default `true`. on
SoundFile Clip the sound channel plays, default `alert.wav`. alert.wav
No repaint arrow indicator inputs: AtrPeriod, AtrMult, ConfirmBars, ConfirmClosed
No repaint arrow indicator inputs: AtrPeriod, AtrMult, ConfirmBars, ConfirmClosed

Settings that fit your chart

Heikin-Ashi smoothing shows its value where price trends in runs. EURUSD H1 is the reference chart, and `AtrPeriod` at `14` covers most of a session there. On M5 flips arrive often and the ATR gate does most of the work. On H4 the marks turn rare and each covers a real leg.

When the No repaint arrow Indicator fails

Heikin-Ashi candles average two bars together, so a flip lags the real candle that caused it.

The internal candles never show on the chart, which makes a mark hard to check by eye.

`AtrMult` `0.8` is a modest gate. A busy session clears it easily.

Copy the compiled No repaint arrow 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.

Download the No repaint arrow Indicator for MT4 and MT5

The zip holds the compiled No repaint arrow 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 AtrMult at 0.8 require of a bar?

A range of at least 80 percent of the current ATR. A tiny indecision bar cannot flip the signal, however the internal candles look. Raise it toward 1.2 for a much stricter gate that keeps only the larger flips.

Why measure ArrowOffsetATR in ATR units?

So the gap scales with the market. A fixed point offset that looks right on a quiet EURUSD chart disappears behind the candle on gold. At `0.4` the arrow always sits about four tenths of a typical bar away from the high or low.

How many candles does ConfirmBars require?

One internal candle in the signal direction, ending at the marked bar. Raising it to 2 or 3 asks for a short run before the mark appears. That produces fewer marks and each one lands further into the move.

How does ConfirmClosed earn the no-repaint claim?

By keeping every test on completed bars. With it true the forming bar is never evaluated, so an arrow that has printed cannot be withdrawn by the next tick. That is the only sense in which any indicator can promise this.

Are results guaranteed?

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

Category: this is part of our Signal and Forecast collection. Browse more Signal and Forecast for MetaTrader, or explore every MT4 indicator and MT5 indicator on the site.

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