Probleme actualisation indicateur en multi timeframe

Viewing 15 posts - 1 through 15 (of 15 total)
  • Author
    Posts
  • #207859 quote
    Armand2020
    Participant
    Senior

    bonjour,

    j utilise cet indicateur en 15 seconde,

    j ai un probleme avec cet indicateur il ne me renvoie pas toujours les bonnes indications.

    je dois toujours recharger l indicateur pour avoir les bonnes valeurs.

    TIMEFRAME(15 MINUTE)
    PERIODF=9
    
    IF BarIndex < periodF THEN
    MA9 = Close
    ELSE
    NF = Summation[periodF](Volume)
    MA9 = ((NF - Volume)*MA9 + Volume*Close)/NF
    ENDIF
    PERIODXF=21
    
    IF BarIndex < periodXF THEN
    MA21 = Close
    ELSE
    NXF = Summation[periodXF](Volume)
    MA21 = ((NXF - Volume)*MA21 + Volume*Close)/NXF
    ENDIF
    UP1=MA9>=MA9[1] AND MA21>=MA21[1]
    DW1=MA9<=MA9[1] AND MA21<=MA21[1]
    
    TIMEFRAME(DEFAULT)
    
    If DW1 Then
    drawtext("■",barindex,0,dialog,BOLD,15) coloured(250,150,0)
    
    ELSIf UP1 Then
    drawtext("■",barindex,0,dialog,BOLD,15)  coloured(0,150,250)
    ELSE
    drawtext("■",barindex,0,dialog,BOLD,15)  coloured(100,100,100)
    ENDIF
    
    
    return
    
    #208074 quote
    Nicolas
    Keymaster
    Master

    Je pense que cet indicateur fait correctement ce qu’on lui demande:

    Toutes les 15 secondes, on vérifie ce qu’il se passe dans le chandelier 15-minutes dans la bougie NON CLOTURE, donc il est fortement possible que les conditions DW1 et UP1 ont été validés dans l’une des 60 bougies de 15-sec que comporte une bougie 15-minutes.

    #208117 quote
    Armand2020
    Participant
    Senior

    J ai pris 2 captures d’ ecran avant et apres actualisation pour vous montrer.

    AVANT-ACTU.jpg AVANT-ACTU.jpg APRES-ACTU.jpg APRES-ACTU.jpg
    #208265 quote
    Nicolas
    Keymaster
    Master

    Oui c’est bien ce que j’ai expliqué. Il faut réfléchir en plusieurs dimensions temporelles.

    Je reprends…

    Pour ton signal UP1, toutes les 15 secondes tu testes ces infos du 15-minutes: UP1=MA9>=MA9[1] AND MA21>=MA21[1]

    en temps réel on sait que la MA9>= à sa valeur précédente dans le TF 15 minutes (comme si tu l’observais avec tes yeux sur l’écran) hors quand tu relis l’historique on ne peut pas savoir si dans la bougie de 15 minutes à un moment donnée cette condition a été vérifiée, car on ne l’a pas visualisé.

    Je pense que ton code est mal construit, justement vis à vis de ce comportement. Tu devrais délocaliser tes conditions de signaux UP1 et DW1 dans le timeframe(default).

    Armand2020 thanked this post
    #208271 quote
    Armand2020
    Participant
    Senior

    Merci nicolas, en effet j ai passes up1 et dw1 en timeframe default, ca regle le probleme!

    #208283 quote
    Armand2020
    Participant
    Senior

    Au final ca fonctionne pas en mettant up1 et dw1 dans timeframe default. j ai bien compris les diferentes dimensions temporelle mais il y a effectivement un probleme.

    ci joint 2 capture d ‘ecran de mon code d origine avant et apres actualisation ,avec le meme indicateur en 15 seconde et en 15 minutes, on voit les evwma EN 15  minute qui sont bleu et dans le graph en 15 seconde l indicateur indique orange… apres actualisation l indicateur affiche la bonne couleur!

    AV.jpg AV.jpg AP.jpg AP.jpg
    #208296 quote
    Armand2020
    Participant
    Senior

    Au final ca fonctionne pas en mettant up1 et dw1 dans timeframe default. j ai bien compris les diferentes dimensions temporelle mais il y a effectivement un probleme.

    ci joint 2 capture d ‘ecran de mon code d origine avant et apres actualisation ,avec le meme indicateur en 15 seconde et en 15 minutes, on voit les evwma EN 15 minute qui sont bleu et dans le graph en 15 seconde l indicateur indique orange… apres actualisation l indicateur affiche la bonne couleur!

    ce que je veux dire c est que quand je regarde en LIVE,  ca passe en orange en 15 seconde alors que up1 est bien bleu en 15MN

    #208391 quote
    Nicolas
    Keymaster
    Master

    Ok, j’ai testé le dernier code et il y a un truc qui me chiffonne également, je recoupe les infos avec le support technique et je reviendrai faire un retour.

    Armand2020 and KryptoKat thanked this post
    #208536 quote
    KryptoKat
    Participant
    New

    Bonjour à tous, Nicolas et Armand.

    Pareil chez moi, le Multi timeframe ne fonctionne pas.

    #208727 quote
    Nicolas
    Keymaster
    Master

    @kryptokat

    Aurais-tu un exemple de code stp ?

    #208835 quote
    KryptoKat
    Participant
    New

    Bonjour à tous, bonjour Nicolas.

    Depuis, je suis reparti à zéro et le multi timeframe fonctionne à nouveau correctement. J’ai juste connu une journée difficile d’un point de vu informatique semble-t-il. 🙂

    bug-ligne-23.png bug-ligne-23.png
    #208837 quote
    Nicolas
    Keymaster
    Master

    Ok s’agit-il d’un autre problème ? Si oui je vais créer un autre sujet avec ton post.

    #209458 quote
    Armand2020
    Participant
    Senior

    Bonjour Nicolas?

    Toujours pas de reponse du support technique a mon probleme?

    merci

    #209520 quote
    Nicolas
    Keymaster
    Master

    C’est en cours de résolution, mais à priori le problème se situe lorsque dans une ligne de code on réemploi la valeur de la variable qu’on détermine, comme ici avec la variable MA9:

    MA9 = ((NF - Volume)*MA9 + Volume*Close)/NF

    En attendant une correction officielle, il faudrait peut être tester comme ceci :

    MA9temp = MA9
    MA9 = ((NF - Volume)*MA9temp + Volume*Close)/NF
    #209521 quote
    Nicolas
    Keymaster
    Master

    Ou alors avec cette version:

    TIMEFRAME(15 MINUTE)
    PERIODF=9
    
    IF BarIndex < periodF THEN
    MA9 = Close
    ELSE
    NF = Summation[periodF](Volume)
    MA9 = ((NF - Volume)*MA9[1] + Volume*Close)/NF
    ENDIF
    PERIODXF=21
    
    IF BarIndex < periodXF THEN
    MA21 = Close
    ELSE
    NXF = Summation[periodXF](Volume)
    MA21 = ((NXF - Volume)*MA21[1] + Volume*Close)/NXF
    ENDIF
    UP1=MA9>=MA9[1] AND MA21>=MA21[1]
    DW1=MA9<=MA9[1] AND MA21<=MA21[1]
    
    TIMEFRAME(DEFAULT)
    
    If DW1 Then
    drawtext("■",barindex,0,dialog,BOLD,15) coloured(250,150,0)
    
    ELSIf UP1 Then
    drawtext("■",barindex,0,dialog,BOLD,15)  coloured(0,150,250)
    ELSE
    drawtext("■",barindex,0,dialog,BOLD,15)  coloured(100,100,100)
    ENDIF
    
    
    return
Viewing 15 posts - 1 through 15 (of 15 total)
  • You must be logged in to reply to this topic.

Probleme actualisation indicateur en multi timeframe


ProOrder : Trading Automatique & Backtests

New Reply
Author
author-avatar
Armand2020 @armand2020 Participant
Summary

This topic contains 14 replies,
has 3 voices, and was last updated by Nicolas
3 years ago.

Topic Details
Forum: ProOrder : Trading Automatique & Backtests
Language: French
Started: 01/22/2023
Status: Active
Attachments: 5 files
Logo Logo
Loading...