Condition bougie sur l'une des dernières

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

    Bonjour

    J’essaie de programmer un indicateur avec cette condition :

    indicator1 = BollingerDown[20](close)
    c2a = (close CROSSES OVER indicator1)

    cette condition s’applique sur la bougie en cours et sur la bougie précédente si :

    indicator3 = BollingerDown[20](close)
    c3a = (close[1] CROSSES OVER indicator3[1])

    Voila ma question d’ultra débutant en programmation LOL, comment prendre en compte cette condition sur les bougies allant de 1 à 5 par exemple ?

    Merci par avance

    #92039 quote
    fifi743
    Participant
    Master

    bonjour

    ci j’ai bien compris ta question

    a appliquer sur le prix

    cordialement

    indicator1 = BollingerDown[20](close)
    c2a = (close CROSSES OVER indicator1)
    
    indicator3 = BollingerDown[20](close)
    For i=1 to 5 do
    c3a = (close[i] CROSSES OVER indicator3[i])
    next
    
    if c2a and c3a then
    DRAWARROWUP(barindex, low-4)
    endif
    return
    #92050 quote
    Nicolas
    Keymaster
    Master

    Je n’ai pas bien compris la question non plus 🙂

    Merci fifi, par contre hors de ta boucle, la condition c3a ne serait vrai que si la dernière itération l’était (donc la sur la 5ème uniquement), je ne sais pas si c’est voulu et souhaité selon la demande de Shark (que je n’ai pas compris je le rappelle 😆 )

    #92051 quote
    Shark
    Participant
    Senior

    Merci pour ta réponse c’est exactement ça. J’ai pas l’impression que cela fonctionne.

    Voici le code, j’ai trouvé une solution en répétant les conditions mais il y a certainement plus simple notamment si besoin de remonter plus loin dans le temps

    ACHAT = 0
    VENTE = 0

    indicator2 = BollingerDown[20](close)
    c2a = (low < indicator2)
    indicator3 = BollingerUp[20](close)
    c2v = (high > indicator3)

    indicator4 = BollingerDown[20](close)
    c3a = (low[1] < indicator4[1])
    indicator5 = BollingerUp[20](close)
    c3v = (high[1] > indicator5[1])

    indicator6 = BollingerDown[20](close)
    c4a = (low[1] < indicator6[2])
    indicator7 = BollingerUp[20](close)
    c4v = (high[1] > indicator7[2])

    indicator8 = BollingerDown[20](close)
    c5a = (low[1] < indicator8[3])
    indicator9 = BollingerUp[20](close)
    c5v = (high[1] > indicator9[3])

    IF c2a OR c3a OR c4a OR c5a THEN
    ACHAT = 1
    ENDIF
    IF c2v OR c3v OR c4v OR c5v THEN
    VENTE = -1
    ENDIF
    RETURN ACHAT as “ACHAT”, VENTE as “VENTE”

    #92069 quote
    Shark
    Participant
    Senior

    Merci pour ton retour Nicolas

    Ai je été plus clair dans le précédent message ?

    est ce correct d’écrire : IF c1 AND c2 AND (c3 OR c4 OR c5) AND c6 THEN ?

    #92231 quote
    Nicolas
    Keymaster
    Master

    Pas vraiment plus clair.. d’ailleurs je ne connais pas c1 et c2 🙂

    D’après ce que j’ai compris, tu souhaites savoir si l’une des bandes de Bollinger a été percé dans la barre courante et si oui vérifier si cela a aussi été le cas au moins une fois dans les 4 barres qui précédent ?

    #135249 quote
    oxy75
    Participant
    Average

    Bonjour,

    Je me pose la même question. Mon cas est le suivant :

    C1c = Close crosses over Tenkansen
    C2c = close >highest[10]((high)[1])
    C3c = Volume >800
    C4c = Close[1] or close[2] or close[3] or close[4] or close[5] crosses over Kijunsen
    
    C5c = close[1] or close[2] or close[3] < MM2
    
    Condition3 = C1c and c2c and c3c and c4c and c5c
    If condition3 then
    DRAWARROWdown(barindex[0],high[0]+Averagetruerange[5]/1.5)coloured(255,0,0)
    endif

     

     

    C’est le C4c qui me pose soucis.

    Le débutant que je suis aurait écrit

    C4c = Close[1] or close[2] or close[3] or close[4] or close[5] crosses over Kijunsen

    Deux questions :

    Cette formule est-elle correcte ?

    Et je reviens au message de l’auteur de ce post, effectivement ce n’est pas très pratique de taper les X bougies pour lesquelles on souhaite vérifier la condition. Quelle est la formule idéale ?

    Je dis n’importe quoi (je ne la connait pas) mais une formule comme close[1-10] crosses over …     (le 1-10 étant le nombre de bougies à vérifier sur lesquelles la conditions doits’appliquer une fois au moins sur une de ces bougies.

    Merci 🙂

    #135263 quote
    Nicolas
    Keymaster
    Master

    Ta condition c4 n’est pas bien formulé.

    On cherche à tester une condition booléenne qui donne un résultat = 1 si elle est vérifiée ; donc on peut faire une somme de ces 4 dernières conditions et vérifier si c’est supérieure à 0.

    C4c = summation[5](Close crosses over Kijunsen)[1] > 0
    Shark thanked this post
Viewing 8 posts - 1 through 8 (of 8 total)
  • You must be logged in to reply to this topic.

Condition bougie sur l'une des dernières


Support ProBuilder

New Reply
Author
author-avatar
Shark @shark Participant
Summary

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

Topic Details
Forum: Support ProBuilder
Language: French
Started: 02/22/2019
Status: Active
Attachments: No files
Logo Logo
Loading...