DrawSegment

Viewing 10 posts - 1 through 10 (of 10 total)
  • Author
    Posts
  • #15105 quote
    jeanphi0034
    Participant
    Junior

    Bonjour a tous

    J’ai écrit un le code d’un indicateur basé sur le RSI et voudrais visualiser sur les cours des lignes correspondants au plus haut et plus bas des 20 dernières périodes

    Je matérialise ce plus haut ou ce plus bas par un segment de droite, je pense que je ne peux pas utiliser les pointillés.

    Or je vois que les segments s’affichent sur l’indicateur lui même et non sur les cours.

    Quelqu’un a t il une idée pour résoudre mon souci

    D’avance merci

     

    Jean Philippe

    #15106 quote
    Nicolas
    Keymaster
    Master

    Oui il faudrait retrouver les valeurs des chandeliers en fonction des plus haut et plus bas trouvé sur le RSI et tracer la droite avec ces coordonnées et en appliquant l’indicateurs sur le prix.

    Avec ton code, ça devrait être rapide à corriger, merci.

    #15139 quote
    jeanphi0034
    Participant
    Junior

    Merci pour ta reponse, tu trouveras ci-dessous le code de mon indicateur:

    // SIGNAUX RSI JPHP
    
    signal=0
    ME10=exponentialaverage[10]
    NbBarLimit = 4
    periode=20
    MyRSIprevious=RSI[14](close)[1]
    MyRSI=RSI[14](close)
    //vitesse =ME10-ME10[1]
    
    C1= MyRSIprevious>70
    C2=MyRSI<70
    C3=MyRSIprevious<30
    C4=MyRSI>30
    C5=close crosses over ME10
    C6=close crosses under ME10
    //C9=vitesse>0
    //C10=vitesse<0
    
    C7= C1 and C2
    C8=C3 and C4
    
    if C7 or C8 then
    MyIndex = BarIndex
    warning =1
    IF C7 then //surachat, on vend
    resistance=highest[periode](high)
    ENDIF
    IF C8 then //survente, on achete
    support=lowest[periode](low)
    ENDIF
    ENDIF
    IF BarIndex <= MyIndex + NbBarLimit THEN
    if C6 and warning=1 then //surachat, on vend
    signal=-1
    warning =0
    
    y1=resistance
    for p = 0 to periode do
    if high[p]=resistance then
    x1 = barindex[p]
    endif
    next
    y2=y1
    x2=x1+periode
    DRAWSEGMENT(x1,y1,x2,y2)coloured(255,10,10)
    
    endif
    If C5 and warning =1 then //survente, on achete
    signal=1
    warning=0
    
    y1=support
    for p = 0 to periode do
    if low[p]=support then
    x1 = barindex[p]
    endif
    next
    y2=y1
    x2=x1+periode
    DRAWSEGMENT(x1,y1,x2,y2)coloured(10,255,10)
    
    endif
    Else
    warning =0
    ENDIF
    
    Return signal
    #15153 quote
    Nicolas
    Keymaster
    Master

    Félicitations pour le code de ton indicateur. C’est très visuel et il fonctionne correctement sur le graphique du prix si tu l’appliques bien sur celui-ci (voir images).

    Entre les lignes 41/42 et 56/57, tu peux ajouter l’instruction break pour sortir de la boucle, car tu as trouvé ce que tu cherchais, inutile de continuer à laisser courir le code 🙂

    support-and-resistance-prorealtime.png support-and-resistance-prorealtime.png add-indicator-on-price-prorealtime.jpg add-indicator-on-price-prorealtime.jpg
    #15165 quote
    supertiti
    Participant
    Master

    Bonjour,

    Cet indicateur ne fonctionne qu’en intraday ou peut-on l’utiliser en daily ou weekly ?

    En daily si j’ajoute “break” aux lignes proposées cela décale les signaux !?

    d’autre part ,toujours en daily, j’ai une ligne ( en jaune)  sur “zero” qui me ressort les signaux et rétrécie le graphe …

    so what ?

    signaux-RSI-JPHP.jpg signaux-RSI-JPHP.jpg
    #15198 quote
    jeanphi0034
    Participant
    Junior

    Oui les amis j’ai bien compris, pour tracer les lignes de support et de resistance il faut appliquer l’indicateur sur les prix directement

    mais comme le remarque supertiti, l’affichage des signaux +1 -1 vient retrecir la fenetre des prix.

    Il faut donc creer 2 indicateurs, l’un a appliquer sur les prix sans les signaux +1 et -1 et l’autre a afficher sur une 2eme fenetre sans les niveaux

    ou lors peut etre existe t il une instruction pour afficer separement le signal dans une autre fenetre ?

    Merci encore

    #15207 quote
    Nicolas
    Keymaster
    Master

    Oui c’est logique que la valeur retournée dans RETURN s’affiche dans le graphique, elle est à 1 ou -1. Si tu souhaites afficher des signaux dans le graphique, tu peux utiliser ma méthode expliquée dans cette vidéo récente sur les signaux de trading.

    #15215 quote
    supertiti
    Participant
    Master

    Bonjour à tous,

    J’ai suivi les instructions et réalisé le code pour avoir les signaux sur le graphe sans les problèmes de proportions.

    Je me suis permis de mettre en variables : periode = la période et p1 = la période du RSI ( en jouant sur la période du RSI on peut étendre les lignes de signaux jusqu’au décalage ainsi nous délimitons mieux les canaux de supports et resistances)

    exemple avec le graphe de AXA

    bonne journée et bons trades.

    // SIGNAUX RSI JPHP on chart  PRC    20.10.2016
    
    //signal=0
    ME10=exponentialaverage[10]
    NbBarLimit = 4
    // periode=20
    MyRSIprevious=RSI[p1](close)[1]
    MyRSI=RSI[p1](close)
    //vitesse =ME10-ME10[1]
    
    C1= MyRSIprevious>70
    C2=MyRSI<70
    C3=MyRSIprevious<30
    C4=MyRSI>30
    C5=close crosses over ME10
    C6=close crosses under ME10
    //C9=vitesse>0
    //C10=vitesse<0
    
    C7= C1 and C2
    C8=C3 and C4
    
    if C7 or C8 then
    MyIndex = BarIndex
    warning =1
    IF C7 then //surachat, on vend
    resistance=highest[periode](high)
    ENDIF
    IF C8 then //survente, on achete
    support=lowest[periode](low)
    ENDIF
    ENDIF
    IF BarIndex <= MyIndex + NbBarLimit THEN
    if C6 and warning=1 then //surachat, on vend
    //signal=-1
    //warning =  0
    
    y1=resistance
    for p = 0 to periode do
    if high[p]=resistance then
    x1 = barindex[p]
    //break
    endif
    next
    y2=y1
    x2=x1+periode
    DRAWSEGMENT(x1,y1,x2,y2)coloured(255,10,10)
    endif
    
    If C5 and warning =1 then //survente, on achete
    //signal=1
    //warning=  0
    
    y1=support
    for p = 0 to periode do
    if low[p]=support then
    //break
    x1 = barindex[p]
    endif
    next
    y2=y1
    x2=x1+periode
    DRAWSEGMENT(x1,y1,x2,y2)coloured(10,255,10)
    endif
    endif
    //Else
    //warning =  0
    //ENDIF
    
    Return //signal
    
    // Variables :
    // periode = 20 entier par défaut 
    // p1 = 14 entier periode RSI 
    
    signaux-RSI-JPHP-on-chart.jpg signaux-RSI-JPHP-on-chart.jpg
    #15220 quote
    supertiti
    Participant
    Master

    errare humanum est,  il faut entendre periode , non pas periode du RSI ! désolé

    ( en jouant sur la période  on peut étendre les lignes de signaux jusqu’au décalage ainsi nous délimitons mieux les canaux de supports et resistances)

    #15221 quote
    Nicolas
    Keymaster
    Master

    Le problème du “break” est à la ligne 57, il faut bien entendu avoir donné une valeur à la variable x1 avant de sortir de la boucle, donc intervertir les lignes 57 et 58.

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

DrawSegment


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
Summary

This topic contains 9 replies,
has 3 voices, and was last updated by Nicolas
9 years, 4 months ago.

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 10/18/2016
Status: Active
Attachments: No files
Logo Logo
Loading...