Three line break

Viewing 11 posts - 1 through 11 (of 11 total)
  • Author
    Posts
  • #5457 quote
    Carl
    Participant
    Average

    Ci-dessous une demande qui a été envoyée à ProRealTime :

    Bonjour,

    Voici un indicateur que je ne trouve pas sur ProRealtime : “Le X Line Break”

    Cet indicateur est assez simple à programmer mais je ne suis pas programmeur… Pourriez-vous, s’il vous plaît, le programmer pour moi ?

    Merci par avance !

    Et une proposition de réponse :

    Vous pouvez afficher cette représentation graphique dans la plateforme ProRealTime depuis la fenêtre “Propriétés – Prix”, puis en sélectionnant le menu déroulant “Style” (voir l’image jointe).

    three-line-break.png three-line-break.png
    #5459 quote
    Doctrading
    Participant
    Master

    Bonjour l’ami,

    Pourquoi programmer un indicateur s’il est déjà par défaut dans la plateforme PRT ?

    Est-ce pour changer les paramètres ?

    Si tu me donnes une indication sur la formule de cet indicateur (par exemple un lien vers un site qui dévoile la formule), je peux le programmer.
    Bonne journée

    #5472 quote
    Eric
    Participant
    Master

    Three lines break code :

    once t=1
    once a0=(close)
    once a1=(close)
    once a2=(close)
    once a3=(close)
    
    if t=1 and close>a3 then
     a0=a1
     a1=a2
     a2=a3
     a3=close
    elsif t=1 and close<a0 then
     t=-1
     a1=a3
     a0=a3
     a3=close
    elsif t=-1 and close<a3 then
     a0=a1
     a1=a2
     a2=a3
     a3=close
    elsif t=-1 and close>a0 then
     t=1
     a1=a3
     a0=a3
     a3=close
    endif
    
    return a0 coloured by t[1] as "cassure"
    #6038 quote
    supertiti
    Participant
    Master

    Bonjour à tous,

     

    On peut se servir du 3 lines break comme un trigger pour les achats / ventes

    je joins un graphe pour illustrer

    3LB.jpg 3LB.jpg
    #93864 quote
    kod
    Participant
    Senior

    Bonjour à tous, Bonjour Nicolas,

    Sur le forum il y a un code de quelques lignes qui donne des bougies exactement identiques aux bougies HAshi.  Genial.

    Par contre je  n ai pas trouvé pour les bougies en  3 lines break. Sur le site, il existe dejà  des approches de codes, three line break, je tourne autour mais je ne les comprends pas du tout..Je peux pas partir de là pour faire une bougie parfaite egale à  celle de prt.

    Est possible de la coder ?

    D avance merci de votre retour

    #93902 quote
    Nicolas
    Keymaster
    Master
    1. Le Three Line Break est dé corrélé du temps, donc graphiquement on ne peut arrêter la plateforme et ne dessiner les bougies que lorsqu’on le souhaite, donc parfaitement identique à celle de la plateforme on ne pourra pas
    2. Sauf erreur de ma part, les codes proposés sur le site, dont celui ci-dessus est conforme ce que calcule la plateforme
    3. Attention, puisque la ligne du Three Line Break se construit en fonction de l’évolution du prix, si le calcule commence quelques bars avant, alors les bougies seront différentes, à l’instar du renko par exemple. Donc si tu veux comparer un indicateur codé avec celui de la plateforme, il faut que leurs historiques commencent exactement au même moment !
    #95623 quote
    kod
    Participant
    Senior

    Bonjour Nicolas, Bonjour à tous,

    Pour repondre à la question de l’ami Doc Quelle utilité de faire une bougie 3 lines break ? Pareil que pour une HA. Pour l’utiliser dans des codes d’indicateurs, ou de backtests, ou de strategies. Comme disait supertiti, cest un souvent un bon trigger. Ci dessous, j’ai ajouté bougies et couleur au code transmis par Eric que je remercie.  J’ai essayé d’obtenir les memes couleurs que celles de la plateforme Certaines bougies sont conformes d’autres non. Si quelqu’un pouvait regarder. Je sais que je ferai pas mieux (je comprends pas bien le code de base :)). D’avance merci.

    once t=1
    once a0=(close)
    once a1=(close)
    once a2=(close)
    once a3=(close)
    
    // couleur tt
    tt=100
    
    if t=1 and close>a3 then
    a0=a1
    a1=a2
    a2=a3
    a3=close
    
    rr=0
    gg=255
    bb=0
    
    //drawcandle(a0,a1,a2,a3)coloured(rr,gg,bb,Tt)//bordercolor (0,0,0)
    
    //drawcandle(a1,a2,a0,a3)coloured(rr,gg,bb,Tt)//bordercolor (0,0,0)
    
    //drawcandle(a2,a1,a0,a3)coloured(rr,gg,bb,Tt)//bordercolor (0,0,0)
    //
    //drawcandle(a1,a0,a2,a3)coloured(rr,gg,bb,Tt)//bordercolor (0,0,0)
    
    drawcandle(a0,a2,a1,a3)coloured(rr,gg,bb,Tt)//bordercolor (0,0,0)
    
    elsif t=1 and close<a0 then
    t=-1
    a1=a3
    a0=a3
    a3=close
    
    rr=170
    gg=0
    bb=0
    
    drawcandle(a1,a1,a2,a3)coloured(rr,gg,bb,Tt)//bordercolor (0,0,0)
    
    elsif t=-1 and close<a3 then
    a0=a1
    a1=a2
    a2=a3
    a3=close
    
    rr=255
    gg=0
    bb=0
    
    drawcandle(a0,a1,a2,a3)coloured(rr,gg,bb,Tt)//bordercolor (0,0,0)
    
    elsif t=-1 and close>a0 then
    t=1
    a1=a3
    a0=a3
    a3=close
    
    rr=0
    gg=139
    bb=0
    
    drawcandle(a0,a1,a2,a3)coloured(rr,gg,bb,Tt)//bordercolor (0,0,0)
    
    endif
    
    //drawcandle(xopen,xhigh,xlow,xclose)coloured(rr,gg,bb,T)bordercolor (0,0,0)
    
    return a0 coloured by t[1] as "cassure"

     

    Edit modérateur : Code ci-dessus édité de format texte à format code PRT, merci d’utiliser directement le bouton “Insert PRT code” dans la création d’un post pour éviter les besoins de reformatage de messages

    3-L-B-bougie-FORUM.itf
    #105104 quote
    Wolf
    Participant
    Average

    Bonjour à tous,

    Je reviens sur le code (celui de Eric, merci beaucoup en passant) ci-dessus calculant les Three Line Break.
    J’ai déjà passé plus d’un jour à tenter un code sans succès.
    Quelqu’un aurait-il une idée ? Voici ce que je tente de faire :

    Sur les indices (chez mon courtier), il y a une coupure durant la nuit de 21h à 7h.
    Chaque journée commence donc avec un gap.
    J’aimerai que le calcul des Three Line Break se “réinitialise” sur la première bougie de chaque journée soit 7h.
    Autrement dit, que le calcul du jour précédant s’arrête à 21h et qu’il reprenne le lendemain à 7h basé sur le prix de la première bougie de ce jour sans prendre en compte l’historique de la veille. (Désolé d’être redondant, mais c’est pour être sur que ma question soit comprise par tous les référentiels d’intelligences, LOL).

    J’ai tenté de nombreuse combinaisons en mettant des conditions de temps avec les fonctions : Time, Day, barindex, intradaybarindex, etc, mais sans aucun succès. Le Three Line Break ignore mes conditions de réinitialisation et considère que le prix continue, comme si j’avais gardé le code d’origine.

    Je vous remercie par avance pour votre aide.
    Je pense que c’est un petit défis de programmation.

    NB, je trade sur des UT M1,M5 et M15

    #207220 quote
    Michael-Jach
    Participant
    New

    Merci pour le code ci dessus.

    Je me permet de faire un update du code pour que graphiquement cela soit un peu plus simple à lire.

     

    once t=1
    once a0=(close)
    once a1=(close)
    once a2=(close)
    once a3=(close)
    
    
    
    
    // couleur tt
    tt=100
    
    if t=1 and close>a3 then
    // SI Bougie précédente est VERTE
    // ET SI :
    // close (bougie courante) > dernière bougie verte (A3)
    // => CONTINUATION HAUSSIERE
    a0=a1
    a1=a2
    a2=a3
    a3=close
    isFirstIndexRedIsDefined = 0
    isFirstIndexGreenIsDefined = 0
    
    rr=0
    gg=255
    bb=0
    
    DRAWRECTANGLE(barindex, a2, barindex[1], a3)coloured(rr,gg,bb)bordercolor(rr,gg,bb)
    //drawcandle(a0,a2,a1,a3)coloured(rr,gg,bb,Tt)//bordercolor (0,0,0)
    
    elsif t=1 and close<a0 then
    // SI Bougie précédente est VERTE
    // ET SI :
    // close (bougie courante) < 1ère bougie verte (A0)
    // => REVERSEMENT BAISSIER
    t=-1
    a1=a3
    a0=a3
    a3=close
    isFirstIndexRedIsDefined = 0
    isFirstIndexGreenIsDefined = 0
    
    rr=255
    gg=0
    bb=0
    
    //drawcandle(a1,a1,a2,a3)coloured(rr,gg,bb,Tt)//bordercolor (0,0,0)
    DRAWRECTANGLE(barindex, a0, barindex[1], a3)coloured(rr,gg,bb)bordercolor(rr,gg,bb)
    
    elsif t=-1 and close<a3 then
    // SI Bougie précédente est ROUGE
    // ET SI :
    // close (bougie courante) < dernière bougie rouge (A3)
    // => CONTINUATION BASSIERE
    a0=a1
    a1=a2
    a2=a3
    a3=close
    isFirstIndexRedIsDefined = 0
    isFirstIndexGreenIsDefined = 0
    
    rr=255
    gg=0
    bb=0
    
    //drawcandle(a0,a1,a2,a3)coloured(rr,gg,bb,Tt)//bordercolor (0,0,0)
    DRAWRECTANGLE(barindex, a2, barindex[1], a3)coloured(rr,gg,bb)bordercolor(rr,gg,bb)
    
    elsif t=-1 and close>a0 then
    // SI Bougie précédente est ROUGE
    // ET SI :
    // close (bougie courante) > 1ere bougie rouge (A0)
    // => REVERSEMENT HAUSSIER
    t=1
    a1=a3
    a0=a3
    a3=close
    isFirstIndexRedIsDefined = 0
    isFirstIndexGreenIsDefined = 0
    
    rr=0
    gg=255
    bb=0
    
    //drawcandle(a0,a1,a2,a3)coloured(rr,gg,bb,Tt)//bordercolor (0,0,0)
    DRAWRECTANGLE(barindex, a2, barindex[1], a3)coloured(rr,gg,bb)bordercolor(rr,gg,bb)
    
    elsif t=-1 and (close >= a1 OR close >= a2 OR close >= a3) and close =< a0 then
    IF isFirstIndexRedIsDefined = 0 THEN
    isFirstIndexRedIsDefined = 1
    firstIndexRed = barIndex[1]
    ENDIF
    // SI Bougie précédente est ROUGE
    // ET SI :
    // close (bougie courante) => 2ère bougie rouge (A1)
    // OU SI close (bougie courante) => 3ème bougie rouge (A2)
    // OU SI close (bougie courante) => dernière bougie rouge (A3)
    // ET SI close (bougie courante) =< 1ere bougie rouge (A0)
    // => ON EST DANS UN RANGE
    
    rr=255
    gg=0
    bb=0
    DRAWRECTANGLE(barindex, a2, firstIndexRed, a3)coloured(rr,gg,bb)bordercolor(rr,gg,bb)
    
    elsif t=1 and (close =< a1 OR close =< a2 OR close =< a3) and close >= a0 then
    IF isFirstIndexGreenIsDefined = 0 THEN
    isFirstIndexGreenIsDefined = 1
    firstIndexGreen = barIndex[1]
    ENDIF
    // SI Bougie précédente est VERTE
    // ET SI :
    // close (bougie courante) =< 2ère bougie verte (A1)
    // OU SI close (bougie courante) =< 3ème bougie verte (A2)
    // OU SI close (bougie courante) =< dernière bougie verte (A3)
    // ET SI close (bougie courante) => 1ere bougie verte (A0)
    // => ON EST DANS UN RANGE
    
    rr=0
    gg=255
    bb=0
    DRAWRECTANGLE(barindex, a2, firstIndexGreen, a3)coloured(rr,gg,bb)bordercolor(rr,gg,bb)
    
    endif
    
    //drawcandle(xopen,xhigh,xlow,xclose)coloured(rr,gg,bb,T)bordercolor (0,0,0)
    
    return a0 coloured by t[1] as "cassure"
    Nicolas, Bodaris, pror and Distincttacos thanked this post
    Capture-decran-2023-01-11-a-11.18.13.png Capture-decran-2023-01-11-a-11.18.13.png
    #224158 quote
    Bodaris
    Participant
    New

    J’écris un petit merci parce que vraiment, je trouve cet indicateur top.

    #231897 quote
    Pasq
    Participant
    New

    Merci pour ce code que je découvre et que je vais tester, suite a une vidéo ici :
    Trading CAC40 (+0.81%): stratégie à 86% de succès? – YouTube https://youtu.be/cmJ86r1WWeE

    J’ai modifié les lignes qui dessinent les rectangles de la façon suivante après avoir déclaré la variable Decal dans les paramètres de la fonction :
    DRAWRECTANGLE(barindex, a2+Decal, barindex[1], a3+Decal)coloured(rr,gg,bb)bordercolor(rr,gg,bb)

    Ceci permet de superposer le TLB avec le graphique des prix en le décalant d’une hauteur variable
    (j’espere que c’est clair)

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

Three line break


Support Plateforme : Graphiques, Données & Courtiers

New Reply
Author
author-avatar
Carl @carl Participant
Summary

This topic contains 10 replies,
has 3 voices, and was last updated by Pasq
1 year, 9 months ago.

Topic Details
Forum: Support Plateforme : Graphiques, Données & Courtiers
Language: French
Started: 04/15/2016
Status: Active
Attachments: 4 files
Logo Logo
Loading...