Multi timeframe – Incompatibilité des UT de l’Algo avec UT Sup

Forums ProRealTime forum Français Support ProOrder Multi timeframe – Incompatibilité des UT de l’Algo avec UT Sup

  • This topic has 4 replies, 2 voices, and was last updated 3 weeks ago by avatarToph.
Viewing 5 posts - 1 through 5 (of 5 total)
  • #240705

    Bonjour,

    Ne serait-il pas possible que PRT n’exécute pas un algo lorsque les UTs de cet algo ne sont pas compatibles avec l’UT du graphique. Plutôt que de le dégager de la liste des indicateurs du graphique.

    C’est pénible lorsque que vous naviguez entre les UTs.

    Ou bien existe-t-il une astuce pour éviter ce comportement ?

    #240706
    JS

    Bonjour,

    Ce que tu peux faire, c’est indiquer au-dessus de l’algorithme pour quel intervalle de temps il est destiné. Lorsque tu changes d’intervalle de temps, l’algorithme reste visible sur le graphique, mais ne sera pas exécuté…

    DefParam…

    If GetTimeFrame=300 then

        Algo

    EndIf

    GetTimeFrame donne l’intervalle de temps actuel en secondes. Donc, si tu veux utiliser un algorithme uniquement pour, par exemple, un intervalle de temps de 5 minutes, tu utilises le code suivant :

    If GetTimeFrame=300 then

    1 user thanked author for this post.
    #240864

    Bonjour,

    Merci pour ce retour. Néanmoins je ne vois pas quelle syntaxe de programmation permet de faire cela.

    Dès que l’on met “Timeframe(5 minutes, UpdateOnClose)”, cette ligne rend incompatible l’algo avec une UT Sup. Même si on met l’algo dans une boucle avec test “If GetTimeFrame=300 then Algo) après cette ligne.

    On ne peut pas non plus écrire cette ligne dans une boucle conditionnelle If…/ Timeframe../Endif.

    J’avais eu aussi l’idée d’appeler un “sous-algo 5mn” via un call placé dans une boucle conditionnelle (GetTimeFrame) sur mon Timeframe actif. Ce n’est pas possible non plus.

    Je n’ai donc pas de solution.

    Je n’ai peut-être pas bien compris la proposition.

     

     

     

    #240866
    JS

    Salut,
    Mon intention était d’utiliser le code proposé à la place du timeframe, donc pas en combinaison (la combinaison n’est pas possible).
    If GetTimeFrame=300 then
    Code
    EndIf
    Si vous modifiez le code de cette manière, il ne s’exécutera que lorsque le graphique actuel aura une unité de temps de 5 minutes.

    #240933

    Ok. je comprends. Mais mon objectif est bien la combinaison.

    Merci pour les suggestions.

    Je ne sais pas comment suggérer à PRT de modifier ce comportement. ça ne devrait pas être très compliqué d’éviter ces erreurs de calculs tout en gardant l’algorithme….

     

    De même avoir la possibilité de mettre des “call” dans des boucles conditionnelles serait aussi une bonne chose.

Viewing 5 posts - 1 through 5 (of 5 total)

Create your free account now and post your request to benefit from the help of the community
Register or Login