Mauvaise utilisation de “UpdateOnClose”.

Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #205210 quote
    Toph
    Participant
    Average

    Bonjour,

    J’ai un comportement non maitrisé de la fonction “UpdateOnClose”. Je dois sûrement mal l’utiliser.

    Pour illustrer mon problème j’ai crée le petit algo suivant, utilisé dans l’UT 1mn. J’enregistre à chaque cassure de la SMA(7) la 5ème dernière bougie que je stocke dans un tableau.

    Lorsque que je lance l’algo, tout se passe bien sur l’historique. Par contre sur les nouvelles bougies/nouveaux signaux, l’algo ne fonctionne plus. Il prend tous les signaux à l’intérieur d’une bougie et écrase ainsi toutes les valeurs stockées précédemment dans mon tableau.

    La consigne “UpdateOnCLose” n’est pas respectée.

    Est-ce dû au fait que l’UT dans lequel l’algo fonctionne et le TF déclaré dans l’algo sont les mêmes ? Autres idées?

    J’ai une petite idée pour compenser (attendre la bougie suivante pour enregistrer) mais ce n’est pas très “propre” et ça fera perdre en réactivité.

    J’ai ajouté un screen shot avec l’affichage des 3 dernières valeurs enregistrées dans le tableau. On voit clairement l’écrasement des valeurs après le lancement de l’algo.

    Timeframe(1 minute, UpdateOnclose)
    MM7=Average[7](close)
    ATR=AverageTrueRange[5](close)
    TailleTab=10//Nombre de points mémorisés
    
    If close crosses over MM7 then
    DrawArrowUp(barindex,Low-0.25*ATR)CoLoured(0, 255, 0)
    SignalMM=1
    Elsif close crosses under MM7 then//and second=59 then
    DrawArrowDown(barindex,High+0.25*ATR)CoLoured(255,0, 0)
    SignalMM=-1
    Endif
    
    If SignalMM<>SignalMM[1] then
    LastY=Close[5] //Memorisation de la 5ème bougie précédente
    LastX=Barindex[5]
    For k=1 to TailleTab do//décalage des valeurs dans le tableau
    i=TailleTab-k+1
    $Mem5x[i]=$Mem5xx[i-1]
    $Mem5y[i]=$Mem5y[i-1]
    Next
    $Mem5x[0]=LastX//Memorisation de la 5ème bougie dans le tableau
    $Mem5y[0]=LastY
    A1=$Mem5y[0]
    A2=$Mem5y[1]
    A3=$Mem5y[2]
    Drawtext("#A1#",barindex,high+0.5*ATR,Dialog,Bold,10)Coloured(55,0,0,255)
    Drawtext("#A2#",barindex,high+0.75*ATR,Dialog,Bold,10)Coloured(55,0,0,255)
    Drawtext("#A3#",barindex,high+1*ATR,Dialog,Bold,10)Coloured(55,0,0,255)
    Endif
    Timeframe(default, default)
    
    Return MM7 coloured (255,0,0), close coloured (204, 85, 0)
    #205211 quote
    Toph
    Participant
    Average
    #205316 quote
    Nicolas
    Keymaster
    Master

    Comme tu lances ton code sur l’unité de temps définit dans l’instruction TIMEFRAME, UpdateonClose ne changera pas le comportement en temps réel, c’est à dire qu’on attendra pas la clôture de la bougie pour récupérer des valeurs, lire ton code et donc changer les valeurs de ton tableau.

    UpdateOnClose est utile pour récupérer l’info de la dernière période clôturée d’un timeframe supérieur.

    #205317 quote
    robertogozzi
    Moderator
    Master

    @Toph . Veuillez ne pas inclure de documents ou de photos dans le message. Utilisez simplement le bouton "Sélectionner un fichier". Merci 🙂

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

Mauvaise utilisation de “UpdateOnClose”.


ProBuilder : Indicateurs & Outils Personnalisés

New Reply
Author
author-avatar
Toph @toph Participant
Summary

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

Topic Details
Forum: ProBuilder : Indicateurs & Outils Personnalisés
Language: French
Started: 12/03/2022
Status: Active
Attachments: 1 files
Logo Logo
Loading...