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

ChaikinOsc

ChaikinOsc dans ProBuilder renvoie le Chaikin Oscillator, la différence entre les EMA rapide et lente de la ligne Accumulation/Distribution. Syntaxe, exemples.

Syntaxe

probuilder
ChaikinOsc[shortPeriod, longPeriod](price)

Paramètres

NomTypePar défautDescription
shortPeriodentier3Période de la moyenne exponentielle rapide appliquée à la ligne Accumulation/Distribution.
longPeriodentier10Période de la moyenne exponentielle lente appliquée à la même ligne.
pricesource de prixcloseSérie de prix transmise au calcul sous-jacent, telle que close ou open.

Formule

code
AD         = cumulative sum of Volume * ((Close - Low) - (High - Close)) / (High - Low)
ChaikinOsc = EMA[shortPeriod](AD) - EMA[longPeriod](AD)

La construction reproduit celle d'un MACD, mais appliquée à la ligne Accumulation/Distribution au lieu du prix. L'oscillateur mesure donc le momentum du flux monétaire plutôt que le momentum du prix.

Comment ça marche

La ligne Accumulation/Distribution cumule le volume selon l'endroit où chaque bar clôture à l'intérieur de sa plage, produisant une image lente de la pression acheteuse et vendeuse. Le Chaikin Oscillator prend la dérivée de cette image : en soustrayant une EMA lente de la ligne d'une EMA rapide, il montre si le flux monétaire accélère ou décélère actuellement.

Un oscillateur positif signifie que la ligne A/D monte plus vite que sa norme récente, autrement dit, l'accumulation s'intensifie. Une valeur négative signifie que la distribution s'intensifie. Les croisements de la ligne zéro marquent les points où la tendance de flux à court terme dépasse celle à plus long terme, dans un sens comme dans l'autre.

L'application la plus connue de l'indicateur est l'analyse des divergences. Lorsque le prix inscrit un nouveau creux mais que l'oscillateur se maintient au-dessus de son creux précédent, la pression vendeuse faiblit sous la surface, une divergence haussière. L'image miroir baissière s'applique aux nouveaux sommets de prix. Les changements de direction de l'oscillateur lui-même, sans croisement de zéro, sont également surveillés comme des indices précoces qu'une tendance de flux arrive à maturité.

Les données de volume sont une exigence stricte. Les instruments sans volume significatif issu du flux de données produisent un oscillateur plat ou peu fiable.

Exemples

Exemple 1, Tracé standard du Chaikin Oscillator (Indicateur)

probuilder
// 3-period vs 10-period EMA of the A/D line, based on the open price
ChOsc = ChaikinOsc[3, 10](open)
RETURN ChOsc coloured(86,190,140)

La configuration par défaut 3 et 10. Tracé dans un panneau séparé, les croisements de la ligne zéro et les divergences avec le prix sont les principaux éléments à lire.

Exemple 2, Croisement de la ligne zéro avec filtre de tendance (ProOrder)

probuilder
// Long when money-flow momentum turns positive in an uptrend
co = ChaikinOsc[3, 10](close)
trend = close > Average[100](close)

IF NOT LongOnMarket AND trend AND co CROSSES OVER 0 THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

IF LongOnMarket AND co CROSSES UNDER 0 THEN
  SELL AT MARKET
ENDIF

Entre lorsque le momentum d'accumulation devient positif alors que le prix se négocie au-dessus de sa moyenne à 100 bars, et sort sur le croisement opposé. Le filtre de tendance supprime les croisements fréquents de zéro qui surviennent dans les marchés plats.

Exemple 3, Screening du momentum de flux positif (ProScreener)

probuilder
// Instruments where money-flow momentum just turned positive
co = ChaikinOsc[3, 10](close)
turned = co > 0 AND co[1] <= 0
SCREENER[turned](co AS "Chaikin Osc")

Renvoie les instruments dont le Chaikin Oscillator a franchi zéro à la hausse sur le bar courant, une liste de candidats pour des retournements haussiers confirmés par le volume.

Interprétation

ObservationLecture
Oscillateur au-dessus de zéroLe flux monétaire à court terme est plus fort que la référence à plus long terme, l'accumulation s'accélère.
Oscillateur en dessous de zéroLa distribution s'accélère.
Divergence haussière sur les creux de prixNouveau creux de prix sans nouveau creux de l'oscillateur, la pression vendeuse s'essouffle.
Divergence baissière sur les sommets de prixNouveau sommet de prix sans nouveau sommet de l'oscillateur, la pression acheteuse s'essouffle.

Les croisements de zéro sont fréquents avec des réglages courts, c'est pourquoi la plupart des workflows les traitent comme une confirmation de signaux générés ailleurs plutôt que comme des entrées autonomes.

Erreurs et pièges courants

  • L'ordre des périodes commence par la plus courte. La signature est ChaikinOsc[shortPeriod, longPeriod]. Écrire ChaikinOsc[10, 3] change le signe de chaque valeur et inverse toute la logique de croisement du zéro, sans aucune erreur de compilation.
  • Dépend du volume. L'oscillateur est construit sur la ligne Accumulation/Distribution, qui a besoin du volume. Sur les flux sans volume réellement échangé, la sortie reflète des comptages de ticks ou rien du tout.
  • Ce n'est pas un oscillateur de prix. Malgré sa forme proche du MACD, l'entrée est la ligne A/D. Les niveaux de surachat et de survente empruntés aux oscillateurs de prix ne se transposent pas ; les références utiles sont la ligne zéro et l'historique propre de l'oscillateur.
  • Agité autour de zéro. Avec les périodes par défaut 3 et 10, les marchés sans tendance produisent des croisements alternés rapides. Un filtre de tendance ou un seuil d'amplitude minimale élimine la plupart des trades parasites.
  • AccumDistr, la ligne Accumulation/Distribution sur laquelle l'oscillateur est construit.
  • OBV, ligne de volume cumulé utilisant la direction du bar entier.
  • MoneyFlowIndex, oscillateur borné pondéré par le volume, de 0 à 100.
  • MoneyFlow, mesure de flux monétaire bornée entre -1 et 1.
  • ExponentialAverage, la méthode de lissage utilisée sur les deux jambes.
  • ForceIndex, variation de prix multipliée par le volume.
  • PVT, ligne de tendance prix-volume.
  • VolumeOscillator, la même construction rapide moins lente appliquée au volume brut.