Vague de respiration avec les bougies Heikin-Ashi

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #141421 quote
    z0om
    Participant
    Average

    Bonjour,

    Je cherche à faire un indicateur pour détecter les débuts de vagues avec les bougies Heikin-Ashi.

    Dans le cas d’une tendance haussière (au-dessus du nuage dans le système Ichimoku) :

    • j’attends 0 ou 1 bougie verte (variable : strikeExpectedMax)
    • puis entre 3 et 5 bougies rouges pour la respiration (variables : respirationExpectedMin et respirationExpectedMax)
    • et une dernière clôture sous la mm20, la kijun ou la tenkan (système Ichimoku)

     

    Parfois, ça marche bien (voir les flèches sur l’image 1), parfois, j’ai des erreurs (voir les flèches sur l’image 2).

    Si vous pouviez m’aider à me débugger, ça serait top.

    res = 0
    i = 0
    
    mm20 = Average[20](close)
    tenkan = (Highest[9](High) + Lowest[9](Low)) / 2
    kijun = (Highest[26](High) + Lowest[26](Low)) / 2
    
    ssA = (tenkan[26] + kijun[26]) / 2
    ssB = (Highest[52](High[26]) + Lowest[52](Low[26])) / 2
    kumoUp = Max(ssA,ssB)
    //kumoDown = Min(ssA,ssB)
    
    HAopen = (HAopen + HAclose) / 2
    HAclose = (Open + Close + High + Low) / 4
    
    IF Close > kumoUp AND (Close < mm20 OR Close < kijun OR Close < tenkan) THEN
    KO = 0
    strike = 0
    strikeExpectedMax = 1
    
    WHILE (i <= strikeExpectedMax + 1 AND KO = 0) DO
    IF (HAclose[i] > HAopen[i]) THEN
    strike = strike + 1
    ELSE
    KO = 1
    ENDIF
    
    IF strike = strikeExpectedMax + 1 THEN
    strike = 0
    ENDIF
    
    i = i + 1
    WEND
    
    respiration = 0
    respirationExpectedMin = 3
    respirationExpectedMax = 5
    j = 0
    
    WHILE (j <= respirationExpectedMax) DO
    IF (HAclose[strike + j] < HAopen[strike + j]) THEN
    respiration = respiration + 1
    ELSE
    KO = 1
    ENDIF
    
    j = j + 1
    WEND
    
    IF respiration >= respirationExpectedMin AND respiration < respirationExpectedMax THEN
    res = 1
    ENDIF
    ENDIF
    
    
    Return res AS "Warning"
    
    ich01.png ich01.png ich02.png ich02.png
    #141445 quote
    Nicolas
    Keymaster
    Master

    A la lecture de ton code et de ton principe d’affichage des signaux de trading, je pense que le soucis se situe dans le bloc “respiration”, sauf si des bougies vertes intercalées ne te dérange pas, sinon c’est bien là.

    Tu comptes les bougies baissières et si elles sont vertes, tu passes KO à 1, mais à quoi cela te sert-il ? Cette variable n’est pas réutilisée ?

    z0om thanked this post
    #141461 quote
    z0om
    Participant
    Average

    Merci pour ton aide. J’ai réussi à corriger. Effectivement, la variable “KO” n’était pas utilisée dans la 2ème boucle. Tu déchires, comme d’hab !

    res = 0
    i = 0
    
    mm20 = Average[20](close)
    tenkan = (Highest[9](High) + Lowest[9](Low)) / 2
    kijun = (Highest[26](High) + Lowest[26](Low)) / 2
    
    ssA = (tenkan[26] + kijun[26]) / 2
    ssB = (Highest[52](High[26]) + Lowest[52](Low[26])) / 2
    kumoUp = Max(ssA,ssB)
    //kumoDown = Min(ssA,ssB)
    
    HAclose = (Open + Close + High + Low) / 4
    HAopen = (HAopen + HAclose) / 2
    
    IF Close > kumoUp AND (Close < mm20 OR Close < kijun OR Close < tenkan) THEN
    KO = 0
    strike = 0
    strikeExpectedMax = 1
    
    WHILE (i <= strikeExpectedMax + 1 AND KO = 0) DO
    IF (HAclose[i] > HAopen[i]) THEN
    strike = strike + 1
    ELSE
    KO = 1
    ENDIF
    
    IF strike = strikeExpectedMax + 1 THEN
    strike = 10
    ENDIF
    
    i = i + 1
    WEND
    
    respiration = 0
    respirationExpectedMin = 3
    respirationExpectedMax = 5
    j = 0
    KO = 0
    
    WHILE (j <= respirationExpectedMax AND strike < 10 AND KO = 0) DO
    IF (HAclose[strike + j] < HAopen[strike + j]) THEN
    respiration = respiration + 1
    ELSE
    KO = 1
    ENDIF
    
    j = j + 1
    WEND
    
    IF respiration >= respirationExpectedMin AND respiration < respirationExpectedMax THEN
    res = 1
    ENDIF
    ENDIF
    
    
    Return res AS "Warning" // , strike AS "Strike", respiration AS "Respiration"
    
Viewing 3 posts - 1 through 3 (of 3 total)
  • You must be logged in to reply to this topic.

Vague de respiration avec les bougies Heikin-Ashi


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
author-avatar
z0om @sebastien_ozanne Participant
Summary

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

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 08/11/2020
Status: Active
Attachments: 2 files
Logo Logo
Loading...