Fonction CALL Multiframe

Viewing 10 posts - 1 through 10 (of 10 total)
  • Author
    Posts
  • #124634 quote
    Zefte
    Participant
    Junior

    Bonjour,

    J’essaie de coder une stratégie toute simple en MTF basée sur un indicateur qui compte le nombre de bougies HA consécutives. Cependant quand je teste la valeur remontée par l’indicateur sur l’UT supérieure (M5), je ne trouve pas la bonne valeur.

    defparam cumulateorders = false
    
    // M5 Timeframe
    timeframe(5 minutes, updateonclose)
    HAM5 = CALL "#HA-Strenght"
    
    // M1 Timeframe
    timeframe(1 minute, default)
    HAM1 = CALL "#HA-Strenght"
    
    if HAM5 >= 2 and HAM1 >= 2 THEN
    buy 1 shares at market
    endif
    
    set target pprofit 50
    set stop ploss 50
    
    graph HAM5
    

    A noter que si je CALL n’importe quel autre indicateur alors j’ai les bonnes valeurs (en clôture sur les UT supérieures évidemment).

    Le code appelé est très simple (il vient de ce site d’ailleurs) :

    ONCE Bull = 0
    ONCE Bear = 0
    ONCE xOpen = 0
    xClose = (Open+High+Low+Close)/4
     
    if(barindex>2) then
    xOpen = (xOpen[1] + xClose[1])/2
    endif
     
    c1 = xClose>xOpen
    c2 = xClose<xOpen
     
    IF c1 THEN
    Bear = 0
    Bull = Bull + 1
    ELSIF c2 THEN
    Bull = 0
    Bear = Bear - 1
    ELSE // IF xClose and xOpen are exactly the same value
    Bull = 0
    Bear = 0
    ENDIF
     
    Grade = Bull + Bear
    
    return Grade
    

    Ci-joint une capture d’écran qui montre dans le cercle rouge la valeur erronée (qui doit normalement être la valeur dans le cercle vert ou celle de la bougie précédente ; du moins si j’ai compris le principe du MTF).

    Merci d’avance pour votre aide.

    stratHA.jpg stratHA.jpg
    #124652 quote
    Zefte
    Participant
    Junior

    Rectification : finalement j’ai le même problème avec d’autre indicateurs quand je les appelles dans mes UT supérieures : je ne retrouve pas les mêmes valeurs.

    J’ai du louper quelque chose…

    #124694 quote
    fifi743
    Participant
    Master

    bonjour,

    xclose n’est pas dans la condition ?

     
    if(barindex>1) then
    xClose = (Open+High+Low+Close)/4
    xOpen = (xOpen[1] + xClose[1])/2
    endif

    pour éviter les erreurs dans proorder

    #124719 quote
    Zefte
    Participant
    Junior

    Bonjour fifi.

    J’ai fait la correction. Mais toujours le même souci…

    #124788 quote
    Nicolas
    Keymaster
    Master

    Avec :

    timeframe(5 minutes, updateonclose)

    On va chercher la valeur toutes les 5 minutes uniquement, donc entre 21h00 et 21h04, on aura la même valeur.

    Sur ta copie d’écran en M1, avec ton graph, on voit bien les 3 marches successives en vert, la dernière étant celle qui dure de 21h00 à 21h04 et 59s. Donc sauf erreur de ma part, tout semble normal pour moi.

    #124827 quote
    Zefte
    Participant
    Junior

    En M5 j’ai 3 HA vertes consécutives. C’est ce chiffre que je voudrais récupérer. Alors pourquoi je récupère 11 au lieu de 3 (ou au lieu de 2 puisque la clôture n’est pas finie) ?

    Je graphe ma variable HAM5 qui devrait correspondre à ce que j’ai dans le cercle vert. Or même si on voit bien des marches identiques, la valeur ne correspond pas.

    #124874 quote
    Nicolas
    Keymaster
    Master

    Désolé, je n’avais pas bien compris lors de la première lecture. Je reproduis aussi ce phénomène, je n’ai pas d’explications pour le moment, j’ai envoyé un rapport technique à ce sujet, je reviendrai dés que j’aurai de plus amples informations.

    #126114 quote
    Zefte
    Participant
    Junior

    Bonjour,

    Le même problème ici dans la v10.3. Et sans aucun timeframe. Voir image en PJ. Je suis sensé récupérer la variable de mon indicateur affiché en bas de l’écran (10 et non pas 1).

    Il y a un souci avec le barindex sans doute…

    cap.jpg cap.jpg
    #126136 quote
    Nicolas
    Keymaster
    Master

    1/ essayer avec un defparam preloadbars=0 en tête de code

    ou

    2/ Il faudrait essayer d’inclure le code de l’indicateur dans la stratégie au lieu d’utiliser le CALL.

    #126149 quote
    Zefte
    Participant
    Junior

    Aucune des deux solutions ne fonctionne.

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

Fonction CALL Multiframe


ProOrder : Trading Automatique & Backtests

New Reply
Author
author-avatar
Zefte @zefte Participant
Summary

This topic contains 9 replies,
has 3 voices, and was last updated by Zefte
5 years, 11 months ago.

Topic Details
Forum: ProOrder : Trading Automatique & Backtests
Language: French
Started: 04/04/2020
Status: Active
Attachments: 2 files
Logo Logo
Loading...