Bonjour,
Si je lance ce Screener, ProrealTime me retourne un mixte, cad des valeur vraies ou le SAR est > à la Clôture et d’autre non où le SAR < à la Clôture.
IdcSAR=SAR[0.02,0.02,0.2]
If IdcSAR[0]>Close[0] Then
C1=1
Endif
SCREENER[C1]
Cela vous le fait aussi ?
Merci par avance.
Marc
S’agit-il d’un compte gratuit “fin de journée” ou d’un scan sur des données sur un flux sans abonnement ? Si oui les résultats de ProScreener seront décalés d’une période.
Autre hypothèse, s’assurer que les valeurs du SAR dans le code soit les mêmes que l’indicateur appliqué sur le graphique.
En plus des hypothèses de Nicolas qui sont à explorer, dans ce code c1 n’est jamais remis à 0, donc dès que c1 a été à 1 une fois, il reste toujours à 1. Voici un petit indicateur où est rajouté c2 mis à 1 comme c1, mais aussi remis à 0, à installer en fenêtre sous le prix pour visualiser la différence. Enfin, c3 montre comment obtenir le même résultat que c2, mais en une ligne sans bloc if-endif.
IdcSAR=SAR[0.02,0.02,0.2]
If IdcSAR[0]>Close[0] Then
C1=1
c2=1
else
c2=0
Endif
c3 = IdcSAR[0]>Close[0]
return c1 as "c1", c2 as "c2", c3 as "c3"
Quand tu dis :
dans ce code c1 n’est jamais remis à 0, donc dès que c1 a été à 1 une fois, il reste toujours à 1
J’émets un doute car si on schématise mon bout de code pour une sélection de valeurs choisies :
- Il prend la première valeur de la liste et disons qu’il met C1 à Vrai
- Il prend la seconde valeur de la liste et recommence mon bout de code donc par défaut C1 est à zéro
- et ainsi de suite pour les valeurs suivante …
Où alors quelque chose m’échappe dans le déroulement d’un code sous Prorealtime
Oui tu as raison, le code est exécuté dans chaque historique pour chaque action et avec ses propres résultats. Mais ton code, dés que tu donnes une valeur 1 à C1, elle restera pour toujours la même (pour l’instrument courant) en car à aucun moment tu ne lui donnes une autre valeur.