Quantzee
Back to Blog
TradingViewNon-RepaintingIndicators

How to Test Any TradingView Indicator for Repainting in 5 Minutes

By Rajeev Gupta · June 17, 2026 · 8 min read ·
A dark trading screen with a teal candlestick trend line and a magnifying glass inspecting a single candle, illustrating how to test a TradingView indicator for repainting

A repainting indicator is one that quietly rewrites its own history. The arrow that looked like a clean buy at 9:30 is gone by the close, replaced by a signal that conveniently appears wherever price already went. If you have ever backtested a script that looked flawless and then bled money live, repainting is usually the culprit. The good news: you do not need to read a line of Pine Script to catch one. This guide gives you a three-step, five-minute test you can run on any TradingView indicator, and points you to the best trading indicators that hold their signals honestly once the candle closes.

The distinction matters more than most beginners realise. A 2026 backtest by NewTrading.io ran the most popular indicators across nearly 100 years of Dow Jones data; a separate study by Liberated Stock Trader tested signals over 10,400 years of combined exchange data. Both reached the same uncomfortable conclusion — the headline win rate of an indicator collapses the moment you stop letting it cheat with hindsight.

What “repainting” really means

Repainting happens when an indicator changes the value or position of a past signal after new data arrives. There are three common flavours, and only one of them is genuinely dishonest.

  • Live-bar repainting. The indicator updates on every tick while the current candle is still forming. This is normal — the value is provisional until the bar closes. It only becomes a problem if you act on it before close.
  • Historical repainting. The script uses functions that look into the future relative to the bar being calculated, so old signals shift permanently. This is the dangerous kind.
  • Backtest repainting. The signal stays put on the chart but the strategy fills orders at impossible prices. Your equity curve is fiction.

In Pine Script the usual offenders are request.security() calls that pull a higher timeframe without the correct lookahead and barmerge settings, and any logic that references high, low or close of an unconfirmed bar. A non-repainting indicator confirms its signal only on a closed bar and never moves it afterwards. If you want the full breakdown of the concept and the indicators built around it, our non-repainting TradingView indicators guide is the deeper reference.

The 3-step, 5-minute repainting test

You do not need to read the source code to catch a repainter. Run these three checks in order.

1. The bar-replay test

Open TradingView’s Bar Replay, rewind 50 candles, and step forward one bar at a time. Note exactly where each signal prints. Then remove replay and compare. If a single arrow has moved, jumped a bar, or vanished, the indicator repaints. This is the single most revealing check, because it reproduces what you would actually have seen in real time.

2. The refresh test

Screenshot the last 20 signals, reload the chart, and screenshot again. Identical positions mean the indicator is stable. If signals shift on a simple reload, the script is recalculating history — a clear repainting tell.

3. The alert test

Set an alert on “Once Per Bar Close” rather than “Once Per Bar”. If the indicator only fires reliably on the tick-based option, it is leaning on live-bar data and will mislead you in real trading. A genuinely non-repainting tool behaves identically on bar close.

This five-minute routine is the most valuable habit a new TradingView user can build. It is worth more than any indicator you will ever buy. For more on choosing a signal tool that survives this kind of scrutiny, see our guide on what to look for in a TradingView signal tool.

The best trading indicators that don’t repaint

Most classic indicators are non-repainting by design when used on a single timeframe and read on bar close. The problems start when people bolt them onto multi-timeframe wrappers or “predictive” smoothing. Here are the workhorses, with the evidence behind them.

1. RSI (Relative Strength Index)

RSI is calculated purely from closed prices, so it never repaints on its own timeframe. In the NewTrading.io 100-year study, RSI and Bollinger Bands were ranked the two most reliable indicators by win rate. The standard 14-period setting is a sensible default; for intraday index work, many traders shorten it to 7 to react faster, accepting more noise.

2. Moving Averages (SMA, EMA, WMA)

A moving average of closed prices cannot repaint. Liberated Stock Trader’s testing put the Weighted and Hull moving averages among the strongest day-trading tools, each producing winning trades at least 43% of the time across their dataset. The EMA reacts faster than the SMA because it weights recent candles more heavily — useful when lag is expensive, but more prone to whipsaws in chop.

3. VWAP (Volume Weighted Average Price)

The session VWAP resets each day and accumulates from confirmed volume, so the live value drifts during the session but never rewrites yesterday’s prints. It was one of the top performers in Liberated Stock Trader’s day-trading research and remains the reference line institutional desks anchor around.

4. MACD

Built from two EMAs and a signal line, MACD is non-repainting on bar close. Its crossovers lag, which is the trade-off for stability. Read it for momentum confirmation rather than precise entries.

