Erreur de Comptage de Chandeliers

Viewing 6 posts - 1 through 6 (of 6 total)
  • Author
    Posts
  • #178337 quote
    Roland57800
    Participant
    Veteran

    Bonjour,
    j’ai créé un screnner qui me compte le nombre de chandeliers depuis le signal.
    Dans le code, je lui indique que je voudrais le Nb de chandeliers en dessous en dessous de 10.

    en testant, il me retourne 1 dans la colonne pour toutes les actions.

    Je ne trouve pas d’où vient l’erreur de comptage

    Merci pour une aide
    Cordialement

    MaxPrice =  35.00
    
    
    V = Volume > 5000
    
    EMARSI = average[14,1](rsi[14](average[7,1]))
    
    c1 = EMARSI > EMARSI [1] and EMARSI [1] < EMARSI [2]
    
    // Condition EMARSI haussier
    if c1  > c1 [1] then
    tendance = 1
    ENDIF
    if c1 < c1 [1] then
    tendance = 0
    ENDIF
    
    if tendance and not tendance [1] then
    start = 0
    ENDIF
    
    // on compte le nombre de chandeliers
    ok = tendance =1
    
    start = start +1
    
    
    SCREENER [ ok and start and V and close < MaxPrice and start <= 10 ]  ( START as"Nb.CHANDELIERS" )

    e dans le code.

    #178355 quote
    JC_Bywan
    Moderator
    Master

    Bonjour,

    ton c1 est vrai (=1) ou faux (=0),

    ce qui fait que ton if c1>c1[1] en ligne 11 ne donnera que ponctuellement un tendance=1 (quand c1 passe de 0 à 1),

    et donc il n’en résulte un ok=1 que pontuellement aussi en ligne 23, sur un chandelier où  start=1 via ligne 25.

    Autrement dit, même si  le start s’incrémente bien de 1 en 1 à partir de son initialisation dans le bloc if-endif lignes 18 à 20, le ok étant repassé à zéro dès que start=2, avec ta ligne screener conditionnée par ok=1, il ne sort que ponctuellement la fois où start=1…

    Ce n’est donc pas l’incrémentation des start qui est à revoir, c’est la décision d’avoir comparé des c1 qui ne sont que des 0 ou 1 pour obtenir une “tendance” et un “ok” ponctuels au lieu de continus, qui ne correspondent probablement pas à ce que tu essayais d’obtenir pour “tendance” et “ok”.

    #178357 quote
    Roland57800
    Participant
    Veteran

    Bonjour,
    ok merci pour la réponse,
    je vais réfléchir à ça en espérant trouver la solution
    Bonne journée
    Cordialement

    #178359 quote
    Roland57800
    Participant
    Veteran

    Je reviens sur mon sujet
    dans les lignes 11 à 16 je suis bien obligé de lui indiquer
    si mon signal obtenu en ligne 24 est valide
    je joins une image tel que se présente le signal sous le graphique des prix

    Un complément d’idée m’aiderait peut-être
    Merci
    Cordialement

    Signal.png Signal.png
    #178369 quote
    JC_Bywan
    Moderator
    Master

    dans les lignes 11 à 16 je suis bien obligé de lui indiquer si mon signal obtenu en ligne 24 est valide

     

    Justement, ce qui est établi dans mon post précédent, si je reformule, c’est qu’avec les lignes 11 à 16 “tendance” ne tient la valeur 1 que pendant une seule barre avant de repasser à 0 dès la barre suivante, au lieu de -je suppose que c’est l’intention- rester à 1 entre la flèche bleue de ton image (flèche bleue qui je suppose illustre c1) et la flèche rouge (flèche rouge qui ne correspond pas au code 14-16 qui mettait la tendance à 0). Donc la validité du signal en ligne 24 ne dure pas plus d’une barre et passe à côté de toute la tendance cherchée.

    En l’absence de définition de la flèche rouge, et en supposant que tendance est tout ce qui est entre une bleue et une rouge, on va supposer que la flèche rouge est l’inverse d’un c1, qu’on va définir en c2, et utiliser pour remplacer les lignes 14-16:

    c2 = EMARSI < EMARSI[1] and EMARSI[1] > EMARSI[2]

    Si oui, on peut revoir tout le bloc de 11 à 16 de la façon ci-dessous, sinon il faut plus d’informations sur ce qui constitue cette tendance avant de pouvoir la coder:

    MaxPrice =  35.00
     
     
    V = Volume > 5000
     
    EMARSI = average[14,1](rsi[14](average[7,1]))
    
    c1 = EMARSI > EMARSI[1] and EMARSI[1] < EMARSI[2]
    c2 = EMARSI < EMARSI[1] and EMARSI[1] > EMARSI[2]
    // Condition EMARSI haussier
    if c1 then
     tendance = 1
    endif
    if c2 then
     tendance = 0
    ENDIF
     
    if tendance and not tendance[1] then
     start = 0
    ENDIF
     
    // on compte le nombre de chandeliers
    ok = tendance =1
     
    start = start +1
     
     
    SCREENER [ ok and start and V and close < MaxPrice and start <= 10 ]  ( START as"Nb.CHANDELIERS" )
    #178395 quote
    Roland57800
    Participant
    Veteran

    Hello JC_Bywan,

    Merci pour le retour.
    après relu l’ensemble des éléments, j’ai compris mon erreur dans le codage.

    Je viens de corriger, et j’ai vérifié c’est parfait
    Merci pour tout
    Bonne fin d’apr-smidi
    Cordialement

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

Erreur de Comptage de Chandeliers


ProScreener : Scanners de Marché & Détection

New Reply
Author
Summary

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

Topic Details
Forum: ProScreener : Scanners de Marché & Détection
Language: French
Started: 09/25/2021
Status: Active
Attachments: 1 files
Logo Logo
Loading...