Buscar en scripts para "bollingerband"
Single SMA cross with BB StrategyThis is a light weight code and strategy. I tuned it for NZDUSD on a 15 min chart. NZDUSD is a slow moving low volatility pair. A single SMA cross over + crossing a .9 BB + the single SMA is increasing. I will be manually trading this with alerts and once I have LUA down I will set it free with FXCM and see what it can do on it own.
** I use BB as a means of seeing momentum to continue gaining not as a reversal signal.
Please contact me with issues/questions
Bollinger Band and Moving Average v0.1 by JustUncleLThis is another Bollinger Band strategy+indicator in my series of Bollinger based setups. This one is seems to work best with 5min charts and 20 to 30min expiry. The strategy follows variation of a Bollinger band + Moving Averages
reversal strategy, it uses the 2 moving averages mainly to determine market direction.
%BsAn indicator with 10 configurable %B lines for identifying trends, overbought and oversold conditions, and reversal points. %B is a linear representation of a securities relationship to the Upper and Lower Bollinger Bands. The best opportunities arise when a security is oversold in a bullish trend and overbought in a bearish trend. The longer %B trend-lines in this indicator are very useful for major reversals. They can be used to indicate the high or low of the day on a 1-minute chart or show a multi-year reversal point.
%B = (Current Price - Lower Band) / (Upper Band - Lower Band)
Kay_BBandsV3This is the 3rd version of Kay_BBands.
When +DI (Directional Index ) is above -DI , then Upper band will be visible and vice-versa.
This is when the ADX is above the threshold. 28 is the default in this version. I found its more appealing in 5M time frame.
BLUE - ADX under 10
GREEN - Uptrend, ADX over 10
RED - Downtrend, ADX over 10
Use it with another band with setting 20, 0.6 deviation. Prices keeping above or below the 2nd bands upper or lower bounds shows trending conditions.
I didn't know how to update the old script so published it again.
Changes - :
1) Updated default settings for the indicator
2) ADX setting are now DI (28), ADX (10), adx level to check is 10.
3) IMPORTANT one - When DI is up/down, lower/upper band will also have color (more visible that way.)
Play around the settings.. It really eliminates extra indicator checking visually... Please like if you think idea is good.
Kay_BBands v2This is the second version of Kay_BBands. But this is infused with ADX.
When +DI (Directional Index) is above -DI, then Upper band will be visible and vice-versa.
This is when the ADX is above the threshold. 20 is the default but can be set to 25.
When the ADX is below the specified threshold, both bands gets visible, showing no trending conditions.
Use it with another band with setting 20/21, 0.6 deviation. Prices keeping above or below the 2nd bands upper or lower bounds shows trending conditions.
[JR] Multi Bollinger Heat BandsBollinger Bands, with incremented additional outer bands.
Set as you would normally, but with the addition of an incremental value for the added outer bands.
Defaults with Length 20, base multiplier of 2.0, and an Increment value of 0.5 for additional outer bands at 2.5 and 3.0. Adjust values to suite your needs.
All lines and zones have colour and formatting options available - because why not eh?
Fibonnacci Bollinger BandsThis Bollinger Bands with additional Fib levels. Swing Trader Edition :) .. thats all really
Bollinger Band TouchThis script simply colors the background when price hits or exceeds the bollinger bands. Just a nice visual cue.
[RS]Multiple Bollinger Bands Candles V0EXPERIMENTAL: using multiple length bollinger bands to create a better reading of ?price/range? strength?.
• calculates 2 candle plots for upper and lower bands, were the high and low are the extremes of the bands,
open is the previous close of the band and close is the extreme midline.
CapnsBandsV2Here is the 2nd version of CapnsBandsV2 for Mateys... Remind you this a trend indicator NOT a BUY and SELL. Its up to you how you read it. Defaults for Smaller TF like 15Mnts. Enjoy it. :)
BL_MTF River Strategy with TP/SL by Beller
Anyone remember the "Frogger" game where a frog must pass a river ?
This strategy is like a game.
Immagine you that the cyan lines are a River, any time the price can cross up or down this river, you must buy or sell only when the bar are dry..
BUY at highest price of the first bar that is completely dry over the river
SELL at the lowest price of the first bar that is completely dry under the river
Stoploss is placed at the river bands, take profit is placed at 1:1 and 1:2 ratio, a risk money management must be applied.
This strategy can be used with multiple time frame, i'm testing it in 15min,180m and daily base applyed to EURJPY.
It's a game but can produce some money... ;-)
Indicator: MFI or RSI enclosed by Bollinger BandsIndicator allows choosing either MFI or RSI and draws a BB over it to identify oversold / overbought conditions.
Oversold/Overbought breaches are highlighted using different colors for easy identification. Has helped me a lot during sudden pumps to identify the tops, hope you find a use for this.
Trading Strategy based on BB/KC squeeze**** [Edit: New version (v02) posted, see the comments section for the code *****
Simple strategy. You only consider taking a squeeze play when both the upper and lower Bollinger Bands go inside the Keltner Channel. When the Bollinger Bands (BOTH lines) start to come out of the Keltner Channel, the squeeze has been released and a move is about to take place.
I have added more support indicators -- I highlight the bullish / bearish KC breaches (using GREEN/RED crosses) and a SAR to see where price action is trending.
Appreciate any feedback. Enjoy!
Color codes for v02:
----------------------------
When both the upper and lower Bollinger Bands go inside the Keltner Channel, the squeeze is on and is highlighted in RED.
When the Bollinger Bands (BOTH lines) start to come out of the Keltner Channel, the squeeze has been released and is highlighted in GREEN.
When one of the Bollinger Bands is out of Keltner Channel, no highlighting is done (this means, the background color shows up, so don't get confused if you have RED/GREEN in your chart's bground :))
Color codes for v01:
----------------------------
When both the upper and lower Bollinger Bands go inside the Keltner Channel, the squeeze is on and is highlighted in YELLOW.
When the Bollinger Bands (BOTH lines) start to come out of the Keltner Channel, the squeeze has been released and is highlighted in BLUE.
VolatilityIndicatorsLibrary "VolatilityIndicators"
This is a library of Volatility Indicators .
It aims to facilitate the grouping of this category of indicators, and also offer the customized supply of
the parameters and sources, not being restricted to just the closing price.
@Thanks and credits:
1. Dynamic Zones: Leo Zamansky, Ph.D., and David Stendahl
2. Deviation: Karl Pearson (code by TradingView)
3. Variance: Ronald Fisher (code by TradingView)
4. Z-score: Veronique Valcu (code by HPotter)
5. Standard deviation: Ronald Fisher (code by TradingView)
6. ATR (Average True Range): J. Welles Wilder (code by TradingView)
7. ATRP (Average True Range Percent): millerrh
8. Historical Volatility: HPotter
9. Min-Max Scale Normalization: gorx1
10. Mean Normalization: gorx1
11. Standardization: gorx1
12. Scaling to unit length: gorx1
13. LS Volatility Index: Alexandre Wolwacz (Stormer), Fabrício Lorenz, Fábio Figueiredo (Vlad) (code by me)
14. Bollinger Bands: John Bollinger (code by TradingView)
15. Bollinger Bands %: John Bollinger (code by TradingView)
16. Bollinger Bands Width: John Bollinger (code by TradingView)
dev(source, length, anotherSource)
Deviation. Measure the difference between a source in relation to another source
Parameters:
source (float)
length (simple int) : (int) Sequential period to calculate the deviation
anotherSource (float) : (float) Source to compare
Returns: (float) Bollinger Bands Width
variance(src, mean, length, biased, degreesOfFreedom)
Variance. A statistical measurement of the spread between numbers in a data set. More specifically,
variance measures how far each number in the set is from the mean (average), and thus from every other number in the set.
Variance is often depicted by this symbol: σ2. It is used by both analysts and traders to determine volatility and market security.
Parameters:
src (float) : (float) Source to calculate variance
mean (float) : (float) Mean (Moving average)
length (simple int) : (int) The sequential period to calcule the variance (number of values in data set)
biased (simple bool) : (bool) Defines the type of standard deviation. If true, uses biased sample variance (n),
degreesOfFreedom (simple int) : (int) Degrees of freedom. The number of values in the final calculation of a statistic that are free to vary.
Default value is n-1, where n here is length. Only applies when biased parameter is defined as true.
Returns: (float) Standard deviation
stDev(src, length, mean, biased, degreesOfFreedom)
Measure the Standard deviation from a source in relation to it's moving average.
In this implementation, you pass the average as a parameter, allowing a more personalized calculation.
Parameters:
src (float) : (float) Source to calculate standard deviation
length (simple int) : (int) The sequential period to calcule the standard deviation
mean (float) : (float) Moving average.
biased (simple bool) : (bool) Defines the type of standard deviation. If true, uses biased sample variance (n),
else uses unbiased sample variance (n-1 or another value, as long as it is in the range between 1 and n-1), where n=length.
degreesOfFreedom (simple int) : (int) Degrees of freedom. The number of values in the final calculation of a statistic that are free to vary.
Default value is n-1, where n here is length.
Returns: (float) Standard deviation
zscore(src, mean, length, biased, degreesOfFreedom)
Z-Score. A z-score is a statistical measurement that indicates how many standard deviations a data point is from
the mean of a data set. It is also known as a standard score. The formula for calculating a z-score is (x - μ) / σ,
where x is the individual data point, μ is the mean of the data set, and σ is the standard deviation of the data set.
Z-scores are useful in identifying outliers or extreme values in a data set. A positive z-score indicates that the
data point is above the mean, while a negative z-score indicates that the data point is below the mean. A z-score of
0 indicates that the data point is equal to the mean.
Z-scores are often used in hypothesis testing and determining confidence intervals. They can also be used to compare
data sets with different units or scales, as the z-score standardizes the data. Overall, z-scores provide a way to
measure the relative position of a data point in a data
Parameters:
src (float) : (float) Source to calculate z-score
mean (float) : (float) Moving average.
length (simple int) : (int) The sequential period to calcule the standard deviation
biased (simple bool) : (bool) Defines the type of standard deviation. If true, uses biased sample variance (n),
else uses unbiased sample variance (n-1 or another value, as long as it is in the range between 1 and n-1), where n=length.
degreesOfFreedom (simple int) : (int) Degrees of freedom. The number of values in the final calculation of a statistic that are free to vary.
Default value is n-1, where n here is length.
Returns: (float) Z-score
atr(source, length)
ATR: Average True Range. Customized version with source parameter.
Parameters:
source (float) : (float) Source
length (simple int) : (int) Length (number of bars back)
Returns: (float) ATR
atrp(length, sourceP)
ATRP (Average True Range Percent)
Parameters:
length (simple int) : (int) Length (number of bars back) for ATR
sourceP (float) : (float) Source for calculating percentage relativity
Returns: (float) ATRP
atrp(source, length, sourceP)
ATRP (Average True Range Percent). Customized version with source parameter.
Parameters:
source (float) : (float) Source for ATR
length (simple int) : (int) Length (number of bars back) for ATR
sourceP (float) : (float) Source for calculating percentage relativity
Returns: (float) ATRP
historicalVolatility(lengthATR, lengthHist)
Historical Volatility
Parameters:
lengthATR (simple int) : (int) Length (number of bars back) for ATR
lengthHist (simple int) : (int) Length (number of bars back) for Historical Volatility
Returns: (float) Historical Volatility
historicalVolatility(source, lengthATR, lengthHist)
Historical Volatility
Parameters:
source (float) : (float) Source for ATR
lengthATR (simple int) : (int) Length (number of bars back) for ATR
lengthHist (simple int) : (int) Length (number of bars back) for Historical Volatility
Returns: (float) Historical Volatility
minMaxNormalization(src, numbars)
Min-Max Scale Normalization. Maximum and minimum values are taken from the sequential range of
numbars bars back, where numbars is a number defined by the user.
Parameters:
src (float) : (float) Source to normalize
numbars (simple int) : (int) Numbers of sequential bars back to seek for lowest and hightest values.
Returns: (float) Normalized value
minMaxNormalization(src, numbars, minimumLimit, maximumLimit)
Min-Max Scale Normalization. Maximum and minimum values are taken from the sequential range of
numbars bars back, where numbars is a number defined by the user.
In this implementation, the user explicitly provides the desired minimum (min) and maximum (max) values for the scale,
rather than using the minimum and maximum values from the data.
Parameters:
src (float) : (float) Source to normalize
numbars (simple int) : (int) Numbers of sequential bars back to seek for lowest and hightest values.
minimumLimit (simple float) : (float) Minimum value to scale
maximumLimit (simple float) : (float) Maximum value to scale
Returns: (float) Normalized value
meanNormalization(src, numbars, mean)
Mean Normalization
Parameters:
src (float) : (float) Source to normalize
numbars (simple int) : (int) Numbers of sequential bars back to seek for lowest and hightest values.
mean (float) : (float) Mean of source
Returns: (float) Normalized value
standardization(src, mean, stDev)
Standardization (Z-score Normalization). How "outside the mean" values relate to the standard deviation (ratio between first and second)
Parameters:
src (float) : (float) Source to normalize
mean (float) : (float) Mean of source
stDev (float) : (float) Standard Deviation
Returns: (float) Normalized value
scalingToUnitLength(src, numbars)
Scaling to unit length
Parameters:
src (float) : (float) Source to normalize
numbars (simple int) : (int) Numbers of sequential bars back to seek for lowest and hightest values.
Returns: (float) Normalized value
lsVolatilityIndex(movingAverage, sourceHvol, lengthATR, lengthHist, lenNormal, lowerLimit, upperLimit)
LS Volatility Index. Measures the volatility of price in relation to an average.
Parameters:
movingAverage (float) : (float) A moving average
sourceHvol (float) : (float) Source for calculating the historical volatility
lengthATR (simple int) : (float) Length for calculating the ATR (Average True Range)
lengthHist (simple int) : (float) Length for calculating the historical volatility
lenNormal (simple int) : (float) Length for normalization
lowerLimit (simple int)
upperLimit (simple int)
Returns: (float) LS Volatility Index
lsVolatilityIndex(sourcePrice, movingAverage, sourceHvol, lengthATR, lengthHist, lenNormal, lowerLimit, upperLimit)
LS Volatility Index. Measures the volatility of price in relation to an average.
Parameters:
sourcePrice (float) : (float) Source for measure the distance
movingAverage (float) : (float) A moving average
sourceHvol (float) : (float) Source for calculating the historical volatility
lengthATR (simple int) : (float) Length for calculating the ATR (Average True Range)
lengthHist (simple int) : (float) Length for calculating the historical volatility
lenNormal (simple int)
lowerLimit (simple int)
upperLimit (simple int)
Returns: (float) LS Volatility Index
bollingerBands(src, length, mult, basis)
Bollinger Bands. A Bollinger Band is a technical analysis tool defined by a set of lines plotted
two standard deviations (positively and negatively) away from a simple moving average (SMA) of the security's price,
but can be adjusted to user preferences. In this version you can pass a customized basis (moving average), not only SMA.
Parameters:
src (float) : (float) Source to calculate standard deviation used in Bollinger Bands
length (simple int) : (int) The time period to be used in calculating the standard deviation
mult (simple float) : (float) Multiplier used in standard deviation. Basically, the upper/lower bands are standard deviation multiplied by this.
basis (float) : (float) Basis of Bollinger Bands (a moving average)
Returns: (float) A tuple of Bollinger Bands, where index 1=basis; 2=basis+dev; 3=basis-dev; and dev=multiplier*stdev
bollingerBands(src, length, aMult, basis)
Bollinger Bands. A Bollinger Band is a technical analysis tool defined by a set of lines plotted
two standard deviations (positively and negatively) away from a simple moving average (SMA) of the security's price,
but can be adjusted to user preferences. In this version you can pass a customized basis (moving average), not only SMA.
Also, various multipliers can be passed, thus getting more bands (instead of just 2).
Parameters:
src (float) : (float) Source to calculate standard deviation used in Bollinger Bands
length (simple int) : (int) The time period to be used in calculating the standard deviation
aMult (float ) : (float ) An array of multiplies used in standard deviation. Basically, the upper/lower bands are standard deviation multiplied by this.
This array of multipliers permit the use of various bands, not only 2.
basis (float) : (float) Basis of Bollinger Bands (a moving average)
Returns: (float ) An array of Bollinger Bands, where:
index 1=basis; 2=basis+dev1; 3=basis-dev1; 4=basis+dev2, 5=basis-dev2, 6=basis+dev2, 7=basis-dev2, Nup=basis+devN, Nlow=basis-devN
and dev1, dev2, devN are ```multiplier N * stdev```
bollingerBandsB(src, length, mult, basis)
Bollinger Bands %B - or Percent Bandwidth (%B).
Quantify or display where price (or another source) is in relation to the bands.
%B can be useful in identifying trends and trading signals.
Calculation:
%B = (Current Price - Lower Band) / (Upper Band - Lower Band)
Parameters:
src (float) : (float) Source to calculate standard deviation used in Bollinger Bands
length (simple int) : (int) The time period to be used in calculating the standard deviation
mult (simple float) : (float) Multiplier used in standard deviation
basis (float) : (float) Basis of Bollinger Bands (a moving average)
Returns: (float) Bollinger Bands %B
bollingerBandsB(src, length, aMult, basis)
Bollinger Bands %B - or Percent Bandwidth (%B).
Quantify or display where price (or another source) is in relation to the bands.
%B can be useful in identifying trends and trading signals.
Calculation
%B = (Current Price - Lower Band) / (Upper Band - Lower Band)
Parameters:
src (float) : (float) Source to calculate standard deviation used in Bollinger Bands
length (simple int) : (int) The time period to be used in calculating the standard deviation
aMult (float ) : (float ) Array of multiplier used in standard deviation. Basically, the upper/lower bands are standard deviation multiplied by this.
This array of multipliers permit the use of various bands, not only 2.
basis (float) : (float) Basis of Bollinger Bands (a moving average)
Returns: (float ) An array of Bollinger Bands %B. The number of results in this array is equal the numbers of multipliers passed via parameter.
bollingerBandsW(src, length, mult, basis)
Bollinger Bands Width. Serve as a way to quantitatively measure the width between the Upper and Lower Bands
Calculation:
Bollinger Bands Width = (Upper Band - Lower Band) / Middle Band
Parameters:
src (float) : (float) Source to calculate standard deviation used in Bollinger Bands
length (simple int) : (int) Sequential period to calculate the standard deviation
mult (simple float) : (float) Multiplier used in standard deviation
basis (float) : (float) Basis of Bollinger Bands (a moving average)
Returns: (float) Bollinger Bands Width
bollingerBandsW(src, length, aMult, basis)
Bollinger Bands Width. Serve as a way to quantitatively measure the width between the Upper and Lower Bands
Calculation
Bollinger Bands Width = (Upper Band - Lower Band) / Middle Band
Parameters:
src (float) : (float) Source to calculate standard deviation used in Bollinger Bands
length (simple int) : (int) Sequential period to calculate the standard deviation
aMult (float ) : (float ) Array of multiplier used in standard deviation. Basically, the upper/lower bands are standard deviation multiplied by this.
This array of multipliers permit the use of various bands, not only 2.
basis (float) : (float) Basis of Bollinger Bands (a moving average)
Returns: (float ) An array of Bollinger Bands Width. The number of results in this array is equal the numbers of multipliers passed via parameter.
dinamicZone(source, sampleLength, pcntAbove, pcntBelow)
Get Dynamic Zones
Parameters:
source (float) : (float) Source
sampleLength (simple int) : (int) Sample Length
pcntAbove (simple float) : (float) Calculates the top of the dynamic zone, considering that the maximum values are above x% of the sample
pcntBelow (simple float) : (float) Calculates the bottom of the dynamic zone, considering that the minimum values are below x% of the sample
Returns: A tuple with 3 series of values: (1) Upper Line of Dynamic Zone;
(2) Lower Line of Dynamic Zone; (3) Center of Dynamic Zone (x = 50%)
Examples:
K's Volatility BandsVolatility bands come in all shapes and forms contrary to what is believed. Bollinger bands remain the principal indicator in the volatility bands family. K's Volatility bands is an attempt at optimizing the original bands. Below is the method of calculation:
* We must first start by calculating a rolling measure based on the average between the highest high and the lowest low in the last specified lookback window. This will give us a type of moving average that tracks the market price. The specificity here is that when the market does not make higher highs nor lower lows, the line will be flat. A flat line can also be thought of as a magnet of the price as the ranging property could hint to a further sideways movement.
* The K’s volatility bands assume the worst with volatility and thus will take the maximum volatility for a given lookback period. Unlike the Bollinger bands which will take the latest volatility calculation every single step of time, K’s volatility bands will suppose that we must be protected by the maximum of volatility for that period which will give us from time to time stable support and resistance levels.
Therefore, the difference between the Bollinger bands and K's volatility bands are as follows:
* Bollinger Bands' formula calculates a simple moving average on the closing prices while K's volatility bands' formula calculates the average of the highest highs and the lowest lows.
* Bollinger Bands' formula calculates a simple standard deviation on the closing prices while K's volatility bands' formula calculates the highest standard deviation for the lookback period.
Applying the bands is similar to applying any other volatility bands. We can list the typical strategies below:
* The range play strategy : This is the usual reversal strategy where we buy whenever the price hits the lower band and sell short whenever it hits the upper band.
* The band re-entry strategy : This strategy awaits the confirmation that the price has recognized the band and has shaped a reaction around it and has reintegrated the whole envelope. It may be slightly lagging in nature but it may filter out bad trades.
* Following the trend strategy : This is a controversial strategy that is the opposite of the first one. It assumes that whenever the upper band is surpassed, a buy signal is generated and whenever the lower band is broken, a sell signal is generated.
* Combination with other indicators : The bands can be combined with other technical indicators such as the RSI in order to have more confirmation. This is however no guarantee that the signals will improve in quality.
* Specific strategy on K’s volatility bands : This one is similar to the first range play strategy but it adds the extra filter where the trade has a higher conviction if the median line is flat. The reason for this is that a flat line means that no higher highs nor lower lows have been made and therefore, we may be in a sideways market which is a fertile ground for mean-reversion strategies.
Generalized Bollinger Bands %B And Bandwidth (Tartigradia)Bollinger Band is simply a representation of the rolling average of price and its standard deviation around the average (called the "basis").
This indicator generalizes the Bollinger Band by implementing many different equations to calculate the Bollinger Bands beyond the standard deviation and sma, and then plot the %B (where the current price falls inside the Bollinger Band), Bandwidth (size of the Bollinger Band) as well as the Bollinger Band itself and a reproduction of the OHLC price candles in a separate pane.
Whereas other Bollinger Bands 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 Bollinger Bands can be displayed, and the background can be highlighted when price is overbought/oversold (beyond the Bollinger Band of choice). Tip: BB3, which is the bollinger band 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 Bollinger Bands as reflected by the %B value.
Usage:
Use the %B as a measure of sentiment: bullish if > 0.5, bearish if < 0.5. You can use the Sentiment Bars at the bottom for a quick reference: aqua if bullish, red if bearish, 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 Bollinger Band Multiplier such as 3 or more to reduce false positives.
When oversold, it can be a good time to buy/long. Use a higher Bollinger Band Multiplier such as 3 or more to reduce false positives.
Consider setting a much tighter lookback period of 4 as recommended in backtested works (en.wikipedia.org), use zlma instead of sma, and finally set a higher timeframe for the Bollinger Bands than the one you are currently studying. Then, the Bollinger Bands 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).
Bollinger Band ToolkitBollinger Band Toolkit
An advanced, adaptive Bollinger Band system for traders who want more context, precision, and edge.
This indicator expands on the classic Bollinger Bands by combining statistical and volatility-based methods with modern divergence and squeeze detection tools. It helps identify volatility regimes, potential breakouts, and early momentum shifts — all within one clean overlay.
🔹 Core Features
1. Adaptive Bollinger Bands (σ + ATR)
Classic 20-period bands enhanced with an ATR-based volatility adjustment, making them more responsive to true market movement rather than just price variance.
Reduces “overreacting” during chop and avoids bands collapsing too tightly during trends.
2. %B & RSI Divergence Detection
🟢 Green dots: Positive %B divergence — price makes a lower low, but %B doesn’t confirm (bullish).
🔴 Red dots: Negative %B divergence — price makes a higher high, but %B doesn’t confirm (bearish).
✚ Red/green crosses: RSI divergence confirmation — momentum fails to confirm the price’s new extreme.
These signals highlight potential reversal or slowdown zones that are often invisible to the naked eye.
3. Bollinger Band Squeeze (with Volume Filter)
Yellow squares (■) show periods when Bollinger Bands are at their narrowest relative to recent history.
Volume confirmation ensures the squeeze only triggers when both volatility and participation contract.
Often marks the “calm before the storm” — breakout potential zones.
4. Multi-Timeframe Breakout Markers
Optionally displays breakouts from higher or lower timeframes using different colors/symbols.
Lets you see when a higher timeframe band break aligns with your current chart — a strong trend continuation signal.
5. Dual- and Triple-Band Visualization (±1σ, ±2σ, ±3σ)
Optional inner (±1σ) and outer (±3σ) bands provide a layered volatility map:
Price holding between ±1σ → stable range / mean-reverting behavior
Price riding near ±2σ → trending phase, sustained momentum
Price touching or exceeding ±3σ → volatility expansion or exhaustion zone
This triple-band layout visually distinguishes normal movement from statistical extremes, helping you read when the market is balanced, expanding, or approaching its limits.
⚙️ Inputs & Customization
Choose band type (SMA/EMA/SMMA/WMA/VWMA)
Adjust deviation multiplier (σ) and ATR multiplier
Toggle individual features (divergence dots, squeeze markers, inner bands, etc.)
Multi-timeframe and colour controls for advanced users
🧠 How to Use
Watch for squeeze markers followed by a breakout bar beyond ±2σ → volatility expansion signal.
Combine divergence dots with RSI or price structure to anticipate slowdowns or reversals.
Confirm direction using multi-timeframe breakouts and volume expansion.
💬 Why It Works
This toolkit transforms qualitative chart reading (tight bands, hidden divergence) into quantitative, testable conditions — giving you objective insights that can be backtested, coded, or simply trusted in live setups.
Bollinger Bands ETSOverview
Bollinger Bands ETstyle (BB ETS) is an advanced volatility and breakout detection indicator, building upon the classic Bollinger Bands. This script introduces adaptive ATR-based band width smoothing and clear squeeze detection, making it a versatile tool for traders seeking more responsive and actionable volatility analysis.
Features
Dual Bollinger Bands: Plots both standard and outer bands around a configurable moving average, allowing visualization of typical and extreme volatility ranges.
ATR-Based Band Smoothing (Optional): When enabled, the bands automatically widen during low-volatility periods using the Average True Range (ATR), reducing false signals and making the bands more adaptive.
Squeeze Detection (Optional): Highlights periods when the bands contract below a user-defined threshold, signaling potential breakout setups. Squeeze periods are visually marked with a background highlight for easy identification.
Customizable Settings: Users can adjust band length, standard deviation multipliers, ATR parameters, and squeeze thresholds. Both ATR smoothing and squeeze detection can be toggled on or off.
Clean Chart Output: The indicator overlays directly on price with clear, distinguishable visuals for all features.
How It Works
The indicator calculates a moving average (basis) and plots upper and lower bands at user-selected standard deviations.
If ATR smoothing is enabled, the band width expands by a multiple of the ATR, adapting to real-time volatility.
The script computes the relative band width ("bandwidth"). When this falls below your chosen threshold, the background is highlighted to indicate a "squeeze"-a period of reduced volatility that often precedes breakouts.
How to Use
Trend & Volatility Analysis: Use the bands to identify overbought/oversold conditions and current market volatility. Price touching or crossing the outer bands may signal trend exhaustion or continuation.
Breakout Anticipation: Watch for background highlights indicating a squeeze. These periods suggest the market is coiling for a potential significant move.
Adaptive Sensitivity: Enable ATR smoothing to keep bands relevant during both calm and volatile markets, reducing false signals in low-volatility conditions.
Customization: Adjust all parameters in the settings to match your trading style and the asset’s behavior.
Limitations
The indicator is designed for standard price charts and may not perform as intended on non-standard chart types (such as Renko or Heikin Ashi).
As with all technical tools, best results are achieved when used alongside other forms of analysis.
Summary
Bollinger Bands ETstyle (BB ETS) offers a modern, adaptive approach to volatility and breakout analysis by combining classic bands with ATR-based smoothing and clear squeeze visualization. It is suitable for trend-following and breakout strategies, and requires no additional scripts-simply apply to your chart and adjust the settings as needed.
ViVen-Multi Time Frame Bollinger Band StrategyThis indicator created to identify the strong Support and Resistance levels based on the Bollinger Bands. When two different time frame Bollinger Bands are travelling together then its a strong Support or Resistance Levels.
I have added 5 Min, 15 Min, 30 Min, 1 Hr and 1 Day time frame Bollinger Bands in one Chart. You can select and combine whichever the TF you want.
Default values considered - Period - 20 and Std.Dev is 2
You can on/off the indicator based on the requirement.
Trade plan:
BUY - When price comes near to the Bottom Bollinger Band level (look for candle confirmation is plus). If multiple Bollinger bands travels together then is Strong Support. (Exit if Price Breaks down the BB)
SELL - When price reaches the Upper Bollinger Band level (look for candle confirmation is plus). If multiple Bollinger bands travels together then is Strong Support. (Exit if Price Breaks Up the BB)
Middle Line - is the 20 SMA line
When the Gap between Upper and Lower Band is narrow then we can expect a trending movement soon.