Variance

[[variance]] mesure la dispersion d’une série numérique autour de sa moyenne sur une fenêtre glissante length.

Il fournit une mesure de volatilité pure. Une variance élevée signifie que les valeurs récentes sont très écartées de leur moyenne, tandis qu’une variance faible indique des valeurs plus concentrées. Le paramètre biased permet de choisir entre la variance population et la variance échantillon.

Exemples

Variance sur le prix de clôture

Calcule une série de variance sur le cours de clôture avec une fenêtre fixe de 20 périodes.

[[variance]]
id     = "variance"
length = 20
# source = "close"
# biased = true

Recherche de la longueur optimale

Ce bloc explore une plage de valeurs pour length afin d’identifier la longueur la plus performante.

[[variance]]
id           = "variance"
length.start = 10
length.stop  = 30
# source     = "close"
# biased     = true

Variance échantillon sur une moyenne mobile

Calcule la variance échantillon (biased = false) d’une SMA 50.

[[moving_average]]
id     = "ma"
type   = "sma"
length = 50

[[variance]]
id     = "variance"
source = "ma"
length = 20
biased = false

Filtre de volatilité basé sur la variance

Explore simultanément la longueur de variance et le seuil de volatilité ; la logique en aval ne s’exécute que lorsque la variance des prix récents dépasse le seuil exploré.

[[variance]]
id           = "variance"
source       = ["close", "hlc3"]
length.start = 10
length.stop  = 40

[[constant]]
id    = "variance_threshold"
start = 30.0
stop  = 70.0

[[condition]]
id            = "high_volatility"
condition     = "variance > variance_threshold"
next_block_id = "..."

Paramètres

ParamètreDescription
id
 Texte
 Obligatoire
Nom unique de la série.
source
 Texte
 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"
length
 Entier ou Plage
 Obligatoire
Fenêtre de variance. Elle doit être ≥ 1 lorsque biased = true, et ≥ 2 lorsque biased = false.

Usage :
• Fixe : length = valeur
• Grille :
 – length.start = valeur_minimale
 – length.stop = valeur_maximale
 – length.step = valeur (optionnel, par défaut 1)
biased
 Booléen
 Optionnel
Choisit le type de variance. Lorsque true, le bloc utilise la variance population (division par N). Lorsque false, il utilise la variance échantillon (division par N-1). La valeur par défaut est true.
symbol
 Texte
 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é.
Si elle est omise, 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.
timeframe
 Texte
 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 variance expose une série numérique, ses paramètres et les métadonnées d’entrée.

Supposons le bloc configuré ainsi :

[[variance]]
id     = "variance"
length = 20

Alors :

VariableDescription
variance ou variance[0]
Décimal
Valeur actuelle de la variance.
variance[n]
Décimal
Valeur de la variance il y a n bougies.
variance.length
Décimal
Longueur de fenêtre utilisée.
variance.biased
Décimal
Indicateur de biais utilisé : 1 pour la variance population, 0 pour la variance échantillon.
variance.source
Texte
Nom de la série d’entrée.
variance.symbol
Texte
Symbole utilisé (format d’affichage).
variance.timeframe
Texte
Timeframe utilisé pour ce bloc.

Notes

  • Le calcul prend en charge la variance population et la variance échantillon en utilisant le même indicateur biased que celui configuré dans le TOML.
  • Lorsque biased = false, la fenêtre doit contenir au moins deux valeurs, car la variance échantillon utilise un diviseur N-1.