A level that shifts after you have acted on it is worse than no level. The non repaint pivot indicator avoids that by construction: every value it draws comes from the previous bar’s finished high, low and close, so once a level is on the chart it stays exactly where it is.
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: Pivot, R1, S1 |
| Alerts | popup, push notification, email, sound |
| Inputs | 6 |
What you get on the chart
Three levels, all on the price chart.
`Pivot` traces khaki through the middle.
`R1` traces tomato above it.
`S1` traces lawn green below.
Each steps when a new bar completes.
Nothing appears in a pane underneath.
- Pivot: plot, khaki
- R1: plot, tomato
- S1: plot, lawn green

How it all fits together
The centre value
Three prices, averaged. The previous bar’s high plus its low plus its close, divided by three. That figure is the khaki line and everything else builds from it.
The two outer levels
Twice the centre less the previous low gives the upper level. Twice the centre less the previous high gives the lower one, so a wide bar spreads them further apart.
Why nothing moves
Every input is a finished price. The bar supplying them has already closed, so no later tick can change a level that has been drawn.
Reading it correctly
Each level holds for the whole of its bar.
The three step together at each new bar.
A wide previous bar spreads them apart.
A narrow one pulls them close together.
Only one level sits either side of centre.
Warm-up needs two closed bars.
Alert channels in this build: popup, push notification, email and sound, one message per closed bar.
Price reaching one of the three levels is what speaks. `EnableAlerts` decides whether it does and a box already appears on the terminal. The handset, mail delivery and the desktop clip behind `SoundFile` all start closed.
Every Non repaint pivot Indicator input
Alert settings
| Setting | What it does | Default |
|---|---|---|
EnableAlerts |
Whether a level touch speaks at all, `true`. | on |
EnablePopup |
A box appears on the terminal, `true`. | on |
EnablePushNotify |
A handset receives it, `false`. | off |
EnableEmail |
Mail delivers it, `false`. | off |
EnableSound |
A clip runs on the desktop, `false`. | off |
SoundFile |
Which clip runs, `”alert.wav”`. | alert.wav |

Which pair, which timeframe
Because the levels come from one bar rather than one session, the chart you open decides their span. EURUSD H1 is the reference chart, so each set covers an hour. On D1 they behave like classic daily pivots.
What it will not tell you
One bar is a thin basis for a level.
Levels change on every bar rather than each session.
Only three lines, so no outer targets exist.
Nothing about a level says price must respect it.
Copy the compiled Non repaint pivot 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: Pivot Point Strategy.
Background reading on the method behind the Non repaint pivot Indicator: Pivot point (technical analysis) on Wikipedia, Pivot Point at Investopedia.
Download the Non repaint pivot Indicator for MT4 and MT5
The zip holds the compiled Non repaint pivot 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 can the Pivot line never repaint?
Because every price feeding it belongs to a bar that has already closed. The high, the low and the close are all final by the time the calculation runs, so no later tick can move the drawn line.
What sets the distance between R1 and S1?
The previous bar’s own range. Both outer levels are worked out from the centre and one of that bar’s extremes, so a wide bar pushes them apart and a narrow one pulls them in.
Are these the same as daily floor pivots?
The arithmetic is identical, but the input is not. Classic pivots use the previous session, while this uses the previous bar on whatever chart you have open, which makes them step far more often.
Why does R1 have no wider partner above it?
The build draws three lines only. That keeps the chart clean, at the cost of the outer targets a full set would give you for judging how far a move has already travelled.
Are results guaranteed?
No. Trading involves risk. Results are not guaranteed; past performance is not indicative of future results. Use the Non repaint pivot Indicator as one input. Always backtest before trading live.
Category: this is part of our Support and Resistance collection. Browse more Support and Resistance for MetaTrader, or explore every MT4 indicator and MT5 indicator on the site.
External references
- For background on this concept, see Speculation on Wikipedia.
- For broader market context, see the investing glossary at Investor.gov.
