Deviation (dev)
[[dev]] mesure la dispersion moyenne d’une série autour de sa moyenne mobile simple sur une fenêtre donnée. Pour chaque bougie, il calcule d’abord la SMA de la fenêtre courante, puis fait la moyenne des écarts absolus entre cette moyenne et chacune des valeurs de la fenêtre.
Le bloc dev ne donne pas la direction du marché. Une valeur élevée indique que la série s’éloigne davantage de sa moyenne récente. Une valeur faible indique au contraire que les valeurs restent plus regroupées autour de cette moyenne. Vous pouvez l’utiliser pour mesurer la dispersion récente d’un prix ou d’une série dérivée, filtrer certaines phases de marché ou comparer plusieurs longueurs dans une recherche par grille.
Déclaration du bloc
Une stratégie peut contenir plusieurs blocs [[dev]]. Chaque bloc produit une série numérique représentant cette déviation moyenne absolue.
Exemples
Configuration minimale
Ce bloc calcule dev à partir de close avec une longueur de 20. Comme source est omis, le bloc utilise la valeur par défaut "close".
[[dev]]
id = "dev"
length = 20Recherche de la longueur optimale
Ce bloc explore une plage de valeurs pour length afin d’identifier la longueur la plus performante.
[[dev]]
id = "dev"
length.start = 10
length.stop = 30Paramètres
| Paramètre | Description |
|---|---|
idTexte Obligatoire | Nom unique de la série. |
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 Obligatoire | Fenêtre utilisée pour calculer la SMA de référence et la déviation moyenne absolue ; doit être ≥ 1. Usage : • Fixe : length = valeur• Grille : – length.start = valeur_minimale– length.stop = valeur_maximale– length.step = valeur (optionnel, par défaut 1) |
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).Les symboles doivent inclure le préfixe d’exchange au format EXCHANGE:SYMBOL (par exemple "KUCOIN:BTCUSDT").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 les règles d’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 DEV expose une série numérique et sa longueur, ainsi que la source d’entrée, le symbole et le timeframe.
Supposons le bloc configuré ainsi :
[[dev]]
id = "dev"
length = 20Alors :
| Variable | Description |
|---|---|
dev ou dev[0]Décimal | Valeur actuelle de la déviation moyenne absolue. |
dev[n]Décimal | Valeur de la déviation moyenne absolue il y a n bougies. |
dev.lengthDécimal | Longueur utilisée. |
dev.sourceTexte | Nom de la série d’entrée. |
dev.symbolTexte | Symbole de marché utilisé. |
dev.timeframeTexte | Timeframe utilisé. |
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.