TRend lines

Viewing 13 posts - 16 through 28 (of 28 total)
  • Author
    Posts
  • #56059 quote
    Phil4910
    Participant
    Average

    Merci Nicolas, on y est presque!

    La trendline supérieure se dessine correctement mais la trendline inférieure semble ignorer la dernière valeur à prendre en compte pour se positionner correctement -> cfr image jointe (j’ai remplacé dans ton code les “close” par les “high” et “low” et cp = 2)

    Encore merci.

    Phil4910

    Sans-titre.png Sans-titre.png
    #56069 quote
    Nicolas
    Keymaster
    Master

    D’où proviennent ces flèches svp ? Sont-elles générées par le même code utilisé pour détecter les fractals ?

    Pour tester, merci d’indiquer le timeframe, l’instrument et la date en question.

    #56072 quote
    Phil4910
    Participant
    Average

    Oui, c’est le code qui détecte les fractales (dans mon exemple illustré en cp = 2).

    L’image jointe était le dax30 d’aujourd’hui en UT 100 ticks et de 10:58:42 pour le 1er “OK” jusqu’à 12:11:35 pour le dernier “OK”.

    Phil4910

    #56075 quote
    Nicolas
    Keymaster
    Master

    Oui c’est logique, puisqu’en retournant dans le passé depuis la valeur actuelle, on vérifie si à chaque barre il existe ou non un fractal, hors ce fractal n’est peut être pas encore apparu sur celle-ci puisque un fractal apparaît après coup (après confirmation du plus haut ou plus bas).

    Voici la version avec les Highs et Lows plutôt que les Close pour la détection des Fractals:

    defparam drawonlastbaronly = true
    defparam calculateonlastbars = 1000
    
    cp = 2
    lookback = 200
    
    if high[cp] >= highest[2*cp+1](high) then
    LH = 1
    else
    LH=0
    endif
    
    if low[cp] <= lowest[2*cp+1](low)  then
    LL= -1
    else
    LL=0
    endif
    
    if LH=1 then
    oldTOPy = TOPy[1]
    oldTOPx = TOPx[1]
    TOPy = high[cp]
    TOPx = barindex[cp]
    endif
    
    if LL = -1 then
    oldBOTy = BOTy[1]
    oldBOTx = BOTx[1]
    BOTy = low[cp]
    BOTx = barindex[cp]
    endif
    
    //trend line
    firsttopy=0
    firstboty=0
    for i = 0 to lookback do
    if oldtopy[i]>topy then
    firsttopY=oldtopy[i]
    firsttopX=oldtopx[i]
    endif
    if oldboty[i]<boty then
    firstbotY=oldboty[i]
    firstbotX=oldbotx[i]
    endif
    if firsttopy>0 and firstboty>0 then
    DRAWLINE(firstTOPx,firstTOPy,TOPx,TOPy)coloured(112,169,161)
    DRAWLINE(firstBOTx,firstBOTy,BOTx,BOTy)coloured(211,78,36)
    break
    endif
    next
    
    return
    #56079 quote
    Phil4910
    Participant
    Average

    Oui, je comprends Nicolas. Cependant, dans mon illustration, la fractale était bien présente puisque la flèche ne s’affiche que lorsque la fractale est confirmée.

    Ce n’est pas grave si tu ne trouves pas l’origine de ce petit bug, je te remercie pour le temps que tu as consacré à ma demande.

    Phil4910

    #56086 quote
    Nicolas
    Keymaster
    Master

    Oui tu as raison, je pense avoir résolu le problème en faisant 2 boucles, une pour chercher le point haut et une autre pour le point bas, c’est ma faute … 🙁

    defparam drawonlastbaronly = true
    defparam calculateonlastbars = 1000
    
    cp = 2
    lookback = 200
    
    if high[cp] >= highest[2*cp+1](high) then
    LH = 1
    else
    LH=0
    endif
    
    if low[cp] <= lowest[2*cp+1](low)  then
    LL= -1
    else
    LL=0
    endif
    
    if LH=1 then
    oldTOPy = TOPy[1]
    oldTOPx = TOPx[1]
    TOPy = high[cp]
    TOPx = barindex[cp]
    endif
    
    if LL = -1 then
    oldBOTy = BOTy[1]
    oldBOTx = BOTx[1]
    BOTy = low[cp]
    BOTx = barindex[cp]
    endif
    
    //trend line
    firsttopy=0
    firstboty=0
    for i = 0 to lookback do
    if oldtopy[i]>topy then
    firsttopY=oldtopy[i]
    firsttopX=oldtopx[i]
    break
    endif
    next
    for i = 0 to lookback do
    if oldboty[i]<boty then
    firstbotY=oldboty[i]
    firstbotX=oldbotx[i]
    break
    endif
    next
    
    if firsttopy>0 and firstboty>0 then
    DRAWLINE(firstTOPx,firstTOPy,TOPx,TOPy)coloured(112,169,161)
    DRAWLINE(firstBOTx,firstBOTy,BOTx,BOTy)coloured(211,78,36)
    endif
    
    return
    #56116 quote
    Phil4910
    Participant
    Average

    Bon, j’ai laissé tourner ton dernier code depuis hier sur 2 UT différentes en vérifiant de temps en temps et il semble que les lignes se dessinent conformément à ce que je souhaitais 🙂

    Merci Nicolas!

    Phil4910

    #56118 quote
    Nicolas
    Keymaster
    Master

    Super ! et si tu nous décrivais un peu ta façon d’utiliser l’indicateur en question ? Je suis certain que cela serait intéressant pour plein de monde 🙂 Merci.

    #56119 quote
    Phil4910
    Participant
    Average

    Avec plaisir.

    Je l’utilise en cassure de triangle sur un dépassement du plus bas/plus haut de la bougie de cassure en scalping agressif (1 à 2 pips).

    Bien sûr, il faut accepter la frustration de prendre peu alors que le cours part dans ton sens mais ce qui est pris est pris!

    Phil4910

    #56121 quote
    Nicolas
    Keymaster
    Master

    Merci et comment gères-tu les pertes latentes, si le prix réintégre le triangle avant d’avoir battu le spread/commission ?

    #56123 quote
    Phil4910
    Participant
    Average

    Mon stop loss est placé juste sous le plus bas/plus haut de la bougie qui a cassé le triangle sauf si la bougie est “anormalement” importante; dans ce cas je ne prends pas le trade. Il faut aussi que la bougie de cassure soit “belle” (éviter les bougies d’indécision) et, bien sûr, surveiller les chiffres clés.

    Encore une fois c’est du scalping agressif pour quelques pips et il arrive qu’il faille plusieurs trades positifs pour rattraper un seul négatif.  La perte fait partie du trading!

    Phil4910

    Nicolas and paulnux thanked this post
    #56150 quote
    swapping
    Participant
    Master

    Bien Phil, je pense qu’il y a du potentiel mais attention à l’overdose …

    je vais suivre avec intérêt car cet exemple donné par Nicolas couplé à quelques lignes de code supplémentaires pour visualiser des niveaux (haut, bas) peut le faire “grave…”

    paulnux thanked this post
    #56723 quote
    paulnux
    Participant
    Average

    Mon stop loss est placé juste sous le plus bas/plus haut de la bougie qui a cassé le triangle sauf si la bougie est “anormalement” importante; dans ce cas je ne prends pas le trade. Il faut aussi que la bougie de cassure soit “belle” (éviter les bougies d’indécision) et, bien sûr, surveiller les chiffres clés. Encore une fois c’est du scalping agressif pour quelques pips et il arrive qu’il faille plusieurs trades positifs pour rattraper un seul négatif. La perte fait partie du trading! Phil4910

    Bonjour Phil4910,

    Sur quelle unité de temps ou de tick scalpe tu ?

    Cordialement

Viewing 13 posts - 16 through 28 (of 28 total)
  • You must be logged in to reply to this topic.

TRend lines


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
author-avatar
Phil4910 @phil4910 Participant
Summary

This topic contains 27 replies,
has 6 voices, and was last updated by paulnux
8 years, 1 month ago.

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 08/01/2017
Status: Active
Attachments: 4 files
Logo Logo
Loading...