Back to Blog
    Trading Education
    #repainting
    #tradingview
    #indicators

    Do TradingView Indicators Repaint? How to Check in Five Minutes

    NickTradesNickTrades
    September 16, 20265 min read
    Share:
    Do TradingView Indicators Repaint? How to Check in Five Minutes


    Repainting is the reason a screenshot of a chart proves nothing.

    An indicator repaints when the signals you see on historical bars are not the signals that were available at the time those bars formed. The arrows sit exactly where you'd have wanted to buy — because they were placed after the outcome was known. Scroll back and it looks flawless. Trade it forward and it behaves like a different tool entirely.

    This is not always dishonesty. Most repainting is a side effect of how Pine Script evaluates data, and plenty of authors ship it without realising. That's precisely why you should test rather than trust.

    The three things people call "repainting"

    They have different causes and different consequences, and lumping them together is how traders end up arguing past each other.

    1. Intrabar recalculation

    A script evaluates on every price tick of the unclosed candle. A condition becomes true mid-candle, an arrow appears, price moves against it before the close, the condition becomes false, and the arrow vanishes.

    This is the honest version of repainting: nothing is being hidden, the signal was genuinely true for a moment. It becomes a problem when you take the entry and the signal then disappears — you are holding a position the indicator no longer believes in.

    Fix: act only on closed candles. Alerts should be configured as Once Per Bar Close, and a well-built script will also gate its own confirmed signals on the bar close rather than the live tick.

    2. Backward-shifted plots

    Some indicators intentionally draw a marker back in time — pivot points, swing highs and lows, ZigZag lines, many "smart money" structure tools. A swing high cannot be confirmed until a set number of bars have traded to the right of it, so the label appears late but is drawn at the earlier bar.

    The plot is honest about the level. It is dishonest about when you knew. If a tool claims to have called a top, check how many bars of hindsight the confirmation required.

    Fix: none needed — but read the offset. If the swing needs five bars to confirm, you were never able to act five bars earlier, and any evaluation of the tool has to account for that.

    3. Higher-timeframe leakage

    A script pulls data from a higher timeframe without requesting the completed value. On historical bars it receives the finished higher-timeframe candle; in real time it receives a partially formed one. History looks clean and precise, live behaviour flickers.

    Fix: the script must request higher-timeframe series with confirmed-bar settings. As a user, you can't see the code on an invite-only script, so you test the behaviour instead.

    The five-minute repaint test

    You don't need the source code. You need bar replay and a screenshot.

  1. Open the chart, add the indicator, and pick an active market and timeframe you'd actually trade.

  2. Screenshot the last 40 bars exactly as they appear now, with every signal visible.

  3. Switch to Bar Replay and rewind to the start of that window.

  4. Step forward one candle at a time and write down each signal as it appears — the bar it fires on and the direction.

  5. Compare your list to the screenshot.
  6. If a signal in the screenshot never appeared during the step-through, or appeared on a different bar, the indicator repaints. If the list matches, it doesn't — at least on that market and timeframe.

    Run it twice: once on a trending stretch and once on a chop. Some tools only misbehave in one condition.

    The faster live version

    Leave the indicator running on a one-minute chart for an hour and watch signals as they form. Anything that appears mid-candle and is gone by the close is recalculating intrabar. This is the test that catches the most common case.

    Signals to treat as a warning

  7. Marketing that shows only historical charts and never a live stream or replay.

  8. Settings with names like aggressive, repaint mode or show early signals — an early signal is by definition an unconfirmed one.

  9. Perfect tops and bottoms across every screenshot. Real confirmed signals arrive after the move starts, and that lateness is the price of the signal being real.

  10. Any refusal to explain when a signal is finalised.
  11. How we build around it

    SimpleAlgo V5 finalises signals on the candle close. That is a deliberate trade-off, and it's worth being blunt about what it costs you: a confirmed signal is always later than the perfect entry. You give up the wick. What you get back is that the arrow on the chart today is the arrow that was there at the time, and the alert that fires is not withdrawn a minute later.

    We'd rather you verify that than believe it. Add the indicator, run the bar replay test above, and compare your step-through to the chart. That test works on our tools and on everything else in your indicator list — which is the point.


    We publish no win rates, no return figures and no backtest statistics — for our own tools or anyone else's — because no vendor can prove those numbers to you and you should not trade on a number you cannot verify. Everything above is educational. Trading carries a substantial risk of loss. SimpleAlgo is not affiliated with, endorsed by, or sponsored by TradingView. TradingView is a trademark of TradingView, Inc.

    NickTrades

    NickTrades

    Founder of SimpleAlgo and professional trader sharing insights on trading strategies, market analysis, and product updates.

    Related Articles

    Next steps on this topic from the rest of the SimpleAlgo library.