Configuration – Plus Haut & Plus bas précédent
Forums › ProRealTime forum Français › Support ProBuilder › Configuration – Plus Haut & Plus bas précédent
- This topic has 19 replies, 6 voices, and was last updated 5 years ago by Nicolas.
-
-
10/30/2017 at 4:26 PM #50946
Bonjour,
J’aimerai des plus haut précédent et plus bas précédent sur mon graphique, le souci je ne trouve pas le moyen de le configurer.
Exemple openday, openmonth, openyear.
Je ne trouve pas la configuration pour le OPEN (semaine) & (trimestriel)
Merci
Plus bas et plus haut précédent1234567891011121314151617once currenthigh=highonce currentlow=lowonce previoushigh=undefinedonce previouslow=undefinedif openday <> openday[1] thenprevioushigh=currenthighpreviouslow=currentlowcurrenthigh=highcurrentlow=lowelsecurrenthigh=max(high,currenthigh)currentlow=min(low,currentlow)endifreturn previoushigh coloured(255,255,0) as "Précédent haut journalier", previouslow coloured(255,255,0) as "Précédent bas journalier"1 user thanked author for this post.
10/31/2017 at 11:27 AM #51047Une piste pour le trimestriel: https://www.prorealcode.com/topic/monthly-high-low-close-indicator/
Pour le weekly (hebdomadaire), tu trouveras des exemples dans les codes de points pivots :
https://www.prorealcode.com/prorealtime-indicators/daily-weekly-monthly-pivot-points/
https://www.prorealcode.com/prorealtime-indicators/weekly-daily-pivot-points/
1 user thanked author for this post.
10/31/2017 at 12:36 PM #51056Bonjour Nicolas,
J’ai bien réussi à trouver la solution avec les liens, merci.
Il me reste un souci de syntaxe que je n’arrive pas à résoudre.( car je souhaite insérer dans un seul indicateur le Openyear & Openmonth {1} )
John.
souci syntaxe introuvable1234567891011121314151617181920212223242526272829303132333435//Plus bas - Plus haut - Annuel//once currenthighannuel=highonce currentlowAnnuel=lowonce previoushighAnnuel=undefinedonce previouslowAnnuel=undefinedif openyear <> openyear[1] thenprevioushigh=currenthighAnnuelpreviouslow=currentlowAnnuelcurrenthighAnnuel=highcurrentlowAnnuel=lowelsecurrenthigh=max(high,currenthigh)currentlowAnnuel=min(low,currentlowAnnuel)endif//Plus bas - Plus haut - Mensuel//once currenthighmensuel=highonce currentlowmensuel=lowonce previoushighmensuel=undefinedonce previouslowmensuel=undefinedif openmonth <> openmonth[1] thenprevioushigh=currenthighmensuelpreviouslow=currentlowmensuelcurrenthighmensuel=highcurrentlowmensuel=lowelsecurrenthighmensuel=max(high,currenthighmensuel)currentlowmensuel=min(low,currentlowmensuel)endifreturn previoushigh1 coloured(0,0,0) as "Précédent haut annuelle",previouslow1 coloured(0,0,0) as "Précédent bas annuelle" ,previoushighmensuel coloured(139,0,139) as "Précédent haut mensuel", previouslowmensuel coloured(139,0,139) as "Précédent bas mensuel"10/31/2017 at 3:22 PM #5108510/31/2017 at 4:24 PM #51097Oui tu as raison, j’ai mis les plus haut et les plus bas précédent dans un fichier seul, mais au chargement sa prend un temp fou, le fichier est propre? il i y’a moyen de faire une autoroute plus courte.pour un chargement moins long ?
John
Long au chargement123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384////ONCE DAY////once currenthighday=highonce currentlowday=lowonce previoushighday=undefinedonce previouslowday=undefined////ONCE WEEK////once currenthighweek=highonce currentlowweek=lowonce previoushighweek=undefinedonce previouslowweek=undefined////ONCE MONTH////once currenthighmonth=highonce currentlowmonth=lowonce previoushighmonth=undefinedonce previouslowmonth=undefined////ONCE TRIMESTRIAL////trimH=max(trimH,high)trimL=min(trimL,low)////ONCE ANNUEL////once currenthighannuel=highonce currentlowannuel=lowonce previoushighannuel=undefinedonce previouslowannuel=undefined////OPEN DAY////if openday <> openday[1] thenprevioushighday=currenthighdaypreviouslowday=currentlowdaycurrenthighday=highcurrentlowday=lowelsecurrenthighday=max(high,currenthighday)currentlowday=min(low,currentlowday)endif////OPEN WEEK////if DayOfWeek<DayOfWeek[1] thenprevioushighweek=currenthighweekpreviouslowweek=currentlowweekcurrenthighweek=highcurrentlowweek=lowelsecurrenthighweek=max(high,currenthighweek)currentlowweek=min(low,currentlowweek)endif////OPEN MONTH////if openmonth<>openmonth[1]thenprevioushighmonth=currenthighmonthpreviouslowmonth=currentlowmonthcurrenthighmonth=highcurrentlowmonth=lowelsecurrenthighmonth=max(high,currenthighmonth)currentlowmonth=min(low,currentlowmonth)endif////OPEN TRIMESTRIAL////If openMonth<>openMonth[1] thenif openmonth=4 or openmonth=7 or openmonth=10 or openmonth=1 thentrimestrialH=trimHtrimestrialL=trimLtrimL=close*100trimH=0endifendif////OPEN ANNUEL////if openyear <> openyear[1] thenprevioushighannuel=currenthighannuelpreviouslowannuel=currentlowannuelcurrenthighannuel=highcurrentlowannuel=lowelsecurrenthighannuel=max(high,currenthighannuel)currentlowannuel=min(low,currentlowannuel)endifreturn previoushighday coloured(46, 134, 193) as "Précédent haut journalier", previouslowday coloured(46, 134, 193) as "Précédent bas journalier", previoushighweek coloured(0,0,0) as "Précédent haut semaine", previouslowweek coloured(0,0,0) as "Précédent bas semaine", previoushighmonth coloured(250, 47, 47) as "Précédent haut mensuel", previouslowmonth coloured(250, 47, 47) as "Précédent bas mensuel", trimestrialH coloured(255, 195, 0) as "Précédent haut trimestriel", trimestrialL coloured(255, 195, 0) as "Précédent bas trimestriel", previoushighannuel coloured(176, 0, 165) as "Précédent haut annuelle", previouslowannuel coloured(176, 0, 165) as "Précédent bas annuelle"12/16/2017 at 2:32 AM #55795Bonjour
Pour le mensuel n y a t il pas de faux signaux car il y a des mois à 30 et 31 jours mais je ne connais pas l astuce pour filtré, Nicolas j aimerais rajouté le plus haut et bas precedent en h6 parce que pas mal de retour sur cet zone, une suggestion s il te plais…
Merci
01/17/2018 at 11:36 AM #5970402/06/2018 at 10:55 AM #6165302/06/2018 at 10:59 AM #6165402/06/2018 at 2:19 PM #61702Bonjour Jhonhamy
Sur le graphique joint avec le code de l’indicateur je souhaiterais simplement, que la barre rouge de l’histogramme sous la flèche noire, n’apparaisse
que lorsque le close est vraiment défini à la fin de la bougie . Ce qui n’est pas le cas sur le graphique joint puisque la bougie ne fait que de commencer à se construire.
Je ne sais pas si c’est possible???
1 user thanked author for this post.
02/06/2018 at 3:59 PM #61728Pour cela il faut “dessiner” dans le passé, et ça n’est pas possible avec un histogramme, car on ne peut pas changer la valeur d’une variable dans le passé… A moins de faire une boucle globale dans l’historique, ce qui modifierait pas mal ton code.
Je te propose de plutôt dessiner des rectangles (car on peut utiliser les objets graphiques pour les tracer où et quand on veut) à la place de tes histogrammes. Merci de poster le code en texte pour faire les modifications.
1 user thanked author for this post.
02/07/2018 at 8:50 AM #61826Bonjour Nicolas
je me suis servi du bouton insert code j’espère que le code est bien copié?
mais voilà il ne fonctionne pas comme je l’aurais souhaité , il y a quelque chose qui m’échappe, je voulais que ce code m’indique un signal lorsque
dans le Tma channel il y a un brusque changement de direction et que le signal soit sur la bougie en question.
Comptant sur ta grande compétence
Madrosat12345678910111213141516171819202122232425262728293031323334// parameters// HalfLength = 50// AtrLength = 100// AtrMultiplier = 2.0avg = average[1](close)sum = (HalfLength+1)*avgsumw = (HalfLength+1)k = HalfLengthfor j = 1 to HalfLength dok = k-1sum = sum+(k*avg[j])sumw = sumw+knextbuffer1 = sum/sumwmyrange = AverageTrueRange[AtrLength](close)*AtrMultiplierbuffer2 = buffer1+myrangebuffer3 = buffer1-myrangeif ( buffer2 - close) > (buffer2[1] - buffer3[1]) thensignal = -1elsif (close - buffer3[0]) > abs(buffer2[1] - buffer3[1]) thensignal = 1elsesignal = 0endifReturn signal as "signal ecart tma et close important"///RETURN buffer1 coloured(0,220,0) as "TMA", buffer2 coloured(220,0,0) as "upper ///band", buffer3 coloured(0,220,0) as "lower band"02/07/2018 at 11:12 AM #61842J’ai compris ce que tu cherches à faire et ton code est parfait pour cela, mais en effet il ne détecte pas un “brusque changement”, mais une continuité de cette condition, c’est bien cela ? Si oui, il faudrait peut être agir comme ceci plutôt :
123456789101112131415161718192021222324252627282930313233343536// parametersHalfLength = 50AtrLength = 100AtrMultiplier = 2.0avg = average[1](close)sum = (HalfLength+1)*avgsumw = (HalfLength+1)k = HalfLengthfor j = 1 to HalfLength dok = k-1sum = sum+(k*avg[j])sumw = sumw+knextbuffer1 = sum/sumwmyrange = AverageTrueRange[AtrLength](close)*AtrMultiplierbuffer2 = buffer1+myrangebuffer3 = buffer1-myrangebear = ( buffer2 - close) > (buffer2[1] - buffer3[1])bull = (close - buffer3) > abs(buffer2[1] - buffer3[1])if bear and not bear[1] thensignal=-1elsif bull and not bull[1] thensignal=1elsesignal=0endifReturn signalJe n’ai pas modifié ta logique de différences entre les Close et les bandes supérieures et inférieures, je ne sais pas si elle est correcte.
02/08/2018 at 7:13 AM #61951Bonjour et merci Nicolas je ne voyais pas comment m’en sortir, il fallait
détecter le sens avec bull et bear Bravo , en modifiant le coeff atr multiplier on doit pouvoir
augmenter ou diminuer le nombre de signaux.Je vais maintenant essayer d’intégrer ce signal dans une stratégie.
Bonne journée02/24/2019 at 1:16 PM #92189Bonjour,
je souhaiterai récupérer la valeur du volume associée au plus haut / plus bas récupéré par le code (je le recolle ici car depuis le premier sujet il a pas mal changé) :
1234567891011121314151617once currenthighmensuel=highonce currentlowmensuel=lowonce previoushighmensuel=undefinedonce previouslowmensuel=undefinedif openmonth <> openmonth[1] thenprevioushighmensuel=currenthighmensuelpreviouslowmensuel=currentlowmensuelcurrenthighmensuel=highcurrentlowmensuel=lowelsecurrenthighmensuel=max(high,currenthighmensuel)currentlowmensuel=min(low,currentlowmensuel)endifreturn previoushighmensuel coloured(139,0,139) as "Précédent haut mensuel", previouslowmensuel coloured(139,0,139) as "Précédent bas mensuel"J’ai d’abord pensé à faire une boucle qui irait chercher sur la totalité des données chargées, les égalités avec le plus haut/plus bas afin de récupérer le volume. Cependant, autant en journalier je n’ai pas bcp bougies mais si je me met en 1h et que ma boucle remonte jusqu’à la veille (ou plus vu que la je récupère le plus haut/bas du mois précédent), j’ai peur d’avoir des soucis de performance… Auriez vous une autre approche ?
En vous remerciant,
-
AuthorPosts
Find exclusive trading pro-tools on