Iscriviti ora
Indicatori/probuilder · probacktest · proorder · proscreener

BollingerBandWidth

BollingerBandWidth in ProBuilder restituisce la distanza tra la banda di Bollinger superiore e quella inferiore, una misura diretta della volatilità. Sintassi, formula, esempi.

Sintassi

probuilder
BollingerBandWidth[N](price)

Parametri

NomeTipoPredefinitoDescrizione
Nintero20Periodo usato per la media mobile e la deviazione standard alla base delle bande. 20 è l'impostazione standard di Bollinger.
pricefonte di prezzochiusuraSerie di prezzi su cui sono calcolate le bande, tipicamente close.

Formula

codice
Upper = Average[N](price) + 2 * STD[N](price)
Lower = Average[N](price) - 2 * STD[N](price)
BollingerBandWidth = Upper - Lower = 4 * STD[N](price)

Poiché le bande superiore e inferiore si trovano simmetricamente a due deviazioni standard dalla media mobile, l'ampiezza si riduce a quattro volte la N-periodi di deviazione standard del prezzo.

Come funziona

Le bande di Bollinger si espandono quando il prezzo si disperde e si contraggono quando il prezzo si raggruppa attorno alla sua media. BollingerBandWidth estrae questa espansione e contrazione in un'unica linea, eliminando la necessità di valutare a occhio la distanza tra due bande tracciate.

Il valore è espresso in unità di prezzo. Sale durante le fasi volatili, sia in trend sia in crollo, e scende durante i consolidamenti. Una contrazione prolungata, spesso chiamata squeeze, indica un mercato che si avvolge in un range stretto. Gli squeeze non hanno contenuto direzionale, ma individuano condizioni in cui il successivo movimento direzionale tende a percorrere più strada, ed è per questo che i sistemi di breakout spesso subordinano i loro ingressi alla larghezza delle bande.

Poiché la deviazione standard scala con il livello di prezzo, le letture grezze di larghezza sono confrontabili solo con la storia dello stesso strumento. Dividere per la banda mediana o per il prezzo converte la lettura in un valore relativo adatto alla scansione tra mercati diversi.

Esempi

Esempio 1, Larghezza delle bande veloce e lenta (Indicatore)

probuilder
// 20-period width against a slower 30-period width for context
BBwidth = BollingerBandWidth[20](close)
BBwidthSlow = BollingerBandWidth[30](close)
RETURN BBwidth coloured(0,100,100), BBwidthSlow AS "more laggy BandWidth"

Traccia due larghezze affiancate. La versione a 30 periodi reagisce più lentamente, quindi lo scarto tra le due linee evidenzia i cambiamenti recenti di volatilità.

Esempio 2, Screener di squeeze (ProScreener)

probuilder
// Instruments whose band width sits at a 100-bar low
bw = BollingerBandWidth[20](close)
squeeze = bw <= Lowest[100](bw)
SCREENER[squeeze]((bw / close) * 100 AS "Width % of price")

Restituisce gli strumenti in massima compressione rispetto alla propria storia recente, espressa in percentuale del prezzo così che i risultati siano confrontabili tra mercati diversi.

Esempio 3, Ingresso di breakout subordinato all'espansione della larghezza (ProOrder)

probuilder
// Buy a channel breakout only when volatility is expanding from a squeeze
bw = BollingerBandWidth[20](close)
expanding = bw > bw[3]
wasTight = bw[3] < Average[50](bw)[3]

IF NOT LongOnMarket AND close CROSSES OVER BollingerUp[20](close) THEN
  IF expanding AND wasTight THEN
    BUY 1 CONTRACT AT MARKET
  ENDIF
ENDIF

IF LongOnMarket AND close CROSSES UNDER Average[20](close) THEN
  SELL AT MARKET
ENDIF

Le condizioni sulla larghezza delle bande richiedono che il breakout emerga da una compressione e che la volatilità sia in attiva espansione, escludendo i tocchi delle bande che avvengono all'interno di fasi di alta volatilità già consolidate.

Interpretazione

OsservazioneLettura
Larghezza su minimi pluri-settimanaliSqueeze. Il mercato è compresso, spesso segue un'espansione. Nessun bias direzionale.
Larghezza in forte aumentoEspansione di volatilità, di solito accompagna un breakout o un movimento su notizie.
Larghezza su massimi estremiVolatilità in fase avanzata. Movimenti così estesi spesso si fermano o tornano verso la media.
Larghezza in calo dopo un piccoL'impulso viene assorbito, la continuazione del trend diventa meno esplosiva.

La larghezza delle bande identifica il regime di volatilità, non la direzione. Risponde a quando è probabile che un mercato si muova in modo significativo, e altri strumenti devono rispondere in quale direzione.

Errori e insidie comuni

  • La larghezza grezza non è confrontabile tra strumenti diversi. Il valore è in unità di prezzo e scala con il livello del prezzo. Filtra o confronta usando width / close o width / Average[N](close) invece.
  • Trattare uno squeeze come segnale direzionale. La compressione prevede l'espansione, non la direzione. Entrare long solo perché la larghezza è bassa equivale a comprare un lancio di moneta; una condizione separata di breakout o di trend fornisce la direzione.
  • Confondere la larghezza con %B o con la posizione nelle bande. BollingerBandWidth misura la distanza tra le bande. Non dice nulla su dove si trovi il prezzo al loro interno. La posizione all'interno delle bande richiede di confrontare il prezzo con BollingerUp e BollingerDown direttamente.
  • Periodi brevi rendono privo di significato il concetto di squeeze. Con piccoli N, la larghezza oscilla così rapidamente che gli squeeze compaiono continuamente. Il valore del pattern viene da una compressione prolungata con impostazioni standard come 20 periodi.
  • BollingerUp, la banda di Bollinger superiore.
  • BollingerDown, la banda di Bollinger inferiore.
  • STD, deviazione standard, il nucleo del calcolo della larghezza.
  • Average, la media mobile che forma la linea mediana delle bande.
  • KeltnerBandUp, canale di volatilità alternativo basato sul range medio.
  • KeltnerBandDown, linea inferiore del canale di Keltner.
  • DonchianChannelUp, canale di breakout basato sui massimi più alti.
  • AverageTrueRange, misura di volatilità complementare in unità di prezzo.