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

Repulse

Repulse en ProBuilder mesure la pression haussière ou baissière exercée sur chaque bougie sur n bars, en oscillant autour de zéro. Syntaxe, formule, exemples.

Syntaxe

probuilder
Repulse[n](price)

Paramètres

NomTypePar défautDescription
nentieraucunNombre de bars analysées. Les petites valeurs comme 1 à 5 lisent la pression sur les bougies individuelles, les valeurs plus grandes comme 15 ou plus décrivent la vague plus large.
pricesource de prixcloseLa série de prix utilisée dans le calcul. Généralement close, accepte aussi open, high, ou low.

Formule

La définition couramment citée compare une force haussière à une force baissière, chacune exprimée en pourcentage de la clôture et lissée exponentiellement :

code
up   = 100 * (3 * close - 2 * lowest low over n - open) / close
down = 100 * (open + 2 * highest high over n - 3 * close) / close
Repulse = ExponentialAverage[5n](up) - ExponentialAverage[5n](down)

La force haussière augmente lorsque la clôture s'établit bien au-dessus des plus bas récents, la force baissière augmente lorsque la clôture s'établit bien en dessous des plus hauts récents. Leur différence lissée oscille autour de zéro.

Comment ça marche

Repulse tente de répondre numériquement à une question de chandeliers : sur les n bars, qui a poussé le plus fort, les acheteurs ou les vendeurs. Une chandelle qui ouvre bas et clôture près du haut de son range récent montre des acheteurs qui absorbent l'offre, ce qui fait monter la composante haussière. Le cas miroir fait monter la composante baissière. La compensation des deux produit une seule ligne dont le signe résume quel camp l'emporte.

L'indicateur se comporte comme les autres oscillateurs centrés sur zéro. Le signe donne le biais, la pente donne la variation de la pression, et les divergences avec le prix signalent que le mouvement en cours manque de participants. Comme la période de lissage évolue avec n (cinq fois la fenêtre d'analyse), plus grand n valeurs produisent des lignes nettement plus lentes et plus lisses.

Une technique courante exécute plusieurs instances à la fois, par exemple Repulse[1], Repulse[5] et Repulse[15], pour lire les vagues de pression courtes, intermédiaires et plus longues sur le même graphique. L'alignement des trois du même côté de zéro est considéré comme une lecture plus fiable que n'importe quelle ligne isolée.

Exemples

Exemple 1, Marqueurs de pression haussière et baissière (Indicateur)

probuilder
i1 = Repulse[10](close)
IF i1 > 0 THEN
  bullish = 1
  bearish = 0
ELSIF i1 < 0 THEN
  bullish = 0
  bearish = 1
ENDIF
RETURN bullish coloured(127,255,0), bearish coloured(255,64,64)

Convertit le Repulse à 10 bars en deux drapeaux binaires, tracés en vert pour la pression haussière et en rouge pour la pression baissière. Notez que lorsque i1 vaut exactement zéro, les deux flags conservent leurs valeurs précédentes car les variables persistent d'une bar à l'autre.

Exemple 2, Entrée sur croisement du zéro avec filtre de tendance (ProOrder)

probuilder
DEFPARAM CumulateOrders = false

pressure = Repulse[5](close)
trend    = Average[100](close)

// Buy when pressure turns positive in an established uptrend
IF NOT LongOnMarket AND close > trend AND pressure CROSSES OVER 0 THEN
  BUY 1 CONTRACT AT MARKET
ENDIF

// Exit when pressure flips negative
IF LongOnMarket AND pressure CROSSES UNDER 0 THEN
  SELL AT MARKET
ENDIF

La moyenne à 100 bars maintient les entrées du côté de la tendance, et le croisement du zéro de Repulse cale l'entrée sur le moment où la pression acheteuse reprend le contrôle.

Exemple 3, Alignement de pression multi-périodes (ProScreener)

probuilder
shortP = Repulse[1](close)
midP   = Repulse[5](close)
longP  = Repulse[15](close)
aligned = shortP > 0 AND midP > 0 AND longP > 0
SCREENER[aligned](midP AS "Repulse 5")

Renvoie les instruments dont les lectures de Repulse à 1, 5 et 15 bars sont toutes positives, la condition d'alignement souvent utilisée comme confirmation haussière.

Interprétation

LectureSignification
Repulse > 0Pression haussière nette sur la fenêtre.
Repulse < 0Pression baissière nette sur la fenêtre.
Passage au-dessus de 0Les acheteurs prennent le contrôle, bascule du momentum à la hausse.
Passage sous 0Les vendeurs prennent le contrôle, bascule du momentum à la baisse.
Divergence par rapport au prixNouvel extrême de prix sans nouvel extrême de l'oscillateur, la pression derrière le mouvement s'essouffle.

Les valeurs de Repulse sont relatives et non bornées, les valeurs extrêmes diffèrent donc selon l'instrument et selon n. Il se lit normalement pour son signe, sa pente et ses divergences plutôt que pour son niveau absolu, et se confirme avec le volume ou le contexte des supports et résistances.

Erreurs et pièges courants

  • Le lissage évolue avec la période. Le lissage exponentiel interne utilise un multiple de n, donc doubler n plus que double le retard. Un Repulse[15] la ligne réagit bien plus tard que ne le suggère l'intuition fondée sur un lookback de 15 bars.
  • Pas de bornes fixes. Contrairement au RSI ou au Stochastique, il n'existe pas de niveaux universels de surachat ou de survente. Des seuils tels que > 20 doit être calibré par instrument et unité de temps.
  • Faux signaux au croisement du zéro sur un petit n. Repulse[1] change fréquemment de signe dans les marchés calmes. Trader les franchissements de zéro bruts sans filtre de tendance génère une série d'allers-retours perdants.
  • Cas d'égalité non traité. Dans une logique de branchement comme l'exemple 1, une valeur exactement nulle ne correspond ni > 0 ni < 0, si bien que les variables indicatrices conservent silencieusement la valeur du bar précédent. Ajoutez un ELSE branche lorsqu'un état défini est requis sur chaque bar.
  • RepulseMM, variante en moyenne mobile prenant des paramètres court terme, long terme et de lissage.
  • SmoothedRepulse, version pré-lissée du même concept.
  • RSI, oscillateur de momentum borné avec une échelle fixe de 0 à 100.
  • Stochastic, oscillateur borné situant le close dans son range récent.
  • CCI, oscillateur d'écart à la moyenne avec une lecture centrée sur zéro comparable.
  • Momentum, différence brute de prix sur N bars.
  • ROC, taux de variation du prix en pourcentage.
  • ExponentialAverage, la méthode de lissage utilisée à l'intérieur de Repulse.