Problème de traçage d'une ligne horizontale pour signal

Viewing 9 posts - 1 through 9 (of 9 total)
  • Author
    Posts
  • #129530 quote
    Roland57800
    Participant
    Veteran

    Bonjour,

    J’essaye désespérément de tracer une ligne horizontale sur l’équivalent de 4 ou 5 chandeliers à venir pour marquer le signal

    à partir du chandelier qui donne ce dernier.

    Le code que j’utilise fonctionne très bien en dessous des graphiques et me donne les signaux.

    je voulais l’adapter pour le mettre sur le graphique des prix pour me tracer cette petite ligne horizontale

    En fait avec le bout de code, les lignes se tracent à la verticale sur le chandelier qui donne le signal.

    signal = 0
    
    sl=((high/low)-1)*100
    
    if sl <= seuil and sl = lowest[periode](sl) and close > WeightedAverage[4](close) then
    
    signal = 1
    
    if signal >0 then
    
    hourlyHigh = Highest[barindex – lastHourBarIndex](High)[1]
    lastHourBarIndex = BarIndex
    DRAWSEGMENT(lastHourBarindex,BarIndex,lastHourBarindex,signal) coloured(255,0,0) STYLE(dottedline,1)
    
    endif
    
    endif
    return

    une aide pour résoudre ce problème serait la bienvenue. merci d’avance

    Cordialement

    #129531 quote
    Roland57800
    Participant
    Veteran

    Je viens de me rendre compte , j’ai oublié de préciser

    Les variables   :

    seuil =3
    
    periode = 5
    #129533 quote
    robertogozzi
    Moderator
    Master

    Utilisez toujours le bouton “Insert PRT Code” lorsque vous mettez du code dans vos messages pour faciliter la lecture par les autres.

    Merci 🙂

    #129534 quote
    robertogozzi
    Moderator
    Master

    La variable Signal a la valeur 0 ou 1, donc le segment est imprimé au prix 1 ou 0, il semble donc invisible.

    À la ligne 13, remplacez la variable au prix de laquelle vous souhaitez imprimer le segment, par exemple:

    DRAWSEGMENT(lastHourBarindex,BarIndex,lastHourBarindex,hourlyHigh) coloured(255,0,0) STYLE(dottedline,1)
    #129563 quote
    Roland57800
    Participant
    Veteran

    Merci Roberto,

    je vois qu’il y en  qui travail même le dimanche.

    Les lignes sont toujours verticales. c’est pas bon. merci en tout cas.

    J’ai retravaillé sur le code et j’ai trouvé une autre solution.

    Toutefois, Il me reste juste un petit problème, c’est que le segment horizontal ne se positionne pas bien sur le plus haut du 

    plus petit chandelier lors du signal.

    Je suppose que cela provient de highest,   une idée pour résoudre ce petit problème qui subsiste

    Merci d’avance

    Cordialement

     

    signal = 0
    
    sl=((high/low)-1)*100
    
    if sl <= seuil and sl = lowest[periode](sl)  and close > WeightedAverage[4](close)  then
    
    signal = 1
    
    if signal >0  then
    periode = 5
    
    Resistance = highest [periode] (close)
    DRAWSEGMENT(BarIndex + (periode),Resistance,BarIndex,Resistance) coloured(30,144,255) STYLE(line,2)
    
    
    endif
    
    endif
    return
    #129592 quote
    Roland57800
    Participant
    Veteran

    Je viens de corriger le problème en partie.

    Le segment se positionne correctement sur le chandelier qui déclenche le signal, au plus haut.

    reste un petit souci, le segment n’est pas horizontal (voir l’image)

    Doc1.doc
    #129855 quote
    Nicolas
    Keymaster
    Master

    Merci de poster les images en tant image attachée et non dans des documents Word la prochaine fois. Je vais relire le sujet pour bien comprendre.

    #129856 quote
    Nicolas
    Keymaster
    Master

    C’est logique, à aucun moment tu cherches à savoir quelle est la coordonnée en abscisse (barindex) qui a connu le plus haut du Close, j’ai corrigé en le cherchant dans une boucle où cette valeur est trouvée et donnée à la variable ‘mybar’.

    signal = 0
    seuil =3
    
    periode = 5
    
    sl=((high/low)-1)*100
    
    if sl <= seuil and sl = lowest[periode](sl)  and close > WeightedAverage[4](close)  then
    
    signal = 1
    
    if signal >0  then
    periode = 5
    
    Resistance = highest [periode] (close)
    
    for i = 0 to periode-1 do 
    if close[i]=resistance then 
    mybar=barindex[i]
    break
    endif
    next
    
    DRAWSEGMENT(mybar + (periode),Resistance,mybar,Resistance) coloured(30,144,255) STYLE(line,2)
    endif
    
    endif
    return

    Les segments partent bien maintenant de la bonne barre qui correspond à la valeur de “Resistance”.

    #129910 quote
    Roland57800
    Participant
    Veteran

     

    Merci pour la réponse Nicolas,

     

    Bonne soirée

    Cordialement

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

Problème de traçage d'une ligne horizontale pour signal


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
Summary

This topic contains 8 replies,
has 3 voices, and was last updated by Roland57800
5 years, 10 months ago.

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