1 position max par jour
Forums › ProRealTime forum Français › Support ProOrder › 1 position max par jour
- This topic has 10 replies, 2 voices, and was last updated 4 years ago by deletedaccount020221.
-
-
01/20/2021 at 5:18 PM #158709
Bonjour,
Je sais que cette question est régulièrement posée, mais je n’ai pas trouvé la solution dans les liens postés par Nicolas sur d’autres topics, d’autant que certains liens retournent une Erreur 404.
Pouvez vous svp m’aider en me proposant des lignes de code à rajouter au code ci-dessous afin de limiter le nombre de position par jour à 1 ?
Merci d’avance
Code12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849// Définition des paramètres du codeDEFPARAM CumulateOrders = False // Cumul des positions désactivé// Annule tous les ordres en attente et ferme toutes les positions à 0:00, puis empêche toute création d'ordre avant l'heure "FLATBEFORE".DEFPARAM FLATBEFORE = 093000// Annule tous les ordres en attente et ferme toutes les positions à l'heure "FLATAFTER"DEFPARAM FLATAFTER = 103000// Empêche le système de placer de nouveaux ordres sur les jours de la semaine spécifiésdaysForbiddenEntry = OpenDayOfWeek = 6 OR OpenDayOfWeek = 0// Conditions pour ouvrir une position acheteuseindicator1 = ExponentialAverage[20](close)indicator2 = ExponentialAverage[50](close)c1 = (indicator1 CROSSES OVER indicator2)IF c1 AND not daysForbiddenEntry THENBUY 0.5 CONTRACT AT MARKETENDIF// Conditions pour fermer une position acheteuseindicator3 = ExponentialAverage[20](close)indicator4 = ExponentialAverage[50](close)c2 = (indicator3 CROSSES UNDER indicator4)IF c2 THENSELL AT MARKETENDIF// Conditions pour ouvrir une position en vente à découvertindicator5 = ExponentialAverage[20](close)indicator6 = ExponentialAverage[50](close)c3 = (indicator5 CROSSES UNDER indicator6)IF c3 AND not daysForbiddenEntry THENSELLSHORT 0.5 CONTRACT AT MARKETENDIF// Conditions pour fermer une position en vente à découvertindicator7 = ExponentialAverage[20](close)indicator8 = ExponentialAverage[50](close)c4 = (indicator7 CROSSES OVER indicator8)IF c4 THENEXITSHORT AT MARKETENDIF// Stops et objectifsSET STOP pLOSS 80SET TARGET pPROFIT 12001/20/2021 at 9:43 PM #1587341234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253// Définition des paramètres du codeDEFPARAM CumulateOrders = False // Cumul des positions désactivé// Annule tous les ordres en attente et ferme toutes les positions à 0:00, puis empêche toute création d'ordre avant l'heure "FLATBEFORE".DEFPARAM FLATBEFORE = 093000// Annule tous les ordres en attente et ferme toutes les positions à l'heure "FLATAFTER"DEFPARAM FLATAFTER = 103000if currentdayofweek[1]<>currentdayofweek thentrade=0endif// Empêche le système de placer de nouveaux ordres sur les jours de la semaine spécifiésdaysForbiddenEntry = OpenDayOfWeek = 6 OR OpenDayOfWeek = 0// Conditions pour ouvrir une position acheteuseindicator1 = ExponentialAverage[20](close)indicator2 = ExponentialAverage[50](close)c1 = (indicator1 CROSSES OVER indicator2)IF c1 AND not daysForbiddenEntry and trade=0 THENBUY 0.5 CONTRACT AT MARKETtrade=1ENDIF// Conditions pour fermer une position acheteuseindicator3 = ExponentialAverage[20](close)indicator4 = ExponentialAverage[50](close)c2 = (indicator3 CROSSES UNDER indicator4)IF c2 THENSELL AT MARKETENDIF// Conditions pour ouvrir une position en vente à découvertindicator5 = ExponentialAverage[20](close)indicator6 = ExponentialAverage[50](close)c3 = (indicator5 CROSSES UNDER indicator6)IF c3 AND not daysForbiddenEntry and trade=0 THENSELLSHORT 0.5 CONTRACT AT MARKETtrade=1ENDIF// Conditions pour fermer une position en vente à découvertindicator7 = ExponentialAverage[20](close)indicator8 = ExponentialAverage[50](close)c4 = (indicator7 CROSSES OVER indicator8)IF c4 THENEXITSHORT AT MARKETENDIF// Stops et objectifsSET STOP pLOSS 80SET TARGET pPROFIT 120bonsoir,
si je ne me suis pas trompé ,ça devrait marcher
01/20/2021 at 9:59 PM #158737Bonsoir,
Merci pour votre aide, mais ca ne fonctionne pas. En lançant le code en backtest, le système ne trouve aucune position
01/20/2021 at 10:08 PM #15873801/20/2021 at 10:10 PM #15873901/20/2021 at 10:17 PM #158740Voila ce que j’obtiens, aucune position prise en UT 1min, alors que les conditions du système pour ouvrir une position sur cette UT sont réunies quasiment tous les jours.
J’obtiens quelques positions si je passe en UT 5min ou 15min mais qui ne correspondent pas aux conditions du système
Je précise que les horaires de fonctionnement du système sont basées sur le fuseau horaire UTC-5
01/20/2021 at 10:26 PM #15874201/20/2021 at 10:38 PM #158743J’obtiens toujours le même résultat malheureusement, à savoir pas de position ..
01/20/2021 at 10:54 PM #15874501/20/2021 at 10:55 PM #158746Update :
J’ai trouvé la solution dans le code d’un autre système :
Rajouter au début du code :
code1OTD = Barindex - TradeIndex(1) > IntradayBarIndex // limits the (opening) trades till 1 per day (OTD One Trade per Day)Puis dans les conditions d’achat et de vente :
code1AND OTD01/20/2021 at 11:05 PM #158747PS : remplacer TradeIndex(1) par TradeIndex(3) pour autoriser 2 positions max par jour et remplacer TradeIndex(1) par TradeIndex(5) pour autoriser 3 positions max par jour etc.
1 user thanked author for this post.
-
AuthorPosts
Find exclusive trading pro-tools on