screener tri par REEL % de hausse entre x bars
Forums › ProRealTime forum Français › Support ProScreener › screener tri par REEL % de hausse entre x bars
- This topic has 17 replies, 4 voices, and was last updated 6 months ago by PASCAL VERBIST.
-
-
11/15/2023 at 2:46 PM #223729
Bonjour…je suis fatigué… car personne ne peux me répondre. J’ai essayé des dizaines de combinaisons possible jamais je ne trouve la même différence qu’en utilsant la règle c’est énervant.
Je veux trier mes résultats par la plus grande hausse sur X bars.
Pas la plus grand cloture.
Sur 21 bars, le prix monte de 100% entre le plus bas des 21 bars et le plus haut, pas les clotures, et si je mesure à la règle, ça fait bien +100%
Après le prix a baissé de 50% est n’est plus qu’à +50% du plus bas des 21 bars. Mais ça je m’en fiche. Je veux avoir un screener avec la véritable différence entre le plus bas et le plus haut sur les X BARS.
S’ilvous plait , merci11/15/2023 at 2:50 PM #223730Ah oui, et que la mesure ne se fasse pas sur la 21 eme bar par rapport à aujourd’hui, mais dans un espace des 21 ou 100 ou on s’en fiche… sur les X dernières bares, la plus forte hausse. Peut être que ça a été entre la bare 5 et la bare 18 mais voilà c’est l’idée.
11/15/2023 at 3:04 PM #223731sur l’image on voit ce que je recherche à obtenir comme résultat, pas de la 21 ème bare, ni la cloture du plus bas ou du plus haut, mais bien la pure VARIATION à la hausse dans cette univers de X bars, mais il faut pas que ce soit une baisse non plus, car si un action baisse, on peut faire la meme chose et obtenir une différence +.
11/16/2023 at 9:41 AM #223789Bonjour…je suis fatigué… car personne ne peux me répondre
Lien vers le topic? Ou bien ce n’était pas ici? Si pas de lien ou pas de code dans le lien, état de ton code qui s’en rapproche le plus pour éviter aux lecteurs qui voudraient aider de partir de zéro?
sur l’image on voit
Pas d’image attachée, mais sans l’attendre, au cas où on peut déjà commencer par quelques éléments: je vais faire l’hypothèse que tu es passé par les instructions highest et lowest, mais que tu les as appliquées aux closes, si c’est le cas alors essaie plutôt avec highest des high et lowest des low, je rajoute un test pour n’avoir que les chronologies [ low d’abord ; high après ] :
X=21// ton X barres
Numpct=100// la hausse mini voulue sur X barres, entrer 50 pour 50%, 100 pour 100%, etc…a=highest[X](high)
b=lowest[X](low)abar=highestBars[X](high)
bbar=lowestBars[X](low)result= abar<bbar and bbar<X and a/b >= (1+Numpct/100)
11/16/2023 at 3:56 PM #223815Salit JC, merci de ta réponse.
Alors j’ai essayé trois fois d’envoyer une image et impossible…ça la charge bien mais ça l’affiche pas..
pourtant cela ne fait que 474 kb
11/17/2023 at 10:55 AM #223862Salut JC, alors j’ai l’impression que affiche des actions qui monte oui, mais quand je mets :
screener (result)(result as “%”) et bien ma colonne de tri m’affiche que des 1, moi je voudrais la performance sur les x barres entre le plus haut et le plus bas.
11/17/2023 at 11:18 AM #223865En réponse aux 2 posts, celui avec l’image qui décrit l’affichage souhaité, et celui avec ton essai de ligne screener, d’un côté en effet “result” est bien la variable booléenne (donc qui vaut 0 pour faux ou vrai pour 1) qui est celle à utiliser comme condition dans un format SCREENER[condition ](critère de tri),
mais d’un autre côté si tu souhaites un affichage de la variation pour le critère de tri entre parenthèses, cela ne peut pas venir de cette même variable “result” limitée à 0 ou 1 , la variation en tant que multiple a été obtenue avec le calcul a/b dans le bout de code pré-image, c’est cela qu’il faut considérer pour le tri.
Ensuite se pose aussi la question du format du nombre à afficher. Si par exemple on a monté de 150%, en regardant le calcul brut a/b, ça donnerait 2,5 mais si pour l’affichage dans la colonne tu veux transformer ce 2,5 (un multiple) en 150 (un numérateur de pourcentage), alors sauf erreur tu veux (a/b-1)*100 c’est à dire prolonger le code par:
pct= (a/b-1)*100
SCREENER[result](pct as “%”)
11/17/2023 at 12:29 PM #223866erreur , cela affiche +968% pour LIFW, l’action en photo.
mon code est le suivant:
1234567891011121314151617//conditionsX=21// ton X barresNumpct=100// la hausse mini voulue sur X barres, entrer 50 pour 50%, 100 pour 100%, etc…a=highest[X](high)b=lowest[X](low)abar=highestBars[X](high)bbar=lowestBars[X](low)result= abar<bbar and bbar<X and a/b >= (1+Numpct/100)//tripct= (a/b-1)*100//screenerscreener[result ](pct as "%")11/17/2023 at 2:21 PM #223870Je ne vois pas d’erreur dans le code, si je regarde le graphe LIFW du post #223815 tu sembles avoir un highest high sur la grande bougie du 6/11, mais de mon côté sur PRT trading j’ai un graphe différent, où cette mèche haute est beaucoup plus petite (cloture à 9.14 et high à seulement 9.15 pas entre 15 et 20 pour +1584% depuis le low à 1.05) et ne donne pas le plus haut récent, ce plus haut récent étant situé 2 bougies plus tard à 11.22 le 8/11, et de 1.05 à 11.22 on a bien eu +968% dans un intervalle pas plus grand que 21 barres, ce que te retournes le screener.
Pourquoi ton graphe est différent de ton screener, alors que mon graphe correspond bien au screener, ça je n’en sais rien… j’aide juste les autres utilisateurs comme moi à coder si je peux quand je peux, mais pour des problèmes de données de départ en amont du code je ne peux pas grand chose, il faut voir avec son courtier.
11/21/2023 at 10:27 AM #224019salut JC je suis allé verifier sur trading view et je tombe sur le meme % de hausse, 1584%. Du plus bas, au plus haut…
11/21/2023 at 4:40 PM #224067Bonjour, ci-dessous un code qui devrait correspondre à ce que vous recherchez
Max runup123456789101112131415161718192021222324NbCandle=21if NbCandle = 0 thenonce mini=lowonce maxi=highmini=min(mini,low)maxi=max(maxi,high)runnup=(close-mini)/mini*100CandleMaxRunnup = (high-mini)/mini*100maxrunnup=max(maxrunnup,CandleMaxRunnup)elsif NbCandle > 0 thenmini = low[NbCandle]maxi = High[NbCandle]maxrunnup = 0FOR i = 1 to NbCandle domini=min(mini,low[NbCandle - i])maxi=max(maxi,high[NbCandle - i])runnup=(Close[NbCandle - i]-mini)/mini*100CandleMaxRunnup = (high[NbCandle - i]-mini)/mini*100maxrunnup=max(maxrunnup,CandleMaxRunnup)NEXTendifSCREENER(maxrunnup as "MaxRunup",runnup as "RunUp")11/22/2023 at 11:10 PM #224174Bonjour CotiR. J’ai essayé , et sur le troisième résultat , sur le nasdaq, en journalier, je trouve un bug c’est normal? L’action baisse clairement, et si quand même je mesure à la hausse dans le passé sur 21 jours je tombe pas sur +4242% mais sur +100,33%…
11/22/2023 at 11:11 PM #224176Par contre sur celle là ça fonctionne
11/22/2023 at 11:13 PM #2241784 ème résultat…idem
11/22/2023 at 11:35 PM #224179C’est quand même compliqué un truc simple.
-
AuthorPosts
Find exclusive trading pro-tools on