Bill Williams Zone and Squat Bars. See New Trading Dimensions by Bill Williams, PhD.
Bars are green (green zone) when the Awesome Oscillator and Accelerator/Decelerator are both positive.
Bars are red (red zone) when the Awesome Oscillator and Accelerator/Decelerator are both negative.
Bars are blue when a squat bar is formed, these indicate a battle between bulls and bears and often happen near trend continuation or trend changes.
Caution: Assumes chart is a bar chart - not a candle chart.
Caution: Squat bars are accurate only with official exchange volume data - BATS data will give false squat bars.
Script de código aberto

Dentro do verdadeiro espírito TradingView, o autor deste script publicou ele como um script de código aberto, para que os traders possam compreender e checar ele. Um viva ao autor! Você pode usá-lo gratuitamente, mas a reutilização deste código em uma publicação é regida pelas Regras da Casa. Você pode favoritá-lo para usá-lo em um gráfico.

Aviso legal

As informações e publicações não devem ser e não constituem conselhos ou recomendações financeiras, de investimento, de negociação ou de qualquer outro tipo, fornecidas ou endossadas pela TradingView. Leia mais em Termos de uso.

Quer usar esse script no gráfico?
//Bill Williams Zone and Squat Bars.  See New Trading Dimensions by Bill Williams, PhD.
//Bars are green (green zone) when the Awesome Oscillator and Accelerater/Decelerator are both positive.
//Bars are red (red zone) when the Awesome Oscillator and Accelerater/Decelerator are both negative.
//Bars are blue when a squat bar is formed, these indicate a battle between bulls and bears and often happen near trend continuation or trend changes.
//Caution: Assumes chart is a bar chart - not a candle chart.
//Caution: Squat bars are accurate only with official exchange volume data - BATS data will give false squat bars.
study(title="ZoneBars", overlay = true)
ao = sma(hl2,5) - sma(hl2,34)
ac = ao - sma( ao, 5 )
isGreen() => ao > ao[1] and ac > ac[1]
isRed() => ao < ao[1] and ac < ac[1]
mfi = (high-low)/volume
rm = roc(mfi,1)
rv = roc(volume,1)
isSquat() => rm < rm[1] and rv > rv[1] 
barcolor(isSquat() ? blue : isGreen() ? green : isRed() ? red : black)