Rejoignez-nous
Indicateurs/probuilder · probacktest · proorder · proscreener

Variation

Variation dans ProBuilder renvoie la variation en pourcentage d'une série de prix entre la barre précédente et la barre courante. Syntaxe, formule et exemples détaillés.

Syntaxe

probuilder
Variation(price)

Paramètres

NomTypePar défautDescription
pricesource de prixaucunSérie dont la variation en pourcentage sur un bar est renvoyée. Accepte close, open, high, low ou toute variable personnalisée.

Formule

code
Variation = 100 * (price - price[1]) / price[1]

Le résultat est un pourcentage signé : positif quand la série est plus haute que sur la barre précédente, négatif quand elle est plus basse, zéro quand elle est inchangée.

Comment ça marche

Sur chaque bar, la fonction compare la valeur courante de la série fournie à sa valeur un bar plus tôt et exprime l'écart en pourcentage de la valeur antérieure. C'est le cas particulier sur un seul bar d'un taux de variation ; ROC généralise la même idée à un N recul en bars.

Comme le résultat est un pourcentage, il est directement comparable entre instruments de niveaux de prix différents, ce que les écarts bruts ne sont pas. Un mouvement journalier de 2 pour cent signifie la même chose sur un indice à 18000 et sur une action à 40. Cela rend Variation un élément de base naturel pour les screeners qui classent les marchés selon leur mouvement journalier, et pour le travail sur la volatilité : l'écart-type des variations sur un bar est une estimation simple de la volatilité réalisée.

La série est bruitée par construction, chaque barre produit une nouvelle lecture indépendante. La lisser avec une moyenne mobile, ou l'encadrer avec un canal d'écart type comme dans le premier exemple, sépare les fluctuations ordinaires des mouvements statistiquement inhabituels.

Exemples

Exemple 1, Variation avec une bande de seuil adaptative (Indicateur)

probuilder
// One-bar percentage change of the high price
var = Variation(high)
// Smooth the changes, then build a 3 standard deviation band around them
averagingvar = 3 * STD[20](exponentialaverage[20](var))
RETURN var, averagingvar

Trace la variation en pourcentage des plus hauts d'un bar à l'autre, ainsi qu'un seuil égal à trois écarts-types de ses valeurs lissées. Les bars où var dépasse la bande signalent des mouvements anormalement amples.

Exemple 2, Scan des mouvements du jour (ProScreener)

probuilder
chg = Variation(close)
SCREENER[ABS(chg) > 3] (chg AS "Change %")

Renvoie les instruments dont la clôture a bougé de plus de 3 pour cent dans un sens ou dans l'autre sur la barre courante, avec la variation signée affichée comme colonne de classement.

Exemple 3, Entrée momentum avec un filtre de variation (ProBacktest)

probuilder
// Enter on a strong up bar, exit on a meaningful down bar
chg = Variation(close)

IF NOT ONMARKET AND chg > 1.5 THEN
  BUY 1 CONTRACT AT MARKET
ENDIF
IF ONMARKET AND chg < -1 THEN
  SELL AT MARKET
ENDIF

Le système achète après une barre qui a gagné plus de 1.5 pour cent et clôture la position après toute barre qui a perdu plus de 1 pour cent, un exemple minimal de logique fondée sur la variation en pourcentage.

Interprétation

Les valeurs positives indiquent que la série a monté sur la dernière barre, les valeurs négatives qu'elle a baissé ; l'amplitude mesure la brutalité du mouvement. Il n'existe pas de seuils universels, ce qui constitue une forte variation sur une barre dépend de l'instrument et de l'unité de temps. Une approche pratique est statistique : comparer la lecture courante à la distribution récente des lectures, par exemple en signalant les valeurs au-delà de deux ou trois écarts types. Des grappes de fortes variations absolues indiquent un régime de forte volatilité, de longues séries de petites valeurs indiquent une consolidation.

Erreurs et pièges courants

  • Une seule barre. Variation compare toujours à la bar immédiatement précédente. Pour une variation sur N barres utilisent ROC[N](price) ou calculer 100 * (close - close[N]) / close[N] explicitement.
  • Dépendance à l'unité de temps. La fonction mesure la variation par barre du graphique courant. Sur un graphique 5 minutes, les valeurs sont naturellement bien plus petites que sur un graphique journalier, les seuils ne se transposent pas entre unités de temps.
  • La base de la division est la barre précédente. Une baisse de 10 pour cent suivie d'une hausse de 10 pour cent ne ramène pas au prix de départ. Additionner les variations sur de nombreuses bars ne donne qu'une approximation du mouvement total.
  • La première barre est indéfinie. Le calcul nécessite price[1], qui n'existe pas sur la première bar de l'historique chargé. Ignorez la valeur la plus ancienne.
  • ROC, taux de variation sur une période d'observation arbitraire de N barres.
  • Momentum, différence de prix absolue sur N barres.
  • STD, écart type, utilisé pour encadrer les lectures de variation.
  • ExponentialAverage, lissage pour la série brute bruitée.
  • Average, alternative de moyenne mobile simple pour le lissage.
  • VolumeROC, la même idée de taux de variation appliquée au volume.
  • HistoricVolatility, volatilité statistique à partir des rendements du prix.
  • Volatility, Chaikin Volatility construit sur le spread haut-bas.