5. Bollinger Bands and ATR

Both are volatility measures derived from closed data. Bollinger Bands tied for most reliable in the NewTrading study; ATR does not generate buy/sell signals itself but is the honest way to size stops because it never looks ahead.

6. Supertrend and Donchian Channels

Supertrend, built on ATR, flips state only on a confirmed close — a genuinely non-repainting trend filter. Donchian Channels plot the highest high and lowest low over a fixed lookback and were singled out for consistency in the NewTrading data. Both are clean because they describe what price has done, not what it might do.

One honourable caution: the Ichimoku Cloud is plotted 26 bars into the future, which looks like repainting but is actually a fixed forward displacement — the historical cloud does not move. It scored as a high-performing indicator in the 100-year test, so do not dismiss it; just understand what you are reading.

Why non-repainting matters more for algo traders

If you are eyeballing charts, a repainting indicator wastes your time. If you are automating, it destroys capital. A backtest that fills orders on repainted signals will show a beautiful equity curve that is mathematically impossible to reproduce, because the entries depended on knowing the future. This is why every script we publish at Quantzee is built to confirm on bar close and is validated against live forward data before it ships. You can see how a maintained, non-repainting suite is structured on the full Quantzee indicators page, and if a term here is new, the Quantzee trading glossary covers the fundamentals first. For a neutral, vendor-independent reference, TradingView’s own explanation of repainting is worth bookmarking.

A final word on expectations. No indicator is a crystal ball, and the win rates quoted above come from broad historical studies, not from any individual account. Quantzee builds analytical software and educational tools — not investment advice. Always test any indicator on your own market and timeframe, and make your own trading decisions.

Educational and informational only. Quantzee provides analytical software, not investment advice. Indicators do not guarantee returns — always do your own research and manage your own risk.

Frequently Asked Questions

Are all TradingView indicators repainting?
No. Most standard built-in indicators — RSI, MACD, moving averages, Bollinger Bands, VWAP — are non-repainting when used on a single timeframe and read on bar close. Repainting is usually introduced by multi-timeframe wrappers, "predictive" scripts, or improper request.security() calls in custom Pine Script.
How do I check if an indicator repaints?
Use TradingView's Bar Replay: rewind 50 candles, step forward one bar at a time, and note where each signal prints. Turn replay off and compare. If any signal has moved or disappeared, it repaints. Also set alerts to "Once Per Bar Close" rather than "Once Per Bar".
What are the best non-repainting indicators for day trading?
For intraday work the most dependable are VWAP, RSI, a fast EMA or Weighted Moving Average, and ATR for stop sizing. Liberated Stock Trader's testing across 10,400 years of data found VWAP, the Weighted Moving Average and the Hull Moving Average among the strongest day-trading tools, each winning at least 43% of trades.
Why does my indicator look different during the live candle?
That is live-bar updating, and it is normal. The indicator value is provisional while the current candle is still forming and only becomes final when the bar closes. It is not repainting — just wait for bar close before acting, or set alerts to fire on close.
Does the Ichimoku Cloud repaint?
No. The cloud is plotted 26 bars into the future as a fixed forward displacement, which looks like repainting but is not — the historical cloud values never move. It actually ranked as a high-performing indicator in NewTrading.io's 100-year Dow Jones study.
Why do non-repainting indicators matter for backtesting?
A repainting indicator lets a backtest fill orders on signals that only existed because the code peeked at future data. The resulting equity curve is impossible to reproduce live. Non-repainting signals confirm on closed bars, so what you backtest is what you can actually trade.
Can I make a repainting indicator non-repainting?
Often yes. In Pine Script, set request.security() with lookahead=barmerge.lookahead_off and reference the prior confirmed bar, and gate all signal logic behind barstate.isconfirmed. This forces every signal to lock in only after the bar closes.
Is a single best indicator enough to trade with?
No single indicator works in every market condition. The studies cited here recommend combining a trend tool (such as a moving average or Supertrend) with a momentum or volatility tool (such as RSI or Bollinger Bands), then confirming on volume with VWAP. Test the combination on your own instrument before committing capital.

FAQ

Frequently Asked Questions

No. Most standard built-in indicators — RSI, MACD, moving averages, Bollinger Bands, VWAP — are non-repainting when used on a single timeframe and read on bar close. Repainting is usually introduced by multi-timeframe wrappers, "predictive" scripts, or improper request.security() calls in custom Pine Script.

Put It Into Practice

Try Quantzee's AI-Powered Indicators

Non-repainting signals, real-time alerts, all markets. 14-day money-back guarantee.

Subscribe Now