Indicateur ou screener qui détecte le plus bas annuelle d’une valeur.

Viewing 6 posts - 1 through 6 (of 6 total)
  • Author
    Posts
  • #264438 quote
    tolbtolb
    Participant
    New

    Existe t-il unmoyen d’avoir un signal sur les valeurs qui atteignent le plus bas de l’année? Merci

    #264439 quote
    AI-vyAI-vy
    Moderator
    Junior

    Oui, c’est possible, que ce soit via un indicateur (signal visuel sur le graphique) ou via un ProScreener (liste des valeurs en plus bas annuel).

    Principe général :

    • On calcule le plus bas des 252 dernières séances (environ 1 an de bourse).
    • On teste si le plus bas de la bougie courante est égal à ce plus bas annuel.
    • Si oui, on génère un signal (flèche, couleur, ou sélection dans un screener).

    1) Indicateur : signal quand le plus bas annuel est touché

    // Paramètre : nombre de jours pour "1 an" (adapter si besoin)
    DEFPARAM CumulateOrders = False
    
    // Plus bas sur 252 périodes (1 an de bourse environ)
    period = 252
    lowestYear = Lowest[period](Low)
    
    // Condition : la bougie courante fait un nouveau plus bas annuel
    newYearLow = (Low = lowestYear) AND (BarIndex >= period)
    
    // Affichage sur le graphique : flèche sous la bougie
    IF newYearLow THEN
     // Vous pouvez adapter la valeur du signal pour l'affichage
     signal = Low - (AverageTrueRange[14](Close) * 0.5)
    ELSE
     signal = Undefined
    ENDIF
    
    RETURN signal AS "Plus bas annuel"

    Logique de l’indicateur :

    • lowestYear mémorise le plus bas des 252 dernières bougies.
    • newYearLow est vrai uniquement si le Low actuel correspond à ce plus bas annuel.
    • On renvoie une valeur légèrement sous le plus bas pour afficher un marqueur sur la bougie qui touche ce plus bas annuel.

    2) ProScreener : détecter toutes les valeurs au plus bas de l’année

    // Screener : valeurs qui touchent un plus bas annuel
    
    period = 252
    lowestYear = Lowest[period](Low)
    
    // Condition : nouveau plus bas sur 1 an
    newYearLow = (Low = lowestYear) AND (BarIndex >= period)
    
    IF newYearLow THEN
     SCREENER[newYearLow](LowestYear)
    ENDIF

    Logique du screener :

    • Pour chaque titre de votre liste, on calcule le plus bas sur 252 séances.
    • On filtre uniquement les titres pour lesquels Low == lowestYear aujourd’hui.
    • La colonne du screener peut afficher lowestYear ou un score, au choix.

    Adaptations possibles :

    • Pour un vrai plus bas de l’année calendaire (depuis le 1er janvier), il faut remplacer la logique par un calcul qui repart du début d’année (exige du code supplémentaire avec Year et Month, etc.).
    • Vous pouvez aussi élargir le critère (par ex. plus bas sur 126 jours pour ~6 mois).
    #264440 quote
    robertogozzirobertogozzi
    Moderator
    Legend

    Voilà:

    Timeframe(default)
    N = 52
    Timeframe(Weekly)
    LowestPrice = lowest[N](low[1])
    Timeframe(default)
    Condition = (low <= LowestPrice)
    SCREENER[Condition]
    


    #264486 quote
    tolbtolb
    Participant
    New

    Bonjour, Le sreener n’affiche que des petites valeurs aucune grande capitalisation. Que faire? Merci


    #264487 quote
    robertogozzirobertogozzi
    Moderator
    Legend

    Le code n’effectue aucune vérification de la capitalisation boursière.

    En fait, la capitalisation boursière n’est même pas disponible.

    Dans cette version, vous pouvez sélectionner le volume de transactions, qui doit être supérieur à une certaine valeur:

    Timeframe(default)
    N = 52
    Timeframe(Weekly)
    LowestPrice = lowest[N](low[1])
    Timeframe(default)
    Condition = (low <= LowestPrice) AND (Volume > 10000)  //ou 100000, etc...
    SCREENER[Condition]
    
    
    
    #264494 quote
    NicolasNicolas
    Keymaster
    Legend

    On pourrait aussi utiliser une notion de prix de l’action pour filtre, exemple avec le paramètre PrixMini , à modifier à convenance:

    PrixMini = 100 //prix minimum des actions à filtrer
    
    Timeframe(default)
    N = 52
    Timeframe(Weekly)
    LowestPrice = lowest[N](low[1])
    Timeframe(default)
    Condition = (low <= LowestPrice) AND (Volume > 10000) AND (Close >= PrixMini)  //ou 100000, etc...
    SCREENER[Condition]
    
    robertogozzi thanked this post
Viewing 6 posts - 1 through 6 (of 6 total)
  • You must be logged in to reply to this topic.
ProRealAI ProRealAI New

Stuck on this ProBuilder code?

Describe what this topic is trying to build, in plain English, and ProRealAI writes the ProRealTime™ indicator, screener or system for you.

Available in 7 languages
Try ProRealAI

Indicateur ou screener qui détecte le plus bas annuelle d’une valeur.


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
author-avatar
tolb @tolb Participant
Summary

This topic contains 5 replies,
has 4 voices, and was last updated by NicolasNicolas
1 month ago.

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 08/10/2026
Status: Active
Attachments: No files
ProRealCode ProRealCode
Loading...