Volume Candlesticks [cajole]

cajole Updated   
  • This script lets you create the equivalent of "volume candlesticks" in TradingView.
  • "Volume candlesticks" normally vary their width according to the bar's volume. This script varies COLOUR instead of WIDTH.
  • Bar charts are also supported.
  • Candles/Bars are coloured by their distance from the average volume. You can also add a "huge volume" colour to further highlight the most extremely-high volume bars.
  • Note that volume is extrapolated for incomplete bars by default. So, if the average volume of the past 10 days is 5M shares, and 5M shares trade in the first 10% of today's session, that bar will be coloured as though 50M shares have traded. Set the "Extrapolate" option to 1.0 to disable this.

For this script to work properly, you should set TradingView's default candle/bar colours to be at least 20% transparent. By default, TradingView tends to overlay its own bars on top of indicators.

Nerdy details:

The script works best on a dark background, because it is easier to change the hue of white bars than of black bars. If you find a set of colours that work for white backgrounds, please comment with them!

The geometric mean is used instead of the arithmetic mean, to keep the 'average' from being strongly influenced by spikes. Bars are
then coloured by assuming a normal probability distribution and highlighting outliers. (This means that the first high-volume bars are coloured differently to later ones.)
Release Notes:
Improved colouring of extreme anomalies.

Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in a publication is governed by House Rules. You can favorite it to use it on a chart.


The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.

Want to use this script on a chart?