Entre 20h30 et 21h00, acheter 1 contrat au marché
Forums › ProRealTime forum Français › Support ProOrder › Entre 20h30 et 21h00, acheter 1 contrat au marché
- This topic has 18 replies, 4 voices, and was last updated 8 months ago by Nicolas.
-
-
03/22/2024 at 10:11 PM #230304
Bonjour à tous,
Je souhaite écrire un programme, à mon avis tout simple, me permettant de faire acheter par la machine 1 contrat d’indice tous les jours entre 20h30 et 21h00 dans les conditions suivantes (sachant que l’unité de temps de trading (timeframe) est de 30mn):
- la bougie précédente, entre 20h00 et 20h30 doit être verte
- la bougie précédente cette dernière, donc entre 19h30 et 20h00, doit être verte également
- L’indicateur stochastics (5.3.3) doit se situer en zone inférieure ou intermédiaire durant les 2 bougies de condition, c’est à dire inférieur à 80 entre 19h30 et 20h30.
CI-dessous le programme que j’ai écrit, qui apparemment ne comporte pas de faute de syntaxe, mais qui ne tourne pas
Un très grand merci si vous pouvez m’aider
Daniel
Entre 20h30 et 21h00 acheter 1 contrat au marché1234567891011121314151617Defparam Cumulateorders=falseDefparam Flatbefore = 203000Defparam Flatafter = 210000//Conditionsc1 = close [1] > open [1]c2 = close [2] > open [2]c3 = Time > 203000 AND TIME < 210000IF NOT LongOnMarket AND c1 AND c2 AND c3 THENBUY 1 SHARE AT MARKETENDIFIF TRADEINDEX (0) > 1 THENSELL AT MARKETENDIF03/23/2024 at 6:29 AM #23030503/23/2024 at 8:09 PM #23033503/23/2024 at 8:41 PM #23033603/24/2024 at 12:42 AM #23034003/24/2024 at 7:29 PM #230369Hélas, avec opentime au lieu de time, ça ne marche pas plus, voici une copie d’écran du résultat (mon programme s’appelle E.L)
J’ai mis un capital de départ de 20.000€ et essayé de faire tourner le modèle avec le Dow Jones: rien ! Pas un trade.
03/24/2024 at 7:33 PM #23037103/24/2024 at 8:53 PM #23037703/25/2024 at 1:14 PM #230408Hola Aquí lo tienes
1234567891011121314Defparam Cumulateorders=falseDefparam Flatbefore = 203000Defparam Flatafter = 210000//Conditionsc1 = close [1] > open [1]c2 = close [2] > open [2]c3 = Stochasticd[5,3,3](close) < 80if time >=203000 and time <=210000 thenIF NOT LongOnMarket AND c1 AND c2 AND c3 and c3[1] THENBUY 1 SHARE AT MARKETENDIFendif03/25/2024 at 7:51 PM #230440Bonjour Ivan,
un grand merci pour ce retour et merci d’avoir inclus la 3è condition, ce qui n’avait pas encore été fait !
Malheureusement quand je back teste, j’ai encore un problème au niveau du stochastics, tel que vous l’avez rédigé.
Ci-dessous le blocage enregistré:
03/25/2024 at 8:10 PM #230444Bonjour, j'imagine que c'est parce que vous disposez d'une ancienne version de PRT. Dans la V11, la fonction
Stochasticd[5,3,3](close)
n'était pas stockée. Dans ce cas vous devrez programmer la ligne K puis la ligne D.12lineK = Stochastic[5,3](close)lineD = average[3](linek)03/26/2024 at 1:09 PM #230474Bonjour Ivan, encore merci de votre dernier retour.
En fait, je n’ai même pas la version PRT 11 mais 10.4 !
Alors, j’ai repris vos 2 lignes 1 et 2 et je les ai collées dans le programme entre la ligne 7 et la ligne 8, c’est à dire avant l’énoncé de la condition c3 mais il ne comprend pas. J’ai enlevé les chiffres 1 et 2 au début de chaque ligne mais ça bloque quand-même. Voyez la capture d’écran ci-dessous.03/26/2024 at 1:20 PM #230476Ivan,
Par ailleurs, j’ai un gros problème de cohérence entre les bougies 30mn de PRT et celles de la plate forme IG Markets que j’utilise pour passer mes trades.
En fait, j’ai l’impression qu’il y a un décalage de 2 bougies de 30mn entre les 2 plates-formes (soit une une heure d’écart)
c’est à dire que PRT exécute mes trades avec 2 bougies de retard. Voyez la copie d’écran ci dessous
Vous voyez que dans la liste des trades back testés par PRT, il a exécuté celui du 19 mars en achetant à 39 107,5 pour revendre à 39 103,7, ce qui a généré une perte de 4 ticks, alors qu’en fait la vraie bougie à prendre en compte était celle d’IG markets où on achetait à 39 038 pour revendre à 39 109.5, d’où un gain de 67,5 ticks.
Sur les graphes, on reconnait bien les mêmes bougies. C’est juste celles où ont été exécuté les trades qui ne colle pas.
Ce qui est très embêtant car cela fausse complètement les résultats du back test !
J’ai essayé de changer les fuseaux horaires sur PRT mais ça ne marche pas. Il ne prend plus les mêmes trades, et ça devient n’importe quoi…!03/26/2024 at 1:41 PM #230483Cela vous donne une erreur car vous n'utilisez pas les lignes programmées. Si vous souhaitez que seul le stochastique soit inférieur à 80, vous pouvez procéder ainsi :
123456789101112Defparam Flatafter = 210000//Conditionsc1 = close [1] > open [1]c2 = close [2] > open [2]c3 = Stochastic[5,3](close) < 80if time >=203000 and time <=210000 thenIF NOT LongOnMarket AND c1 AND c2 AND c3 and c3[1] THENBUY 1 SHARE AT MARKETENDIFendifSi au lieu du stochastique vous souhaitez que le signal soit celui ci-dessous alors :
1234567891011121314151617Defparam Cumulateorders = fauxDefparam Flatavant = 203000Defparam Flataprès = 210000//Conditionsc1 = fermer[1] > ouvrir[1]c2 = fermer[2] > ouvrir[2]lineK = Stochastique[5,3](fermer)lineD = moyenne[3](linek)c3 = ligneD < 80si temps >=203000 et temps <=210000 alorsSI NON LongOnMarket ET c1 ET c2 ET c3 et c3[1] ALORSACHETER 1 ACTION AU MARCHÉFIN SIfin si03/26/2024 at 1:42 PM #230485 -
AuthorPosts
Find exclusive trading pro-tools on