Help création d'un indicateur détection de la barre qui fait un plus haut
Forums › ProRealTime forum Français › Support ProBuilder › Help création d'un indicateur détection de la barre qui fait un plus haut
- This topic has 13 replies, 2 voices, and was last updated 7 years ago by Nicolas.
-
-
11/08/2017 at 12:54 PM #51931
Bonjour
J’ai une fenêtre avec 100 barcharts
Je voudrais créer un indicateur en dessous de la fenêtre des cours, qui pointe le plus haut de toutes les barcharts affichées. et ayant comme valeur le n° de la bar qui fait le highest[high]
exemple, le plus haut (high) de toutes les barres affichées est à 15 € à la barre n° 18
Je voudrais dans la fenêtre de l’indicateur qui se trouve en dessous, afficher un pic ayant pour valeur 15 sous la barre n° 18, et surtout aucun pic ailleurs, le pic doit être unique.
Est ce faisable ? moi j’ai beau essayer j’y arrive pas
Merci pour votre aide
11/08/2017 at 1:27 PM #51934Oui c’est faisable, mais ..
On ne peut pas modifier la valeur d’une variable dans le passé, on peut uniquement dessiner. Donc au lieu d’un “pic”, on peut créer un rectangle par exemple, ou un symbole de type texte, une flèche, un trait vertical, etc.
Est-ce que ce type de solution conviendrait ?
Question: est-ce que le numéro de la barre trouvé doit être utilisé par un autre indicateur ou un système de trading ?
11/08/2017 at 2:29 PM #51939oui n’importe quel symbole convient, mais il faut qu’il me renvoie le n° de la barre et qu’il soit dessiné dans l’indicateur en dessous de la fenêtre des cours et non superposé aux cours ( ça je sais déjà le faire mais ça ne me renvoit aucune valeur utilisable)
Oui bien entendu, cette valeur me servira à construire quelque chose par la suite.
Merci pour votre aide
11/09/2017 at 9:23 AM #52046Très bien, mais si cette valeur doit être renvoyé par l’indicateur, alors on aura également une ligne qui apparaîtra (cas d’une variable renvoyée par le code).
Pour le numéro de la barre, s’agit-il du vrai “barindex”, soit le vrai numéro de la barre, incrémenté depuis le début de la lecture de l’historique OU la quantité de barres en arrière depuis la période actuelle (soit le nombre de périodes en arrière et qui évolue forcément à chaque nouveau chandelier).
11/09/2017 at 11:59 AM #52101oui Nicolas, aucun problème pour la ligne qui apparait, pour autant que je peux récupérer sa valeur, et puis je dois pouvoir la mettre en invisible.
Pour le n° de la barre, ce n’est pas le barindex qui m’intéresse, mais ta 2e proposition càd le n° de barre à reculons à partir de la barre la plus récente, et qui, oui changera à chaque nouvelle barre.
Une dernière question, j’ai posté cette demande par erreur dans la partie anglophone du forum, alors je l’ai recopiée sur la partie francophone, mais elle n’y apparait, pas, quel est la cause de cette non publication ?
Encore merci pour ta réponse 🙂
11/09/2017 at 1:56 PM #52128Je ne vois qu’un seul topic de ta part pourtant .. bref, j’ai déplacé celui-ci dans la bonne partie du forum pas de soucis à avoir.
Voilà le code en question, j’ai tracé une ligne verticale et une petite flèche pour symboliser le plus détecté du graphique actuel.
123456789101112131415defparam drawonlastbaronly=truelookback = max(1,barindex)result = 0for i = 0 to lookback doif high[i]>result thenresult=high[i]mybar=barindex[i]endifnextdrawvline(mybar)drawarrowup(mybar,mybar)return mybar11/09/2017 at 1:59 PM #52130Désolé j’ai fais une petite erreur, c’est bien ce code ci-dessous qui te retournera le nombre de périodes en arrière à considérer pour le plus haut constaté à partir de la bougie courante (dans l’autre je donnais le barindex..pffff).
12345678910111213141516defparam drawonlastbaronly=truelookback = max(1,barindex)result = 0for i = 0 to lookback doif high[i]>result thenresult=high[i]mybar=barindex[i]X = iendifnextdrawvline(mybar)drawarrowup(mybar,mybar)return x11/09/2017 at 6:09 PM #52162Mille mercis Nicolas, c’est absolument magnifique !
Avec quelques actions ça coince un peu sur les bords, je veux dire que la barre trouvée dépasse largement la limite du barindex, exemple ONDK sur 200 unités me donne un plus haut à la barre 728.
Sur d’autres titres c’est la flèche qui n’apparait pas(mais c’est nettement moins important), exemple NFLX
Est il possible de résoudre ces problèmes ?
D’avance je t’en remercie !
11/09/2017 at 7:44 PM #52172De plus je ne comprends pas bien la fonction barindex, j’ai bien lu en détail le pdf probuilder, cette variable est censée retourner le nombre de barres affichées, hors si je crée un graphique des cours sur 100 barres affichées, et qu’en dessous je créé un indicateur qui est simplement return barindex, il devrait me retourner la valeur 100 si j’ai bien compris, ben non, il me retourne systématiquement la valeur 599 quelque soit l’action ou l’indice affiché.
Enfin, je n’ai pas trouvé dans le pdf, la façon d’utilisaer barindex avec un paramètre, tel que tu l’as écrit dans ton code mybar=barindex[i] => ???
Où puis-je me documenter sur cette façon d’utiliser la constante (ou variable je ne sais plus) barindex avec un paramètre ???
11/10/2017 at 10:03 AM #52206Sur ONDK daily, 200 units, la plus haute barre affichée est bien l’une des premières (voir image).
La flèche apparaît bien, mais elle est ‘hors champ’ parfois, tu peux l’afficher sur la valeur 0 par exemple, là elle sera toujours visible :
1drawarrowup(mybar,0)Il n’y a pas de paramètre à BARINDEX, [i] est l’itération de la boucle FOR/NEXT (voir formation sur la programmation avancée).
11/10/2017 at 12:34 PM #5222311/10/2017 at 1:38 PM #5224211/10/2017 at 1:53 PM #52244C’est ce que j’essayais de dire, le signal se trouve à la barre 720 donc invisible sur ma fenêtre de 100 units, mais peut être je me suis mal exprimé.
Mais je cois que j’ai compris, j’ai remplacé l’instruction lookback = max(1,barindex) par lookback = 100 et du coup je l’ai sur ma fenêtre 🙂
11/10/2017 at 3:07 PM #52261 -
AuthorPosts
Find exclusive trading pro-tools on