Module 3 · Lesson 11 of 13 · Reading price · About 5 minutes
Heikin-Ashi, Renko and Range Bars: Charts That Change the Bars Themselves
On this page
Before you read: Chart Patterns Explained: Flags, Triangles, Double Tops
What you will learn
- How Heikin-Ashi candles are calculated and why they look smoother than regular candles.
- How Renko charts and range bars build bars from price movement instead of time.
- What each chart type hides, and why prices on some of them are not prices that traded.
What is a Heikin-Ashi candle?
If each candle averaged itself with the one before it, what would happen to small reversals?
A Heikin-Ashi candle is built from averages. Its close is the average of the bar’s open, high, low and close. Its open is the midpoint of the previous Heikin-Ashi candle’s open and close. Its high is the highest of the bar’s high and the new open and close, and its low is the lowest of the bar’s low and the new open and close.
Because each candle carries part of the one before, runs of same-colored candles become longer and small pullbacks often disappear. That makes direction easier to see after the fact. It also means the open and close shown are not prices that actually traded, and the latest candle lags the real market.
Try it on a chart
- This chart opens in Heikin-Ashi. Switch the chart type to candles and compare.
- Notice which version changes color more often.
Charts and quotes are TradingView's data, not ours, and may be delayed.
How do Renko charts work?
What if a new bar appeared only when price moved a set amount, no matter how long it took?
A Renko chart draws a “brick” each time price moves a fixed amount, the brick size, beyond the last brick. Many versions need a move of two bricks to draw a brick in the other direction. In the classic construction, elapsed clock time does not determine when a new brick forms, though timestamps still exist. Platforms differ: TradingView builds bricks from the closes (or OHLC) of a chosen time interval and locks a brick into history only when that interval ends. A smaller move may fail to add a completed brick under the declared rule. Construction, projection and display conventions vary, so do not equate absent completed bricks with no underlying trades or universally absent wicks.
What are range bars?
How would a chart look if every bar had exactly the same height?
A range construction groups observations by a declared price-range rule rather than fixed elapsed time. In an ideal sequential-trade illustration with a 2-point target, start 100 and trades 100, 100.50, 101.00, 100.50, 102.00: the first bar reaches H102−L100=2 points at the final trade. The duration depends on when those trades occur. A developing bar can be smaller before its construction condition completes.
Real implementation rules matter: boundary handling, gaps, wicks and historical source resolution are not interchangeable. A later jump from 102 to 105 does not prove trades occurred at 103 or 104. TradingView’s documented Range display can use PHANTOM virtual bars to fill an untraded gap; those graphics are not executions. Higher-timeframe OHLC alone cannot reveal a unique tick-by-tick order within a bar, so reconstructing historical non-time bars from limited data has limits. Check exact platform settings/data instead of treating every finished drawing as one universal range-bar algorithm.
Why does the choice of bar matter?
Could the same day look like a trend on one chart and a range on another?
Each method filters noise differently, so the same session can look smooth on Heikin-Ashi, choppy on one-minute candles and nearly empty on a Renko chart with large bricks. Settings such as brick size change the picture as much as the market does. Patterns found on these charts depend on the settings used to draw them, which is one reason results from a backtest on them should be read with care.
A synthetic chart’s OHLC or virtual intermediate level is not automatically an available trade price. This applies to Heikin-Ashi, Renko and range constructions. TradingView warns that strategy fills on non-standard OHLC can be unrealistic; its documented HA option to use standard OHLC is a bounded exception, not proof of actual execution, queue access or universal support across every non-standard chart. A model must state which real/synthetic input produced each signal and assumed fill.
Bar types diagram
schematic; not a supplied tick-by-tick reconstruction.
virtual/intermediate graphic ≠ observed trade/fill.
Illustrative diagram constructed for teaching. Not real market data.
Different constructions summarize or transform inputs. Panel geometry alone supplies neither a unique intrabar path nor executable prices; the separate text’s 2-point range example supplies its own explicit trade sequence.
What this does not tell you about alternative bars
- Which chart type is better. Each one hides something different.
- Whether a smooth run on a Heikin-Ashi or Renko chart will continue.
- Real fill prices. Heikin-Ashi opens and closes, and some Renko levels, may never have traded.
- Nothing here suggests buying, selling or holding based on any bar type.
Range constructions share historical path/gap and synthetic-fill concerns; they are not exempt because they display high/low values. Preserve raw-data and construction assumptions with any educational comparison. No range setting, brick size or backtest is selected or validated here.
Check yourself
- Why can a Heikin-Ashi close differ from the last traded price? Hint: how is the close calculated?
- Price moves up and down by less than one brick for an hour. What does a Renko chart show? Hint: what does it take to draw a brick?
- Does a range chart necessarily preserve an execution path that a Renko chart lacks? Hint: look inside each bar.
- Which final trade completes the stipulated first 2-point range bar? Does the later 102→105 gap prove 103 traded?
Reflect on your own process
- If you use a non-time chart, does your plan record the brick or range size and the underlying data interval?
- When you test an idea on Heikin-Ashi or Renko bars, which prices does your journal say fills were assumed at?
- How would you check that a price shown on a synthetic chart actually traded?