Hello, dans ma recherche permanente, je souhaitai tester la réaction d’une “période dynamique”
à savoir au hasard:
Var = Abs(Round(150 + Cycle(close)))
iS150 = Average[150]
Drawsegment(barindex, iS150, barindex[1], iS150[1]) coloured(“White”)
Return Var
Sauf que PRT me dit qu’il attend un entier positif, ce qui est le cas en vérifiant la variable.
Quelque chose que j’ai loupé ou bien une restriction de PRT ?
Bonjour,
je suppose que c’est juste le code de vérification, dont on peut déduire que c’est “var” que tu appelles “période dynamique” même si on ne le voit pas utilisé en période, et pour montrer que var est entier positif. Mais ça ne montre pas tous les usages de var (potentiel problème en début d’historique quand var n’a pas assez de périodes pour être défini?), ni éventuellement -pour ne rien écarter- si autre chose que var aurait pu causer le message d’attente d’un entier positif dans le code non montré, du coup, pas évident d’avancer sans en savoir plus…
Je pense que c’est peut être le barindex[1] qui pose problème puisqu’au premier chandelier (barindex=0), la référence au précédent sera forcément négatif (-1)
Donc essayer avec :
Drawsegment(barindex, iS150, max(0,barindex[1]), iS150[1]) coloured(“White”)
Merci pour vos réponse.
j’utilise uniquement ce code pour être sur d’isoler le problème, il n’y a pas d’autre contexte.
Var = Abs(Round(150 + Cycle(close)))
iW150 = Average[Var]
Drawsegment(barindex, iW150, Max(0,barindex[1]), iW150[1]) coloured("White")
Return
et le message de retour ci joint
j’ai tenté ça pour contrer un éventuel problème de début d’historique mais sans succès :
iW150 = Average[Max(1,Var)]
PS : Sous Firefox je n’ai pas l’icône d’insertion de code contrairement à chrome d’où le premier poste en quote.
Le problème est le suivant:
Tu calcules une période avec l’indicateur Cycle, qui a lui même besoin d’historique pour se calculer, il faut donc attendre qu’il existe (supérieur à 0), ça fonctionne avec :
if cycle then
Var = Abs(Round(150 + Cycle(close)))
iW150 = Average[max(1,Var)]
Drawsegment(barindex, iW150, Max(0,barindex[1]), iW150[1]) coloured("White")
endif
Return