je voudrais afficher une ligne sur un graphique en ticks qui commence a 8h00 ou 12h00 16h00 etc, le code fonctionne en UT 5 min 1 min etc mais pas sur les ticks.
une petite idée pourquoi? merci
DEFPARAM DRAWONLASTBARONLY = true
niveau = 12000 //niveau que je modifie toutes les 4 heures
if (hour mod 4= 0) and minute =0 then
first4H = BarIndex
endif
DRAWSEGMENT(first4H, niveau, barindex,niveau)
return
Très certainement parce que “minute =0″ n’est jamais testé vrai. Puisque ce type de représentation du prix n’est pas lié au temps, il est probable que la minute 0 n’est jamais vu.
Un test simple:
RETURN ((hour mod 4= 0) and minute =0)
Pour vérifier si l’état passe à 1, soit vrai pour cette condition.
Merci Nicolas, effectivement apres avoir testé “hour mod 4= 0″ puis “minute = 0” aucune de ces conditions ne change d etat.
A votre avis, quels parametres devrais je utiliser pour que mon indicateur puisse fonctionner en ticks?
Si ça n’est pas gênant, la solution la plus simple c’est d’utiliser un test avec une plage horaire, ici pourquoi pas de l’ordre d’1 minute, il y aura certainement des ticks reçus !
if (hour mod 4= 0) and (minute >=0 and minute<=1) then
oui, c’est une bonne idée de tester une plage horaire, mais ce code ne fonctionne toujours pas sur les ticks.
par contre en utilisant openhour c’est mieux .
if (openhour mod 4= 3) and (openminute >=0 and openminute<=5)
et encore une autre solution qui a l’air plus propre:
if (openhour mod 4= 3) then
first4H = barindex
endif
En tout cas merci Nicolas pour avoir pris le temps de m’ aider.
Bonne soirée