Calage graphique X,Y, Value d’un objet

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #266136 quote
    Bernard13Bernard13
    Participant
    Veteran

    Bonjour,

    Sur tous les graphiques, la plateforme CTrader affiche en haut à droite de l’écran un petit segment vertical représentant l’echelle en nombre de points.

    L’algo ci-dessous reproduit ce concept visuel qui précise exactement en un seul coup d’oeil la valeur de N points.

    Je voudrais m’affranchir du Lowest et ancrer une bonne fois pour toute l’objet à droite en conservant exactement son ajustement en points sur n’importe quelle UT. Est-ce possible ?

    Avec l’instruction Anchor, Top ou Bottom peuvent me servir de référence de calage, mais dans ce cas je ne peux plus utiliser Value.

    Merci d’avance.

    DEFPARAM DrawOnlastBarOnly= True
    Bars= 60
    //----- Calage rectangle
    xRight= -50 // A droite de l'écran
    hRec= 10 // Hauteur du rectangle: 10 points de référence
    //----- Reference de l'objet
    yLow= Lowest[Bars](Low)
    //----- Display
    DrawSegment(BarIndex, yLow, Barindex - Bars + 1, yLow) Coloured("Cyan")
    DrawRectangle(xRight, yLow, xRight - 10, yLow + hRec) Coloured("Cyan") BorderColor("Cyan") Anchor(Right, xShift, Value)
    DrawText("#hRec# Points", xRight, yLow + hRec + 0.5, Dialog, Bold, 16) Coloured("Cyan") Anchor(Right, xShift, Value)
    RETURN yLow AS "yLow"
    
    
    


    Ligne-10-Capture-decran-2026-11-10-093521.png Ligne-10-Capture-decran-2026-11-10-093521.png
    #266140 quote
    Iván GonzálezIván González
    Moderator
    Legend

    Salut ! D’après ta description, je ne pense pas que ce soit possible. Dans Anchor chaque axe utilise une seule unité…

    Dans le volet vertical, vous pouvez soit Value (prix), soit yShift (pixels), mais les deux ne peuvent pas être combinés. Franchement, je ne vois pas de solution. Voyons si quelqu’un a une idée.

    Bernard13 thanked this post
    #266144 quote
    Bernard13Bernard13
    Participant
    Veteran

    Hello ! Effectivement, comme lle segment de CTrader est natif, et nous n’avons pas d’équivalence en PRT., peux-être dans une future version …

    Je reste donc avec mes 2 capteurs et 2 jauges flottantes avec Lowest !

    Merci et félicitations pour tout ton travail d’algos remarquables au service de la communauté.


    Iván González thanked this post
    Capteurs-et-Mires-Capture-decran-2026-11-10-132218.png Capteurs-et-Mires-Capture-decran-2026-11-10-132218.png
    #266145 quote
    Bernard13Bernard13
    Participant
    Veteran


    Bernard13 wrote: Hello ! Effectivement, comme le segment de CTrader est natif, et que nous n’avons pas d’équivalence en PRT., peux-être dans une future version … Je reste donc avec mes 2 capteurs et 2 jauges flottantes avec Lowest ! Merci et félicitations pour tout ton travail d’algos remarquables au service de la communauté.

    #266147 quote
    NicolasNicolas
    Keymaster
    Legend

    Bonjour Bernard,

    Iván a raison sur le fond : avec ANCHOR, chaque axe accepte une seule convention. En vertical c’est soit Value (prix), soit yShift (pixels), pas les deux. Et ProBuilder n’a pas accès à l’échelle de prix visible à l’écran, donc impossible de convertir un nombre de pixels en points pour caler la jauge sur le haut ou le bas de la fenêtre tout en gardant sa hauteur exacte.

    Grâce à ProRealAI, j’ai trouvé une solution visuellement plus adaptée, selon moi:

    Par contre, on peut se passer du Lowest en prenant comme référence le dernier cours, qui est toujours visible au bord droit du graphique. Pour éviter que la jauge bouge à chaque tick, j’arrondis cette référence à un multiple de la hauteur de la jauge : elle ne se déplace que par paliers de N points, et ses bords tombent sur des niveaux ronds, ce qui facilite encore la lecture.

    J’ai aussi ajouté pointsize pour que “10 points” corresponde bien à 10 points quel que soit l’instrument (indices, forex, actions).

    DEFPARAM DrawOnLastBarOnly = True
    //----- Paramètres
    hRec = 10 // hauteur de la jauge en points
    xRight = -50 // décalage en pixels depuis le bord droit
    nPas = 2 // nombre de hauteurs de jauge sous le dernier cours
    //----- Conversion points -> prix
    pas = hRec * pointsize
    //----- Référence calée sur le dernier cours, arrondie à un multiple de la jauge
    yRef = round(close / pas) * pas - nPas * pas
    //----- Affichage
    DRAWRECTANGLE(xRight, yRef, xRight - 10, yRef + pas) COLOURED("cyan") BORDERCOLOR("cyan") ANCHOR(right, xshift, value)
    DRAWTEXT("#hRec# Points", xRight, yRef + pas * 1.3, dialog, bold, 16) COLOURED("cyan") ANCHOR(right, xshift, value)
    RETURN
    

    Le paramètre nPas permet de choisir à quelle distance du dernier prix la jauge s’affiche. Avec une valeur négative, elle passe au dessus du cours. En horizontal, elle reste collée au bord droit grâce à xShift, et en vertical elle suit le prix sans dépendre de l’historique des 60 dernières barres. Ce n’est pas exactement le segment natif de cTrader, mais le résultat est stable sur toutes les UT.

    Bons trades !


    Iván González thanked this post
    ljkNQLJzPG-scaled.png ljkNQLJzPG-scaled.png
Viewing 5 posts - 1 through 5 (of 5 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

Calage graphique X,Y, Value d’un objet


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
author-avatar
Bernard13 @bernard13 Participant
Summary

This topic contains 4 replies,
has 3 voices, and was last updated by NicolasNicolas
1 hour, 58 minutes ago.

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