Skip to main content

Renko Charts

TL;DR

Renko charts replace time-based bars with price-based "bricks." A new brick only prints when price moves a fixed amount (the "box size"). Chop, time, and small moves disappear. What remains is a clean, stair-step visualization of trend. Favored by trend-followers for filtering noise, but they can give delayed signals and ignore real-time price information inside the last brick.

How Renko works

You set a box size (e.g., 4 points on ES). Starting from some reference price:

  • Price moves up by the box size → a green brick prints
  • Price moves down by the box size → a red brick prints
  • Price moves less than the box size → nothing prints

Time is irrelevant. In a fast move, bricks print rapidly. In a quiet session, hours can pass with no new brick. The x-axis has no consistent meaning.

Reversal rule. Traditional Renko requires price to move 2× the box size against the current trend before printing a counter-color brick. This filters out single-box wiggles.

How to size the boxes

Three common methods:

1. Fixed point size. Choose a number (e.g., 4 points on ES, 20 points on NQ). Simple and consistent across days.

2. ATR-based. Box size = some multiple of ATR. Bricks adapt to current volatility. TradingView's default Renko uses 14-period ATR.

3. Percentage of price. Useful for instruments with varying absolute price levels (crypto, long-term charts).

Typical defaults:

  • ES: 2-4 points
  • NQ: 10-20 points
  • CL: 10-25 cents
  • GC: $2-$5

Tighter box sizes give more bricks (more signals, more noise). Larger box sizes give fewer bricks (less noise, more lag).

How to trade Renko

Trend identification. A string of same-color bricks is a clear trend. Count the bricks — 5+ same-color is a momentum move.

Reversal signals. First counter-color brick after a streak signals possible reversal. Two counter-color bricks confirms.

Breakout entries. Enter on the close of the first brick in the new direction. Stop beyond the most recent opposite-color brick.

Key caveat. Renko bricks close at specific price thresholds, not at specific times. Your alert/entry fires the moment price moves enough — could be any time during a session.

What Renko hides

Time. You can't see how long a move took. Half an hour and three days can look the same on Renko if the price travel is equal.

Current price action. Inside the current (unfinished) brick, price can move freely without printing anything. If you're waiting for a brick flip, price might already be halfway to the next brick without you seeing it.

Volume context. Volume on Renko charts is typically aggregated per brick, which can be misleading because brick durations vary wildly.

Renko in Pine Script / TradingView

Pine Script cannot directly create Renko charts from candlestick data — you'd need to switch your chart type to Renko in TradingView's chart settings. You can write indicators that fire on Renko bricks when the chart is in Renko mode.

For Renko-style signals on regular candlestick charts, many traders use Point-and-Figure style conditions or ATR-based threshold crossings:

//@version=6
indicator("Renko-style Signal on Candles", overlay=true)

boxSize = input.float(4.0, "Box size (points)")

var float lastBrickPrice = na
var int lastBrickDir = 0

if na(lastBrickPrice)
lastBrickPrice := close
lastBrickDir := 0

priceDiff = close - lastBrickPrice
newBrickUp = priceDiff >= boxSize
newBrickDown = priceDiff <= -boxSize

if newBrickUp
lastBrickPrice := lastBrickPrice + boxSize
lastBrickDir := 1
alert("Renko-style bullish brick on " + syminfo.ticker, alert.freq_once_per_bar_close)
if newBrickDown
lastBrickPrice := lastBrickPrice - boxSize
lastBrickDir := -1
alert("Renko-style bearish brick on " + syminfo.ticker, alert.freq_once_per_bar_close)

plot(lastBrickPrice, color=color.orange, linewidth=2, title="Brick level")

This fires an alert whenever price travels one box-size from the last fired brick — a practical Renko signal without the full chart change.

Common mistakes

  • Using too-small box sizes. Renko with a 1-tick box size = the same noise as regular candles. Defeats the purpose.
  • Chasing the "perfect" box size. Any reasonable size works. Stop optimizing.
  • Ignoring the time component entirely. Renko can put you in late on slow-building trends because the brick hasn't printed yet. Know where you are in real time.

Frequently Asked Questions

What's the best box size for Renko on ES?

2-4 points is typical for intraday ES Renko. Tighter (1 point) gives many bricks and more noise; wider (8+ points) smooths too aggressively. If you want an adaptive size, use 0.5 × daily ATR as the box — adjusts to volatility automatically.

Renko vs Heikin-Ashi — which is smoother?

Both smooth chop, but differently. Heikin-Ashi smooths via mathematical averaging across time bars. Renko smooths by removing small moves entirely. Renko is more aggressive — in a tight range day, Renko might produce a single brick while Heikin-Ashi shows dozens of bars.

Can you backtest Renko strategies?

Yes, but carefully. Because Renko time is non-linear, equity curves can look artificially smooth. Always cross-reference results against equivalent time-based backtests, and pay attention to the actual calendar time between fills — not just the brick count.