T1 – non-croisement MM7 et 23
Forums › ProRealTime forum Français › Support ProScreener › T1 – non-croisement MM7 et 23
- This topic has 9 replies, 2 voices, and was last updated 2 years ago by JC_Bywan.
-
-
10/06/2022 at 8:25 AM #201975
Bonjour Nicolas et à la toute communauté,
Etant une vrai brêle pour la programmation, j’aurai besoin d’un coup de pouce, en effet en farfouillant sur le forum j’utilise les lignes de commande ci-dessous (non-croisement MM7 et 23) mais pourriez-vous m’aider à rajouter une condition “recherche T1” aussi bien pour la bande supérieure que pour la bande inférieure.
Je vous remercie par avance de l’aide précieuse que vous pourrez m’apporter.
Cordialement
1234567891011121314151617181920sma7=Average[7](close)sma23=Average[23](close)E=abs(sma7-sma23)maxecart = std[23] //pips/pointsbottom1=sma7[1]<sma7[2] and sma7>sma7[1]top1=sma7[1]>sma7[2] and sma7<sma7[1]up= sma7>sma23 and summation[3](sma7<=sma7[1])[1]=3 and summation[3](sma7>sma23)=3 and e<=maxecart and bottom1down = sma7<sma23 and summation[3](sma7>=sma7[1])[1]=3 and summation[3](sma7<sma23)=3 and e<=maxecart and top1if up thendir=1elsif down thendir=-1endifscreener[up or down] (dir as "direction")10/06/2022 at 9:18 AM #201978Bonjour, bienvenue pour ce premier post,
J’ai farfouillé pour trouver ton farfouillage, a priori ça vient de là (toujours utile de lier le topic de départ si on fait un post séparé, que ce soit pour aider ceux qui aident au cas où il y ait besoin de revenir à la source, ou tout simplement pour donner la référence aux autres personnes intéressées par le sujet):
https://www.prorealcode.com/topic/codage-non-croisement-d-mm/
Ajoût de recherche de T1 à tester:
12345678910111213141516171819202122232425sma7=Average[7](close)sma23=Average[23](close)E=abs(sma7-sma23)maxecart = std[23] //pips/pointsbottom1=sma7[1]<sma7[2] and sma7>sma7[1]top1=sma7[1]>sma7[2] and sma7<sma7[1]up= sma7>sma23 and summation[3](sma7<=sma7[1])[1]=3 and summation[3](sma7>sma23)=3 and e<=maxecart and bottom1down = sma7<sma23 and summation[3](sma7>=sma7[1])[1]=3 and summation[3](sma7<sma23)=3 and e<=maxecart and top1T1haut = close crosses over BollingerUp[20](close)T1bas = close crosses under BollingerDown[20](close)upt1= up and T1hautdownt1= down and T1basif up thendir=1elsif down thendir=-1endifscreener[upt1 or downt1] (dir as "direction")La requête n’étant pas détaillée au-delà de “recherche de T1”, le code va au plus simple avec l’addition de “AND T1haut” (resp. T1bas). S’il y avait d’autres critères concernant une éventuelle distance “horizontale” entre le non croisement et le T1, ce serait à préciser pour modifier en conséquence.
Edit: code modifié à 10h30
10/06/2022 at 9:27 AM #201980Bonjour JC_ Bywan
Ok je ne manquerais pas la prochaine fois de rendre à Cesar ce qui lui appartient en liant le post de départ, vous avez raison.
Je viens de faire des tests par rapport à vos lignes de commande, il me ressort bien les non-croisements, par contre les valeurs ressortis ne sont absolument pas en T1 (cad sortie des bandes de Bollinger) ? une idée peut-être.
10/06/2022 at 9:44 AM #201982Oui, le code étais faux je suis allé trop vite en ayant gardé juste [up or down] en critère, puis je ne l’ai pas édité assez vite, tu as eu le temps de voir la mauvaise version et de répondre. En plus je réalise que mon heure d’edit a un décalage de 1h avec l’heure du site, ce qui rajoute à la confusion. Pour éviter toute ambiguité, je remets le code ici (bonne heure et bonne version), et réitère l’éventuel bémol sur absence de critère concernant un éventuel espacement temporel entre non croisement et T1:
12345678910111213141516171819202122232425sma7=Average[7](close)sma23=Average[23](close)E=abs(sma7-sma23)maxecart = std[23] //pips/pointsbottom1=sma7[1]<sma7[2] and sma7>sma7[1]top1=sma7[1]>sma7[2] and sma7<sma7[1]up= sma7>sma23 and summation[3](sma7<=sma7[1])[1]=3 and summation[3](sma7>sma23)=3 and e<=maxecart and bottom1down = sma7<sma23 and summation[3](sma7>=sma7[1])[1]=3 and summation[3](sma7<sma23)=3 and e<=maxecart and top1T1haut = close crosses over BollingerUp[20](close)T1bas = close crosses under BollingerDown[20](close)upt1= up and T1hautdownt1= down and T1basif up thendir=1elsif down thendir=-1endifscreener[upt1 or downt1] (dir as "direction")10/06/2022 at 10:11 AM #20199310/06/2022 at 11:08 AM #202000REM Clôture au dessus de la Boll sup
Condition1 = (Close > BollingerUp[20](Close))
REM Clôture > à l’Ouverture
Condition2 = Close > Open
Ne serait-ce pas plus simple de rajouter ces lignes de commandes pour un T1 haussier ? en y rajoutant les lignes de commandes précédentes ?
10/06/2022 at 3:45 PM #202019Mettre > ferait aussi ressortir les cas où on est au-dessus depuis longtemps plutôt qu’un T1 qui correspond au crossover de la bande. Sauf si… et j’en reviens aux critères sur l’enchainement sur l’horizontale des événements entre T1 et non-croisement et leur éventuel espacement, sauf si on veut le T1 avant le non-croisement par exemple (auquel cas ce n’est pas le point de crossover du T1 qu’on cherche en critère, et ça ne se coderait pas pareil que la requête de départ).
Si tu as une capture écran du type de configuration que tu veux détecter, et d’ailleurs aussi une autre capture écran d’un cas qui est sorti mais que tu considères farfelu, ça donnerait des indications supplémentaires pour coder ce que tu cherches. Pour joindre une ou plusieurs captures écran, on peut utiliser le bouton “select file” juste sous la fenêtre d’édition de message et juste avant le grand cadre jaune
10/07/2022 at 10:52 AM #202071Bonjour JC_Bawan,
merci encore de votre aide précieuse. J’ai refait des tests hier soir et ce matin, apparement ça marche. Je referai encore des tests ces prochains jours.
Par contre je souhaiterai encore rajouter 2 critères supplémentaires : volume > 50000 titres et valeur > 5 euros ou dollars afin d’éviter les penny stocks.
Bon weekend
10/09/2022 at 9:14 AM #202130Bonjour @JC_Bawan,
merci encore de votre aide précieuse. J’ai refait des tests hier soir et ce matin, apparement ça marche. Je referai encore des tests ces prochains jours.
Par contre je souhaiterai encore rajouter 2 critères supplémentaires : volume > 50000 titres et valeur > 5 euros ou dollars afin d’éviter les penny stocks.
Bon weekend
10/09/2022 at 9:27 AM #202131Bonjour,
on met le critère précédent en condition c1, les 2 autres critères en c2 et c3, et on screen sur les 3 ainsi:
1234567891011121314151617181920212223242526272829sma7=Average[7](close)sma23=Average[23](close)E=abs(sma7-sma23)maxecart = std[23] //pips/pointsbottom1=sma7[1]<sma7[2] and sma7>sma7[1]top1=sma7[1]>sma7[2] and sma7<sma7[1]up= sma7>sma23 and summation[3](sma7<=sma7[1])[1]=3 and summation[3](sma7>sma23)=3 and e<=maxecart and bottom1down = sma7<sma23 and summation[3](sma7>=sma7[1])[1]=3 and summation[3](sma7<sma23)=3 and e<=maxecart and top1T1haut = close crosses over BollingerUp[20](close)T1bas = close crosses under BollingerDown[20](close)upt1= up and T1hautdownt1= down and T1basif up thendir=1elsif down thendir=-1endifc1= upt1 or downt1c2= volume>50000c3= close>5screener[c1 and c2 and c3](dir as "direction")1 user thanked author for this post.
-
AuthorPosts
Find exclusive trading pro-tools on