LowestBars
LowestBars dans ProBuilder renvoie le décalage en bars jusqu'à la valeur la plus basse d'une série sur une période, 0 signifiant que le bar courant détient la valeur la plus basse.
Syntaxe
offset = LowestBars[Period](source)Paramètres
| Nom | Type | Par défaut | Description |
|---|---|---|---|
Period | entier | requis | Nombre de bars passés inclus dans la recherche, en comptant le bar courant. |
source | série | requis | La série de données à analyser, par exemple close, low, high, ou toute série calculée. |
Comment ça marche
LowestBars analyse les derniers Period bars de la série donnée et indique la position du minimum sous forme de décalage par rapport au bar en cours. Le décompte commence à zéro : 0 est le bar en cours, 1 le bar précédent. La fonction complémentaire Lowest renvoie la valeur minimale elle-même, tandis que LowestBars renvoie l'emplacement de ce minimum, ce dont la logique de timing a généralement besoin.
Lorsque plusieurs bars partagent la même valeur minimale, la fonction renvoie l'occurrence la plus proche du bar actuel, c'est-à-dire le plus petit décalage. Si le graphique contient moins de bars que Period, la recherche couvre simplement les bars disponibles.
Le décalage s'intègre naturellement aux expressions indexées par bar. Par exemple, close[LowestBars[20](low)] lit la clôture du bar où le plus bas sur 20 bars a été inscrit. Le résultat sert aussi de mesure de fraîcheur : un petit décalage signifie que le marché a imprimé son plus bas de période récemment, un grand décalage que ce plus bas vieillit et n'a pas été remis en cause depuis de nombreux bars.
Selon le comportement de la source, la fonction renvoie -1 lorsqu'aucune valeur plus basse ne peut être déterminée dans la plage demandée ; le code qui utilise le résultat comme indice doit donc se prémunir contre les valeurs négatives.
Exemples
Exemple 1, Localisation du plus bas sur 20 bars (Indicateur)
// Offset in bars to the lowest low of the last 20 bars
a = LowestBars[20](low)
RETURN aLa valeur tracée retombe à 0 chaque fois que le bar courant inscrit un nouveau plus bas sur 20 bars, puis monte d'une unité à chaque bar qui ne parvient pas à le franchir.
Exemple 2, Entrer uniquement quand le plus bas est ancien (ProOrder)
// The 50-bar lowest low must be at least 20 bars old,
// meaning no fresh low has printed recently
lowAge = LowestBars[50](low)
IF lowAge >= 20 AND close crosses over average[20](close) THEN
BUY 1 CONTRACT AT MARKET
ENDIF
SET STOP %LOSS 2LowestBars agit comme un filtre de stabilisation : la stratégie n'achète que lorsque le plus bas de période le plus récent a été inscrit il y a au moins 20 bars.
Exemple 3, Recherche d'un nouveau plus bas de période (ProScreener)
// Flag instruments that printed their 100-bar low within the last 3 bars
recentLow = LowestBars[100](low)
SCREENER[recentLow <= 3 AND recentLow >= 0] (recentLow AS "Bars since low")Le screener liste les marchés qui se négocient à un nouveau plus bas sur 100 bars ou près de celui-ci et indique il y a combien de bars ce plus bas s'est produit.
Erreurs et pièges courants
- Décalage confondu avec valeur. LowestBars renvoie un nombre de bars, pas un prix. Pour lire le minimum lui-même, utilisez
Lowest[Period](source), ou indexez la série avec le décalage. - Comptage à partir de zéro. Un résultat de 0 désigne le bar courant. Traiter 0 comme "aucun plus bas trouvé" écarte silencieusement le cas le plus important, un nouveau plus bas sur le bar en cours d'évaluation.
- Résultat négatif utilisé comme indice. Quand la fonction ne trouve pas de valeur inférieure, elle renvoie -1, et des expressions comme
low[LowestBars[20](low)]puis indexer un décalage négatif. Vérifiez le résultat avant de l'utiliser comme index. - Les égalités se résolvent en faveur du bar le plus proche. Lorsque deux bars partagent exactement le même minimum, le plus petit décalage l'emporte. Une logique qui attend l'occurrence la plus ancienne interprétera mal les séries plates ou présentant des gaps.
Instructions liées
Lowest, renvoie la valeur la plus basse d'une série sur une période.Highest, renvoie la valeur la plus haute d'une série sur une période.HighestBars, décalage en bars jusqu'à la valeur la plus haute, la fonction miroir.BarsSince, compte les bars depuis la dernière fois qu'une condition était vraie.BarIndex, position du bar courant dans l'historique chargé, en base zéro.Summation, somme une série sur une période.DRAWTEXT, affiche des valeurs sur le graphique, utile pour vérifier les décalages.