A time-independent chart of fixed-size price bricks that looks beautifully smooth — largely because it assumes fills at prices that never traded as drawn.
Renko is a chart type, not an indicator: instead of drawing one candle per time interval, it draws a fixed-size 'brick' only when price moves a full brick's distance from the last brick's boundary. Time and volume are absent from the axis — a quiet session may print no bricks for hours while a volatile one prints dozens. The appeal is obvious: Renko filters noise below the brick size and renders trends as clean staircases. The problem, and the reason Renko backtests on TradingView (and most platforms) are unreliable, is that the chart is a reconstruction. Bricks are typically built from the close of a base timeframe, so intrabar moves can be missed or misplaced, and a strategy tested on Renko assumes entries and exits at exact brick boundary prices — prices at which no trade may ever have been available, with no spread, slippage, or intrabar path. Renko is a useful visualization lens for completed price movement; it is not a safe simulation surface. This guide is educational only, not financial advice, and all trading carries risk of loss.
Choose a brick size — a fixed price amount (traditional) or an ATR-derived value. Starting from a reference price, a new up brick is drawn each time price closes a full brick size above the top of the last brick, and a reversal down requires (in the common two-brick convention) price to travel two brick sizes from the extreme before a down brick prints. The mechanics create three honesty problems. First, construction source: most platforms build bricks from closes of an underlying timeframe, so a wick that pierced a level intrabar may produce no brick, and different base timeframes produce different Renko charts from identical data. Second, ATR-based brick sizing recalculates as new data arrives, which can silently redraw historical bricks. Third — the big one for testing — a strategy on a Renko chart is filled at brick boundary prices, but the real market traded through those levels at unknown times with unknown spreads, and often gapped past them. The gap between the brick price and any achievable fill is a systematic, directional error that flatters backtests: the fantasy fill is almost always better than the real one. TradingView's own documentation cautions against strategy testing on non-standard chart types for exactly this reason.
Traditional Renko uses a fixed brick size in price units, chosen per instrument (often near a round fraction of typical daily range). ATR-based Renko commonly defaults to ATR(14), which adapts to volatility but can redraw history as the ATR updates. The construction source (base timeframe, close vs. high/low wicks) matters as much as the size: the same instrument, same brick size, different base timeframe yields visibly different charts.
//@version=6
indicator("Renko Close (Confirmed, Non-Lookahead)", overlay = true)
brickSize = input.float(1.0, "Brick Size (price units)", minval = 0.0001)
// Build a traditional (fixed-size) renko ticker for the chart's symbol.
renkoTicker = ticker.renko(syminfo.tickerid, "Traditional", brickSize)
// [1] + lookahead_off: we only read the last COMPLETED brick's close,
// so this series never peeks at a brick that is still forming.
// Note: security() renko data is itself an approximation built from
// chart-timeframe closes — treat it as visualization, not fills.
renkoClose = request.security(renkoTicker, timeframe.period, close[1], lookahead = barmerge.lookahead_off)
plot(renkoClose, "Last Confirmed Renko Close", color = color.blue, style = plot.style_stepline)
plot(close, "Actual Close", color = color.new(color.gray, 50))Pro tip: A useful honesty check: take any strategy idea that looks clean on Renko and re-express its entry and exit levels on a standard candle chart of the same period, then ask what price you could actually have gotten when each level was touched — including the times price gapped straight through a brick boundary. The difference between the brick price and the achievable price is the part of the Renko backtest that was never real. Use Renko to see; use standard charts to measure. Educational content only, not financial advice; all trading involves risk of loss.
Educational only — not financial advice, not a recommendation to trade. No indicator is predictive; trading involves substantial risk of loss.