Bollinger Bands (bb)
[[bb]] entoure une moyenne mobile par deux bandes calculées à partir de l’écart-type. Vous l’utilisez pour visualiser la volatilité récente, situer le prix par rapport à son équilibre de court ou moyen terme, ou comparer plusieurs configurations dans une recherche par grille.
Quand les bandes s’écartent, la volatilité augmente. Quand elles se resserrent, le marché traverse une phase plus calme. La ligne médiane représente la moyenne du prix sur la période étudiée. Les bandes supérieure et inférieure montrent jusqu’où le prix s’éloigne de cette moyenne.
Déclaration du bloc
Une stratégie peut contenir plusieurs blocs [[bb]].
Chaque bloc génère trois séries de valeurs : bande supérieure, médiane et inférieure. Chaque série est identifiée via les clés upper_id, middle_id et lower_id.
Exemples
Configuration minimale
Ce bloc calcule les bandes de Bollinger avec les valeurs par défaut du bloc, soit source = "close", length = 20, multiplier_upper = 2.0, multiplier_lower = 2.0 et type = "sma".
[[bb]]
upper_id = "bb_up"
middle_id = "bb_mid"
lower_id = "bb_low"Configuration fixe personnalisée
Ce bloc utilise des valeurs personnalisées pour length, multiplier_upper et multiplier_lower.
[[bb]]
upper_id = "bb_up"
middle_id = "bb_mid"
lower_id = "bb_low"
length = 22
multiplier_upper = 2.2
multiplier_lower = 2.2Recherche de la période et des écarts-types optimaux
Ce bloc explore des plages de valeurs pour length, multiplier_upper et multiplier_lower afin d’identifier la combinaison la plus performante.
[[bb]]
upper_id = "bb_up"
middle_id = "bb_mid"
lower_id = "bb_low"
length.start = 15
length.stop = 25
length.step = 1
multiplier_upper.start = 1.5
multiplier_upper.stop = 2.5
multiplier_upper.step = 0.2
multiplier_lower.start = 1.5
multiplier_lower.stop = 2.5
multiplier_lower.step = 0.2Type de moyenne mobile médiane (multiple)
Ce bloc teste deux types de moyenne mobile pour la bande médiane : sma et ema.
[[bb]]
upper_id = "bb_up"
middle_id = "bb_mid"
lower_id = "bb_low"
type = ["sma", "ema"]Paramètres
| Paramètre | Description |
|---|---|
upper_idTexte Obligatoire | Nom de la série pour la bande supérieure. Exemple : upper_id = "bande_sup" |
middle_idTexte Obligatoire | Nom de la série pour la bande médiane. Exemple : middle_id = "bande_milieu" |
lower_idTexte Obligatoire | Nom de la série pour la bande inférieure. Exemple : lower_id = "bande_inf" |
sourceTexte ou Tableau Optionnel | Série d’entrée utilisée pour le calcul. Formats acceptés : source = "hl2" ou source = ["close", "hl2"].Chaque valeur peut être soit une source de prix standard ( open, close, high, low, hl2, hlc3, ohlc4, hlcc4, volume), soit l’id d’un autre indicateur.Valeur par défaut : "close" |
lengthEntier Optionnel | Période utilisée pour la moyenne mobile et l’écart‑type, doit être strictement supérieure à 1. Valeur par défaut : 20.Usage : • Fixe : length = valeur avec valeur >= 2• Grille : – length.start = valeur_minimale avec valeur_minimale >= 2– length.stop = valeur_maximale– length.step = valeur (optionnel, par défaut 1) |
multiplier_upperDécimal Optionnel | Multiplicateur pour la bande supérieure ; la valeur doit être strictement supérieure à 0. Valeur par défaut : 2.0.Usage : • Fixe : multiplier_upper = 2.0• Grille : – multiplier_upper.start = valeur_minimale– multiplier_upper.stop = valeur_maximale– multiplier_upper.step = valeur (optionnel, par défaut 1) |
multiplier_lowerDécimal Optionnel | Multiplicateur pour la bande inférieure ; la valeur doit être strictement supérieure à 0. Valeur par défaut : 2.0.Usage : • Fixe : multiplier_lower = 2.0• Grille : – multiplier_lower.start = valeur_minimale– multiplier_lower.stop = valeur_maximale– multiplier_lower.step = valeur (optionnel, par défaut 1) |
typeTexte ou Tableau Optionnel | Type de moyenne pour la bande médiane. Défaut : "sma".Valeurs autorisées : "sma", "ema", "wma", "dema", "tema", "trima", "smma", "zlema", "rma".• Un seul type : type = "ema"• Plusieurs types : type = ["sma", "ema", "rma"] |
symbolTexte ou Tableau Optionnel | Symbole(s) de marché utilisé(s) lorsque source ne contient que des prix standard (open, close, high, low, hl2, hlc3, ohlc4, hlcc4, volume).Si source mélange des prix standard et des identifiants d’indicateurs, symbol s’applique uniquement aux combinaisons basées sur des prix standard.Si source ne contient que des identifiants d’indicateurs, symbol est ignoré.S’il est omis, le bloc hérite du symbole défini dans [backtest].Pour le format, les tableaux et l’alignement, voir Exchanges, Symboles et Timeframes. |
timeframeTexte ou Tableau Optionnel | Timeframe sur lequel cet indicateur est calculé. Si timeframe est omis, le calcul se fait sur le timeframe principal de la grille défini dans [backtest].Pour les formats acceptés et les règles d’alignement entre timeframes, voir Exchanges, Symboles et Timeframes. |
Variables disponibles
Vous pouvez utiliser directement les identifiants ci‑dessous dans vos expressions. Le bloc Bandes de Bollinger expose trois séries numériques (supérieure, médiane, inférieure) et leurs paramètres (longueur et multiplicateurs), ainsi que la source d’entrée, le symbole et le timeframe.
Supposons le bloc configuré ainsi :
[[bb]]
upper_id = "bb_up"
middle_id = "bb_mid"
lower_id = "bb_lo"Alors :
| Variable | Description |
|---|---|
bb_up ou bb_up[0]Décimal | Valeur actuelle de la bande supérieure. |
bb_mid ou bb_mid[0]Décimal | Valeur actuelle de la bande médiane (type de moyenne choisi). |
bb_lo ou bb_lo[0]Décimal | Valeur actuelle de la bande inférieure. |
bb_up[n]bb_mid[n]bb_lo[n]Décimal | Valeur de la bande supérieure il y a n bougies. Valeur de la bande médiane il y a n bougies. Valeur de la bande inférieure il y a n bougies. |
bb_up.lengthbb_mid.lengthbb_lo.lengthDécimal | Période utilisée pour la moyenne mobile et l’écart‑type. |
bb_up.multiplier_upperbb_mid.multiplier_upperbb_lo.multiplier_upperDécimal | Multiplicateur supérieur utilisé. |
bb_up.multiplier_lowerbb_mid.multiplier_lowerbb_lo.multiplier_lowerDécimal | Multiplicateur inférieur utilisé. |
bb_up.sourcebb_mid.sourcebb_lo.sourceTexte | Nom de la série d’entrée. |
bb_up.symbolbb_mid.symbolbb_lo.symbolTexte | Symbole de marché utilisé. |
bb_up.timeframebb_mid.timeframebb_lo.timeframeTexte | Timeframe utilisé. |
bb_up.typebb_mid.typebb_lo.typeTexte | Type de moyenne utilisé pour la bande médiane (sma, ema, …). |
Notes
- Les variables numériques se combinent librement (arithmétique, comparaisons, opérateurs logiques).
- Les variables textuelles sont des chaînes destinées aux comparaisons d’égalité/inégalité uniquement.