3 bands above and below the vwap , using input of Daily ATR (7-day, 14-day etc.), and another input to determine width of bands (default is . 1618 which is close to .1666 which is one sixth of the range since there are six band-lines drawn, the idea being that the bands roughly contain a typical day's range so that one can easily guage the current action, or potential for further range early in the day, or unlikelihood of further range late in the day. The bands are also convenient for stops, entiries targets etc.

study("VWAP%EnvATR"),overlay = true factor = input(.1618),range = input(2.5),env = range*factor, upperband = vwap+env, lowerband = vwap-env, upperband2 = vwap +(env*2), lowerband2 = vwap-(env*2) upperband3 = vwap +(env*3), lowerband3 = vwap-(env*3) plot(upperband3,style=circles,linewidth=1,color=yellow) plot(lowerband3,style=circles,linewidth=1,color=aqua) plot(upperband2,style=circles,linewidth=1,color=yellow) plot(lowerband2,style=circles,linewidth=1,color=aqua) plot(upperband,style=circles,linewidth=1,color=yellow) plot(lowerband,style=circles,linewidth=1,color=aqua) plot(vwap,style=circles,linewidth=1,color=fuchsia) // The idea is to first find the Daily 7-bar ATR (or any other nr. of days desired) // and then input that into the range, i.e. of the 7-Day ATR is 2.5, input 2.5). The factor input // determines the width of the bars relative to the ATR and since there are six bands, one sixth // of the Daily ATR would be .1666, so I changed that to .1618 to have a nice Fibonacci number. // In any case, the result is that the range of the bands from the outermost on top to the outermost // on the bottom should roughly correlate with the Daily ATR. Ideally these bands could // be rounded to ticks so that they will print out precise price levels for trading but // I am not able to program that in in this language. // For use of vwap, use google etc. I prefer it to moving averages since it is a precise statistical // calculation using volume, and also it remains the same in all time frames, albeit mainly // used for intraday charts. // I also like to use the bands for entries, stops and profit targets - along with basic // price information from the bars. // I wrote essentially the same indicator called VBandPts wherein the input for the bandwidth // is a simple point value number so that you can get the bands to display in ticks or points, // i.e. 3 points, 2.5 pts etc. So in that case you can take the current indicator to see // roughly what the bandwith is, and then use the VwapPts on the chart to get bands // close in value to the raw calcs from this one, but more helpful for trading. // Either way, it's just a simple visual grid overlaid on top of the basic vwap value.

I put in link to a chart of SPY today. The blue arrows are sell entries, the first at the first band, the second at the band above (which was not triggered); then the profit target was at the level of the vwap at the time of entry where I drew green arrow. It was just hit. This sort of thing often happens: unless there is a very strong trend, the market 'likes' to correct back to the vwap at some point because that is the median/middle price area at which the most volume of trades have been made that day. There are more precise 'market profile' indicators which display the exact price with the most or least volume which sometimes are quite different from the vwap, but the vwap is always helpful to pay attention to.

In this case today, after failing to make convincing breakthrough ot upside, albeit making new all-time high, the sell-off went through the vwap area almost to the band below. It will probably now soon rally back up to vwap before either going lower or just treading water for the rest of the day, which will be - if that happens, a narrow range day which didn't nearly fill what is contained within all six bands (only about half). On a daily chart this will look like a very unconvincing new high. But maybe in next 1:15 hrs it will make a big move. If it does, chances are it will be down.