Problème avec IntradayBarIndex ?
Forums › ProRealTime forum Français › Support ProScreener › Problème avec IntradayBarIndex ?
- This topic has 6 replies, 2 voices, and was last updated 6 years ago by Nicolas.
-
-
03/09/2018 at 10:56 AM #64887
Bonjour,
Pour mon screener, je cherche à récupérer le prix le plus haut du jour ainsi que le n° de la barre en question.
Je viens de le tester sur l’action GAUSSIN et il me donne une valeur pour HighestValue (==> 0.49800) que je ne retrouve pas dans les graphiques.
Pourriez-vous m’aider à comprendre d’où vient le problème ?
Merci d’avance,
1234567891011121314NbreDeBarres = IntradayBarIndexc0 = volume > 1000// Je cherche le prix le + haut depuis l'ouverture de marchéHighestBarIndex = 0FOR i = NbreDeBarres DOWNTO 0 DOIF ((high[i] > HighestValue)) THENHighestValue = high[i]ENDIFHighestBarIndex = HighestBarIndex + 1 // Comme je ne peux pas récupérer la valeur de 'i'NEXTscreener [c0] SORT BY (HighestValue)Merci d’avance
Anthony
03/09/2018 at 11:17 AM #64893Pourquoi ne pas utiliser Dhigh(0) ? Ou alors tu voudrais connaître le moment précis ou le High du jour a eu lieu ? Si oui, il faudra faire avec la limitation des 255 barres, tout dépend du timeframe, mais au delà de 255, tu ne pourras pas aller plus loin en arrière.
Tu peux récupérer la valeur de “i” dans ta boucle, mais ta variable “HighestBarIndex”, je ne vois pas à quoi elle sert, puisque tu l’incrémentes même si tu n’as pas trouver que le high de la boucle est bien le plus haut. Tu devrais faire comme ceci :
1234567891011121314NbreDeBarres = IntradayBarIndexc0 = volume > 1000// Je cherche le prix le + haut depuis l'ouverture de marchéHighestBarIndex = 0FOR i = NbreDeBarres DOWNTO 0 DOIF ((high[i] > HighestValue)) THENHighestValue = high[i]HighestBarIndex = iENDIFNEXTscreener [c0] SORT BY (HighestValue)Mais cette variable n’étant pas utilisé ailleurs (?), tu auras une erreur sur sa “non utilisation”..
03/09/2018 at 11:28 AM #64895Bonjour Nicolas et merci pour te réponse.
En fait, je l’utilise en le matin et en unité de temps “1 minute”. Je me suis donc dit qu’il faut que je l’utilise dans les 254 premières minutes de la journée pour que ça marche. Tu es d’accord ?
Concernant le ‘i’ à récupérer, j’avais déjà essayé ce code ci-desosus pour l’afficher, mais j’ai un ‘0’ (zéro) à l’affichage. J’ai donc conclu que je ne pouvais pas le récupérer. J’ai tort ?
12345678910111213141516// Unité de temps : 1 minuteNbreDeBarres = IntradayBarIndexc0 = volume > 1000// Je cherche le prix le + haut depuis l'ouverture de marchéHighestBarIndex = 0FOR i = NbreDeBarres DOWNTO 0 DOIF ((high[i] > HighestValue)) THENHighestValue = high[i]HighestBarIndex = iENDIFNEXTscreener [c0] SORT BY (HighestBarIndex)Merci de ton aide.
03/09/2018 at 11:45 AM #64896Pour une raison que j’ignore, si on test uniquement en strictement supérieur, le screener retourne systématiquement 0, alors qu’il fonctionnera si on test le High[i] en strictement supérieur ou égal, voir le code:
12345678910111213141516// Unité de temps : 1 minuteNbreDeBarres = IntradayBarIndexc0 = volume > 1000// Je cherche le prix le + haut depuis l'ouverture de marchéHighestBarIndex = 0FOR i = 0 to NbreDeBarres DOIF high[i] >= HighestValue THENHighestValue = high[i]HighestBarIndex = iENDIFNEXTscreener [c0] (HighestBarIndex)03/09/2018 at 11:51 AM #64897En déclarant HighestValue à 0 avant la boucle, le symbole égal n’est pas nécessaire. J’en conclut donc que dans la boucle, à la première itération, ProScreener ne sait pas qu’il vaut 0 puisque jamais renseigné..
1234567891011121314151617// Unité de temps : 1 minuteNbreDeBarres = IntradayBarIndexc0 = volume > 1000// Je cherche le prix le + haut depuis l'ouverture de marchéHighestBarIndex = 0highestvalue=0FOR i = NbreDeBarres downto 0 DOIF high[i] > HighestValue THENHighestValue = high[i]HighestBarIndex = iENDIFNEXTscreener [c0] (HighestBarIndex)1 user thanked author for this post.
03/09/2018 at 1:40 PM #6490604/19/2018 at 2:36 PM #68819 -
AuthorPosts
Find exclusive trading pro-tools on