SCREENER TEST BREAKOUT
Forums › ProRealTime forum Français › Support ProScreener › SCREENER TEST BREAKOUT
- This topic has 15 replies, 2 voices, and was last updated 3 years ago by Daniele Maddaluno.
-
-
12/19/2020 at 3:08 PM #154428
Bonjour,
J’ai repris un code existant dans la bibliothèque
// https://www.prorealcode.com/topic/resistance/
et j’ai rajouté les lignes de code nécessaire pour me calculer à quelle distance
du breakout le cours de l’action se situe.
J’obtiens qui est juste en euros, mais qui dépasse ma limite de test entre 0.98 et 1
je joins le code
Je n’arrive pas à comprendre pourquoi ?
une idée, pour que je trouve
Merci d’avance
Cordialement
Test BREAKOUT12345678910111213141516171819202122232425RESISTANCE = HIGHEST[9](HIGH)IF RESISTANCE>RESISTANCE[1] AND CLOSE>RESISTANCE[1] THENRES = RESISTANCE[0]ELSERES = RESISTANCE[1]ENDIFres = ( CLOSE - resistance )if CLOSE >= 0.98 and close <1 thenTOP = 1endifSCREENER [ top ] ( Res as"ÉCART / RES")???
12/19/2020 at 11:22 PM #154491Avec cette condition “CLOSE> = 0.98 et close <1” vous vérifiez si le prix (close) est compris entre 0,98 et 1, est-ce ce que vous avez l’intention de faire?
Si c’est le cas, écrire à la place:screenerexample12top = CLOSE >= 0.98 and close <1 // votre condition de filtreSCREENER [ top ] ( Res as "ÉCART / RES")sinon, donnez-nous plus d’informations sur ce que vous vouliez faire.
Un accueil et une bonne soirée.12/20/2020 at 6:35 AM #154523Bonjour,
merci pour la réponse. En effet, je veux la liste des actions entre – 2% et 0 du point de breakout.
en effet, ça me paraît plus pertinent écris ainsi.
Je vais corriger et tester les actions que me donnent la liste
Je reviendrais pour confirmer le résultat, Je vous souhaite une agréable journée.
Cordialement
12/20/2020 at 6:49 AM #154525Je viens de modifier le code, et en vérifiant les résultats j’ai toujours le même problème
en H1 j’ai une liste de 9 actions, mais le test ne correspond pas à la limite des 2%
je prend l’exemple de OREGE qui est donné par le screener
Clôture de vendredi soir 1.175 et BREAKOUT à venir 1.20 soit à une distance de – 2.13%
Pour DOLFINES l’écart est de -8.81% clôture 1.93 niveau du breakout 2.10
Je vais y réfléchir.
si une idée je suis preneur pour comprendre
Cordialement
12/20/2020 at 7:18 AM #154526Je crois avoir compris mon erreur
en fait le screener me sort non pas le % mais la valeur en euros
pour DOLFINNES = -0.17 , c’est l’écart en euros et non en %
doit manquer une conversion du résultat en %
je vais regarder ça mais une aide est toujours acceptée
Cordialement
12/20/2020 at 10:40 AM #154547En attendant, il est étrange que vous créiez une variable “res” et que vous ne l’utilisiez pas dans les étapes suivantes … (avec le code “IF RESISTANCE> RESISTANCE [1] AND CLOSE> RESISTANCE [1] THEN RES = RESISTANCE [0] ELSE RES = RÉSISTANCE [1] ENDIF “).
Pour les prochaines fois, je vous suggère de procéder par étape, d’écrire d’abord l’indicateur pour probuilder, puis de l’amener au proscreener, il est plus facile de visualiser les erreurs.
Je peux écrire un code de ce que je pense que vous aimeriez faire …
En supposant que la variable res que vous créez (que vous avez copiée à partir de ce lien que vous avez mis dans le premier article) est votre niveau de référence:screenerexample21234567891011121314resistance = highest[9](high)if resistance>resistance[1] and close>resistance[1] thenres = resistance[0]elseres = resistance[1]endif// (close : res = x : 100) - 100// percentage variation from resperc = ( ( close*100 )/res ) - 100filter = perc >= 0.98 and perc < 1screener [ filter ]( perc as "perc" )Je ne suis pas sûr que ce soit ce dont vous aviez besoin, mais pour passer de “a”, “b” au pourcentage de changement de “a” à “b”, tapez simplement:
percDistanceFromRes123// perc = (b : a = x : 100) - 100// percentage variation from a to bperc = ( ( b*100 )/a ) - 100où “a” et “b” sont vos deux variables à considérer.
12/20/2020 at 1:08 PM #154574Daniele,
Merci je vais regarder votre code, et je vais modifier avec le code en % de vos lignes
je fais un test mais je crois savoir d’où viens l’erreur puisque je ne convertissais pas en %, mais en
euros
Le code fonctionne et me donne les bons résultats par rapport à mes limites en euros
Merci, mille fois pour votre aide
Bonne journée
Cordialement
12/20/2020 at 3:18 PM #154595Help,
j’ai tout essayé, je n’arrive pas à convertir en % le résultat afin que le test fonctionne correctement limité à 2%
J’obtiens le résultat ci-dessous qui est exprimé en euros
merci pour une aide complémentaire
cordialement
12/20/2020 at 4:01 PM #154603Pardonne-moi mais je ne comprends toujours pas.
Pouvez-vous s’il vous plaît réexpliquer, point par point:
1) ce que votre code doit faire (et dans quelle mesure est-il correct pour le moment)
2) comment vous souhaitez filtrer vos titres
3) quelle valeur voulez-vous afficher pour les titres filtrésSi vous décrivez bien ces trois points, nous résolvons le problème immédiatement.
L’avez-vous fait avant comme je l’ai suggéré? Autrement dit, commencez à écrire un code fonctionnel dans probuilder avant de le transformer en filtre sur le proscreener.12/20/2020 at 4:20 PM #154607Merci pour la réponse
J’ai effectivement recopié votre code.
Voilà ce que je veux en prenant les éléments de départ du screener
Je veux une liste qui me donne les actions à 2% maxi du BREAKOUT
Exemple à vendredi sur DOLFINNES
Le BREAKOUT avec le code situe à 2.10 et le cours de clôture est de 1.93
Sur mon image cette valeur ressort à 0.17 mais ce montant est exprimé en euros soit 2.10 – 1.93 = 0.17 soit 8.83% du BREAKOUT
Donc avec ma liste >= .98 il ne devrait pas sortir sur ma liste.
En fait la ligne dans mon code,
RES = (CLOSE – résistance ) me donne le résultat qu’il faut convertir % pour que le screener puisse ne pas en tenir compte puisqu’il représente 8%
supérieur à la limite de 2% que je fixe.
en espérant que mes explications sont claires.
Merci
12/20/2020 at 10:07 PM #154661Désolé, je n’ai toujours pas assez d’informations pour vous amener à coder.
Pour le moment, je ne peux que vous suggérer de prendre le code et d’essayer de l’écrire d’abord avec le probuilder, et “return” valeurs clés …
Une fois que cela fonctionne, il sera très facile de le transformer en proscreener.
Assurez-vous que “filtre” est défini sur 1 lorsque vous souhaitez que le titre soit visible, 0 sinon.probuilderex1123456789101112131415161718resistance = highest[9](high)if resistance>resistance[1] and close>resistance[1] thenres = resistance[0]elseres = resistance[1]endif// (close : res = x : 100) - 100// percentage variation from resperc = ( ( close*100 )/res ) - 100diffVal1 = ( close - res )diffVal2 = ( close - resistance )filter = perc >= 0.98 and perc < 1.00 // like this filter is +1 when the variation from the res is between +0.98% and 1.00%return perc as "perc", diffVal1 as "diffVal1", diffVal2 as "diffVal2", filter as "filter"// screener [ filter ]( xyz as "xyz" ) // replace xyz with perc/diffVal1/diffVal2 or whatever you wantÀ bientôt!
12/21/2020 at 8:17 AM #154688Bonjour,
Désolé j’ai repris votre code mais ça ne fonctionne pas.
Je n’obtiens aucun résultat.
Je vais reformuler ma demande plus clairement
12/21/2020 at 8:26 AM #154690Ma nouvelle demande
J’utilise le code ci-dessous que j’ai repris dans la bibliothèque de PRT ( voir le lien au début de mon message )
Ce code fonctionne parfaitement sur le Graphique
Il m’affiche correctement le niveau de breakout
Resistance BREAKOUT12345678910111213141516RESISTANCE = HIGHEST[9](HIGH)res = highest[max(1,barindex)](close)IF RESISTANCE>RESISTANCE[1] AND CLOSE>RESISTANCE[1] THENRES = RESISTANCE[0]ELSERES = RESISTANCE[1]ENDIFRETURN RESCe que je recherche à partir de ce code, c’est de créer un screener qui me donne toutes les actions qui
entre -2% et le niveau du breakout
SCREENER12345678910111213141516171819202122232425RESISTANCE = HIGHEST[9](HIGH)IF RESISTANCE>RESISTANCE[1] AND CLOSE>RESISTANCE[1] THENRES = RESISTANCE[0]ELSERES = RESISTANCE[1]ENDIFRES = (( resistance*100 / CLOSE*100) /100 ) - 100IF CLOSE >= 0.98 and CLOSE <1 THENTOP = CLOSE >= 0.98 and CLOSE < 1ENDIFSCREENER [ TOP ] ( RES as"ECART / RES")Donc suite à cela, le test n’est pas correct puisque le screener me donne des valeurs
dont l’écart entre le breakout et la close est supérieure à 2% alors que je veux limiter la liste
aux valeurs qui sont maxi à 2% du breakout.
En espèrant que ma formulation est plus claire
Merci
Cordialement
12/21/2020 at 10:28 AM #154703“entre -2%” voulez-vous dire une variation entre 0 et -2% par rapport au niveau res (de votre indicateur)?
Vous remplacez la valeur de res dans votre code.
“res = highest[max(1,barindex)](close)” cette ligne n’a aucun sens … vous la remplacez dans le prochain “ifelse”.Sur le probuilder, vous pouvez imprimer la distance en pourcentage de votre résistance comme ceci:
probuilderex312345678910111213resistance = highest[9](high)if resistance>resistance[1] and close>resistance[1] thenres = resistance[0]elseres = resistance[1]endif// percentage variation from resperc = ( ( close*100 )/res ) - 100return percSi cette valeur de pourcentage est correcte et que vous ne voulez que des titres à une distance comprise entre 0% et -2% de res vous pouvez écrire le proscreener comme ceci:
screenerEx12345678910111213resistance = highest[9](high)if resistance>resistance[1] and close>resistance[1] thenres = resistance[0]elseres = resistance[1]endif// percentage variation from resperc = ( ( close*100 )/res ) - 100filter = perc <= 0 and perc >= -2 // between 0% and -2% from resscreener [ filter ]( perc as "Perc distance from res" )12/21/2020 at 1:35 PM #154726C’est parfait,
je viens de vérifier tous les résultats du screener.
Mille mercis d’avoir passé du temps pour faire avancer mon idée et de m’avoir aidé à comprendre mon erreur.
J’en profite pour vous souhaiter de bonnes fêtes de fin d’année
Cordialement
-
AuthorPosts
Find exclusive trading pro-tools on