This indicator generalizes the by implementing many different equations to calculate the beyond the standard deviation and , and then plot the %B (where the current price falls inside the ), Bandwidth (size of the ) as well as the itself and a reproduction of the OHLC price candles in a separate pane.
Whereas other indicators often just change the basis but not the stdev calculation, the correct way to change the basis is to also change it inside the stdev calculation.
Advanced features such as temporal discounting ( ie , newer bars can have more weights), median absolute deviation and multiple sigma bands (eg, 3-sigma) are available.
Up to 3 different can be displayed, and the background can be highlighted when price is overbought/oversold (beyond the of choice). Tip: BB3 , which is the with standard deviation of 3, which represents 99% of observed values in the lookback period, is a good choice to highlight overbought/oversold conditions.
Three "Sentiment Bars" are provided to see at a glance the sentiments on the price action relative to the as reflected by the %B value.
- Use the %B as a measure of sentiment: if > 0.5, if < 0.5. You can use the Sentiment Bars at the bottom for a quick reference: aqua if , red if , gray if undefined (too close to the middle line).
- Use the bandwidth as a measure of volatility: higher is more volatile, lower is less.
- When overbought, it can be a good time to sell/short. Use a higher Multiplier such as 3 or more to reduce false positives.
- When oversold, it can be a good time to buy/long. Use a higher Multiplier such as 3 or more to reduce false positives.
- Consider setting a much tighter lookback period of 4 as recommended in backtested works (https://en.wikipedia.org/wiki/Rising_mov...), use zlma instead of , and finally set a higher timeframe for the than the one you are currently studying. Then, the can help in detecting overbought and oversold regions (price going "out of bands").
Note that I tried to automate the setting of a higher timeframe, but for some reason the output is different when I manually do it using request.security() than when it's in indicator(timeframe=""). If someone has any suggestion as to why it happens, please let me know! (You can try it for yourself by uncommenting the auto_timeframe parameter line).
- Documentation of an internal function. No new feature in this release.
* Changed default bollinger band deviation for background highlight from 3-sigma down to 2-sigma. New instructions:
The background is highlighted when the current value is outside of the specified bollinger band, to the upside or downside. When selecting BB2 (2-sigma Bollinger Band, which includes 95% of the price deviations), the background highlight seems to correlate with price action momentum, and when the background disappears, the momentum appears to be exhausted. One strategy can be to enter a position when the background highlight disappears. This appears to work in all timeframes: from weekly down to 4h.
* Clarify background highlight tooltip.
* Minor comment update.