Renko and Heikin Ashi: Why Their Backtests Are Not Real

9 min readQuantParadox research

Nothing in retail trading produces a cleaner backtest than a Heikin Ashi trend rule. The chart looks like the market with the noise removed. What has actually been removed is the part where the trade happens.

The short answer

Renko and Heikin Ashi charts transform price into a derived series, and backtesting on that series produces results that cannot be executed because entries are placed at prices the transformed chart shows and the real market never traded at.

What do these chart types do to price?

Heikin Ashi replaces each candle's open and close with averages that include the previous candle's values, and Renko discards time entirely, drawing a brick only when price has moved a fixed distance.

A Heikin Ashi close is the average of the real open, high, low and close; its open is the average of the previous HA candle's open and close. Neither is a price at which anything traded. They are smoothed statistics that look like candles.

Renko goes further by removing the time axis. A brick appears when price has travelled the brick size, which may take a minute or a week, and the brick's high and low are the brick boundaries rather than the extremes price actually reached.

Both are legitimate visualisation tools. The trouble begins when a backtester treats their output as a price series it can transact on.

Why can't you trade the backtested result?

Because the entry and exit prices in the test are values from the derived series, and the market never offered those prices — so no order could have been filled there.

A strategy entering at the Heikin Ashi close is entering at an average of four numbers. The real close was somewhere else, often meaningfully so during exactly the fast moves the smoothing is prized for handling. The backtest books a fill at a price that did not exist.

Renko is worse in a specific way: a brick completes only after price has moved through it, so acting on brick completion means acting at a price already past the brick's boundary. Many Renko backtests enter at the brick's edge, which is by definition a price that has already been left behind.

The size of the error is not random. It is systematically favourable, because the derived value sits behind the move rather than ahead of it — which is why these backtests are not merely noisy but consistently flattering.

Why do the equity curves look so smooth?

Smoothing removes the reversals that would have stopped the strategy out, so a trend rule on a smoothed series holds through moves that would have ended the real trade.

Heikin Ashi stays the same colour through minor counter-moves by construction — that is what the averaging is for. A rule exiting on a colour change therefore holds through pullbacks that a real stop would not have survived, and the backtest records a long clean winner where reality would have recorded a stop-out and a re-entry.

Renko removes the counter-moves that do not complete a brick, which is most of them. Price can travel most of a brick's distance against the position, repeatedly, and none of it appears on the chart or in the test.

The result is a backtest of a market with the whipsaws removed. That market is much easier to trade than the real one, and it is the one being measured.

Is there an honest way to use them?

Yes: generate signals on the derived chart, and execute and account for every trade on the REAL price series with real timestamps.

That separation is the entire fix. The Heikin Ashi colour change is a signal, and it occurs at a specific moment on the real clock; from that moment the trade is entered at the real market price, stopped at real levels, and marked against real bars. The smoothing is allowed to inform the decision and never to price the fill.

For Renko the same rule applies with an extra requirement, because bricks have no time axis: record the real timestamp at which each brick completed, then execute at the real price available at that timestamp. Any backtest that walks a Renko series without reference to the clock cannot model cost, slippage or holding period at all.

Done this way, the results usually drop substantially — and what remains is a number that could have been earned. That drop is the measurement, not a disappointment.

Questions people actually ask

Is Heikin Ashi useless then?

As a visual aid for reading trend persistence it is genuinely useful, and many traders find it easier to hold a position while watching one. The problem is not the chart; it is backtesting transactions on it. Use it to generate the signal and account for the trade on real prices, and both properties are preserved.

Why do Renko backtests show such high win rates?

Because a brick only prints after price has moved the required distance, a strategy entering on brick completion is entering after the move it is being credited with. Combined with counter-moves smaller than a brick being invisible, this produces a series in which trends look cleaner and reversals look rarer than they were. The win rate is a property of the transformation.

Do the same problems apply to range bars and tick charts?

Range bars share Renko's core issue — no time axis, and bars that complete only after the move has happened — so the same discipline applies: record real timestamps and execute on real prices. Tick charts keep real prices and change only the sampling, so they are considerably safer, though a strategy tested on them still needs its costs modelled per trade rather than per bar.

The only backtest that settles it is yours.

Build a strategy from a sentence, paste your own Python, or import your live trade history and have it graded. Five full backtests free, no card, and we'll tell you plainly when the result is indistinguishable from luck.

We publish research and tooling, not trading advice, and we make no claim about future returns. Everything above describes how to test an idea — not a reason to trade one.