Affichage d'une info que sur la dernière barindex

Viewing 8 posts - 1 through 8 (of 8 total)
  • Author
    Posts
  • #121279 quote
    Luciole
    Participant
    Senior

    Bonjour,

    J’aimerais afficher le texte suivant uniquement sur la dernière barre .

    Dans l’état actuel il s’affiche sur toute les barres, ça pollue la vue.

    J’ai essayé avec barindex[0] en pensant que ça réduirait l’affichage à la dernière mais visblement non .

     

    Merci pour votre aide.

    mm100 = average[100,mmtype]
    mm20 = average[20,mmtype]
    
    If close > mm100 then
    if close > mm20 then
    DrawText("ok down",barindex,open-1,Serif,Bold,12) coloured(0,255,0,alpha)
    else
    DrawText("not ok",barindex,open+1,Serif,Bold,12) coloured(255,204,204,alpha)
    endif
    endif
    
    If close < mm100 then
    if close < mm20 then
    DrawText("ok up",barindex,open-1,Serif,Bold,12) coloured(255,51,51,alpha)
    else
    DrawText("ok",barindex,open+1,Serif,Bold,12) coloured(229,255,204,alpha)
    endif
    endif
    
    Return
    #121281 quote
    robertogozzi
    Moderator
    Master

    En première ligne:

    DEFPARAM DrawOnLastBarOnly = true
    Luciole thanked this post
    #121288 quote
    Luciole
    Participant
    Senior

    Merci Roberto , j’essayais avec calculateonlastbars … merci !

    #121539 quote
    Nicolas
    Keymaster
    Master

    calculateonlastbars limite les calculs sur les derniers X chandeliers. Par exemple sur un graphique comportant 1000 unités, si on veut calculer et afficher son indicateur uniquement que sur les 200 derniers alors, on fait un

    defparam calculateonlastbars=200

    c’est donc deux fonctionnalités complètement différente mais parfois complémentaire, tout dépend de ce que l’on souhaite faire ! 😉

    Luciole thanked this post
    #215612 quote
    Michael75014
    Participant
    New

    Bonjour à tous,

    Je souhaite également afficher des informations et objets sur la dernière barindex.
    Or, je souhaite également afficher d’autres objets sur les barindex précédentes.

    Donc je ne peux pas à ma connaissance utiliser “DEFPARAM DrawOnLastBarOnly = true”.

    J’ai bricoler un petit code qui semble fonctionner très souvent. Mais pour un raison que je ne comprends pas, il arrive parfois que l’objet de la dernière barre se fixe. Je n’ai pas remarquer d’heure, de jour ou d’instrument particulier. Ça semble “bugger” aléatoirement, mais heureusement pas trop souvent. Ça n’en reste pas moins gênant.

    Quelqu’un saurait-il résoudre ce problème ?

    Merci d’avance pour vos suggestions.

    if islastbarupdate then
    if close <> $lastclose[0] or (second <> 0 and close - $lastclose[0] = 0) then
    
    drawtext(barindex, barindex+5, close) // ou autre objet
    
    endif
    $lastclose[0] = close
    endif
    
    return
    Capture-decran-2023-06-03-a-17.03.46.png Capture-decran-2023-06-03-a-17.03.46.png
    #215631 quote
    Michael75014
    Participant
    New

    Bonjour à tous,

    Juste un petit message pour un update : aujourd’hui, sur le bitcoin (comme hier), aucun problème. L’objet texte ne se fixe pas sur les barres précédentes et se met bien à jour sur la dernière barre.

    Je ne comprends pas…

    Merci.

    #215658 quote
    Nicolas
    Keymaster
    Master

    Puisqu’on ne peut pas supprimer un objet déjà tracé, le comportement que tu as sur ton image est normale. A chaque fois que tu updates ton texte, il s’affiche sur les coordonnées que tu as renseigné, et donc reste visible dans l’historique.

    Tu pourrais utiliser des coordonnées en pixels cependant pour fixer ton texte en haut de l’écran, par exemple:

    drawtext ("test", -100 ,-20) anchor(topright,xshift,yshift)
    
    return
    #215659 quote
    Michael75014
    Participant
    New

    Bonjour Nicolas,

    Merci pour ta réponse. Je ne savais pas qu’on pouvait ancrer le texte avec des coordonnées en pixels. Je vais étudié cela. Pour autant ça serait pour d’autres utilisations.
    Car dans mon exemple je n’ai mis qu’un objet texte, mais je me sers de ce bout de code pour afficher de manière dynamique des segments, des points ou tout autre objet.

    Je comprends qu’un objet fixé ne peut être supprimé. D’où l’intérêt de ce code. De ce que j’ai remarqué, je vais dire que 70% du temps, il agit comme “DEFPARAM DrawOnLastBarOnly = true” tout en me laissant l’opportunité de fixer d’autres objets sur le reste du graphique. C’est ce que j’attends ce ce code.
    Donc ce que je cherche à comprendre, c’est pourquoi, les 30 % restants du temps, les objets se fixent.

    Je ne sais pas si je suis assez clair. Je pourrais peut-être faire deux captures d’écran filmées pour montrer les deux types de retour que me fait le code.

    Merci,

    Michaël.

Viewing 8 posts - 1 through 8 (of 8 total)
  • You must be logged in to reply to this topic.

Affichage d'une info que sur la dernière barindex


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
Summary

This topic contains 7 replies,
has 2 voices, and was last updated by Michael75014
2 years, 9 months ago.

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 03/05/2020
Status: Active
Attachments: 1 files
Logo Logo
Loading...