Entrée en position à l'ouverture de la journée en fct de la clôture de la veille
Forums › ProRealTime forum Français › Support ProOrder › Entrée en position à l'ouverture de la journée en fct de la clôture de la veille
- This topic has 7 replies, 4 voices, and was last updated 8 years ago by Nicolas.
-
-
04/20/2016 at 9:38 PM #5725
Bonjour, je suis nouveau et pas spécialiste de la programmation, mais j’y travaille.
Je cherche à coder une stratégie qui consiste à prendre une position sur le CAC par exemple à l’ouverture à 9h.
Si le cours d’ouverture est > au cours de clôture de la veille, je rentre long, sinon, je rentre court.
Quand je backteste ma stratégie, je n’ai pas de position prise alors qu’il devrait en avoir une chaque jour …
Pouvez vous m’aider :
123456789101112131415161718192021DEFPARAM CumulateOrders = FalseDEFPARAM FlatAfter = 172900DEFPARAM PreLoadBars = 200ClotureVeille=DClose(1)If time = 09000 thenIf close < ClotureVeille thenSell 1 shares at MarketSET STOP LOSS 20SET TARGET PROFIT 60Elsif close > ClotureVeille thenBuy 1 shares at MarketSET STOP LOSS 20SET TARGET PROFIT 60EndifEndifIf STRATEGYPROFIT < -500 THENQUITENDIF04/20/2016 at 11:04 PM #5726Bonjour,
Juste 2 observations pour commencer :
- Je mettrais plutôt “Sellshort” que “Sell”
- Si tu testes la stratégie sur le France40, j’ai peur que DClose(1) ne renvoie à la clôture à minuit (au lieu de 17H30), ai-je tort ?
Pour le reste du code je n’ai pas testé.
Bonne journée.04/21/2016 at 12:11 AM #5729Bonsoir,
Sur quelle unité de temps es-tu ? si tu es en journalier ça ne marche pas car le code est pris en compte à la fin de la période (donc en fin de journée).
Tu peux prendre une unité de temps de 1H et ta condition devient:
123456if dopen(0)>dclose(1) thenbuy....endifif dopen(0)<dclose(1) thensellshort....endif04/21/2016 at 9:11 AM #573904/24/2016 at 4:12 PM #5900Bonjour à tous et merci pour vos réponses.
J’ai commencé par remplacé Sell par Sellshort. C’est noté pour les futurs codes.
J’arrive maintenant à avoir des prises de positions. Par contre, je n’arrive pas à avoir une seule prise de position par jour. De plus, je ne sais pas à quelle bougie il compare la bougie d’ouverture.
Je rappelle que je veux comparer le cours d’ouverture à 9h00 par rapport à celui de clôture de la veille (17h30, ou 17h35 ou 22h) et prendre position en fonction de cela.
Comment récupérer ce cours sans calculer la Nieme bougie qui va différer en fonction de l’unité de temps … Pas simple pour moi.
Merci pour votre aide. Ces morceaux de code me serviront également pour d’autres backtests.
04/24/2016 at 7:23 PM #5908Inutile de s’occuper de l’unité de temps, si tu utilises DCLOSE ou DOPEN, ces constantes te donneront toujours les open et close du timeframe daily.
Pour ne pas cumuler plusieurs ordres en même temps, tu peux utiliser :
1defparam cumulateorders = false04/24/2016 at 9:58 PM #591704/25/2016 at 7:30 AM #5920C’est l’heure précise de l’ouverture ou de la fermeture “standard” de l’instrument en question, de la bougie en timeframe Daily. Évidemment, si tu veux obtenir des prix d’ouverture et de clôture différent (en fonction d’une tranche horaire précise), alors il faudrait le coder. Est-ce que c’est ce que tu cherches à faire ?
-
AuthorPosts
Find exclusive trading pro-tools on