PriceOscillator
PriceOscillator dans ProBuilder renvoie la différence entre une moyenne mobile courte et une moyenne mobile longue, une mesure de momentum. Syntaxe, formule, exemples, pièges.
Syntaxe
PriceOscillator[S,L](price)Paramètres
| Nom | Type | Par défaut | Description |
|---|---|---|---|
S | entier | aucun | Période de la moyenne mobile court terme. Doit être inférieure à L. |
L | entier | aucun | Période de la moyenne mobile de long terme. |
price | source de prix | close | La série de prix sur laquelle les deux moyennes sont calculées, généralement close. |
Formule
PO = MA(price, S) - MA(price, L)Une variante en pourcentage peut être obtenue en divisant par la moyenne courte :
PO% = (PO / MA(price, S)) * 100L'instruction elle-même renvoie la différence en unités de prix. La forme en pourcentage doit être calculée manuellement lorsqu'une comparabilité entre instruments est nécessaire.
Comment ça marche
Le Price Oscillator condense un système classique de croisement à deux moyennes en une seule ligne. Au lieu de surveiller le croisement de deux moyennes mobiles sur le graphique de prix, l'oscillateur trace leur différence autour d'une ligne zéro. La moyenne courte réagissant plus vite que la longue, la différence augmente pendant les tendances qui accélèrent et diminue à mesure que le momentum s'estompe.
Une valeur positive signifie que la moyenne courte se situe au-dessus de la moyenne longue, la configuration associée au momentum haussier. Une valeur négative signifie l'inverse. Un croisement de la ligne zéro équivaut exactement au croisement des deux moyennes mobiles sur le graphique.
Le concept appartient à la même famille que MACD, qui est le cas particulier de moyennes exponentielles de périodes 12 et 26 avec une ligne de signal. Le Price Oscillator expose les deux périodes en paramètres, rendant les horizons rapide et lent entièrement configurables.
Exemples
Exemple 1, Oscillateur de prix de base (Indicateur)
// Difference between the 10-bar and 20-bar moving averages of the close
RETURN PriceOscillator[10,20](close) AS "Price Oscillator", 0 AS "Zero line"Trace l'oscillateur 10 contre 20 périodes avec une ligne de référence à zéro. La ligne est au-dessus de zéro chaque fois que la moyenne à 10 barres se situe au-dessus de la moyenne à 20 barres.
Exemple 2, Système de croisement de la ligne zéro (ProOrder)
// Enter long on upward momentum, exit when momentum flips negative
po = PriceOscillator[10,20](close)
IF NOT OnMarket AND po CROSSES OVER 0 THEN
BUY 1 CONTRACT AT MARKET
ENDIF
IF LongOnMarket AND po CROSSES UNDER 0 THEN
SELL AT MARKET
ENDIFTraduit directement la logique de ligne zéro de l'oscillateur en entrées et en sorties. C'est fonctionnellement identique au trading d'un croisement de moyennes mobiles à 10 et 20 périodes.
Exemple 3, Screener d'oscillateur en pourcentage (ProScreener)
// Rank instruments by momentum in percentage terms
po = PriceOscillator[10,20](close)
popct = po / average[10](close) * 100
SCREENER[popct > 1](popct AS "PO %")Convertit l'oscillateur sous sa forme en pourcentage afin que des instruments à des niveaux de prix différents deviennent comparables, puis liste ceux dont la moyenne courte dépasse la moyenne longue de plus de 1 pour cent.
Interprétation
| Lecture | Signification |
|---|---|
| Au-dessus de 0 | Moyenne courte au-dessus de la moyenne longue, momentum haussier. |
| En dessous de 0 | Moyenne courte en dessous de la moyenne longue, momentum baissier. |
| Croisement au-dessus de 0 | Croisement haussier des moyennes sous-jacentes. |
| Croisement en dessous de 0 | Croisement baissier des moyennes sous-jacentes. |
| En hausse tout en restant positif | Tendance en accélération. |
| En baisse tout en restant positif | Tendance toujours haussière mais qui perd de l'allure. |
Les divergences entre le prix et l'oscillateur, comme des sommets de prix plus hauts avec des sommets d'oscillateur plus bas, se lisent de la même manière qu'avec les autres outils de momentum, comme des signes précoces d'un mouvement qui s'affaiblit.
Erreurs et pièges courants
- Des périodes inversées inversent le signe.
PriceOscillator[20,10](close)inverse chaque lecture, rendant négatives les configurations haussières. GardezSstrictement inférieur àL. - Les valeurs en points ne sont pas comparables d'un instrument à l'autre. La sortie brute est en unités de prix, donc une valeur de 5 signifie quelque chose de différent à chaque niveau de prix. Utilisez la forme en pourcentage pour les screeners et le travail entre marchés.
- Le type de moyenne mobile est fixe. La méthode de moyennage interne à l'instruction n'est pas un paramètre. Lorsqu'un type précis est requis, par exemple exponentiel, construisez l'oscillateur manuellement à partir de
ExponentialAverageappels. - Faux signaux dans les marchés en range. Comme tout système à deux moyennes, la ligne zéro est franchie à répétition lorsque le prix évolue latéralement. Un filtre de tendance ou un seuil de distance minimale réduit les faux signaux.
Instructions liées
MACD, le cas particulier exponentiel à 12 et 26 périodes avec une ligne de signal.MACDLine, la ligne de différence du MACD seule.Average, brique de base de la moyenne mobile simple.ExponentialAverage, pour construire manuellement une variante exponentielle.Momentum, différence de prix sur une période de calcul fixe.ROC, taux de variation en pourcentage.DPO, oscillateur de prix détendancé, le prix par rapport à une moyenne décalée.VolumeOscillator, la même construction à deux moyennes appliquée au volume.