Stop sous la bougie d'ouverture de position
Forums › ProRealTime forum Français › Support ProOrder › Stop sous la bougie d'ouverture de position
- This topic has 6 replies, 2 voices, and was last updated 6 years ago by Guillaume.
-
-
06/26/2018 at 9:00 AM #74358
Bonjour,
Je cherche à positionner un stop 1 points sous la bougie précédent l’ouverture d’une position. Je souhaite également utiliser l’écart entre le stop et l’ouverture de la position pour dimensionner mon objectif via un coefficient.
J’ai essayé la chose suivante sans succès :
Stop sous la bougie précédent l'ouverture de la position12345// Stops et objectifs : entrez vos stops et vos objectifs icia=(close[tradeindex+1] -low[tradeindex+1])+1SET STOP pLOSS aSET TARGET pPROFIT 1.25*aL’idée étant que la fonction tradeindex permettrait de “fixer” le stop et d’éviter qu’il se déplace à chaque nouvelle bougie.
Quelque chose doit m’échapper car cela ne fonctionne pas du tout !
Merci par avance,
Bien cordialement,
Guillaume
06/26/2018 at 9:24 AM #74369tradeindex est le numéro de la barre dans l’historique, hors l’instruction Close dans ton cas présent attendrait plutôt un offset (décalage) depuis la barre courante, donc en faisant une différence entre barindex et tradeindex, celui s’incrémentera donc à chaque nouvelle bougie:
12offset = barindex-(tradeindex+1)a=(close[offset] -low[offset])+1*pointsizeNe sachant pas quel instrument est tradé, j’ai également adapté la valeur du point automatique avec une multiplication avec “pointsize”.
Je n’ai pas testé, confirme nous que cela fonctionne ! Merci.
06/26/2018 at 9:46 AM #74380Nicolas, merci pour ta réponse. Malheureusement le problème persiste : les stops et targets déclenchés lors du backtest semblent être déterminés de façon “aléatoire”… Je ne parviens pas à déceler la nature de l’erreur.
Bien cordialement,
Guillaume
06/26/2018 at 9:50 AM #7438206/26/2018 at 10:25 AM #74392J’ai graphé “a” (au passage merci pour l’astuce) et je me suis aperçu que “a” n’est pas constant pendant le trade.
Se pourrait-il que “offset” ne soit pas offset mais qu’un décalage ait lieu ? Ce serait surprenant mais c’est ma seule piste pour le moment…
À toute fins utiles, voici mon code :
1234567891011121314151617DEFPARAM CumulateOrders=false// Conditions pour ouvrir une position acheteuseIF close>open AND close[1]<open[1] AND close[2]<open[2] AND open[2]>open[1] AND open<=close[1] AND close>high[2] THENBUY 1 CONTRACT AT MARKETENDIF// Stops et objectifs : entrez vos stops et vos objectifs icioffset = barindex-(tradeindex+1)a=(close[offset]-open[offset])set stop ploss aSet target pprofit a*1.25//graph "a"graph aCordialement,
Guillaume
06/26/2018 at 11:16 AM #74400J’ai volontairement modifié les multiplicateurs dans cet exemple, pour donner du “mou” au trade 🙂
1234567891011121314151617DEFPARAM CumulateOrders=false// Conditions pour ouvrir une position acheteuseIF close>open AND close[1]<open[1] AND close[2]<open[2] AND open[2]>open[1] AND open<=close[1] AND close>high[2] THENBUY 1 CONTRACT AT MARKETENDIF// Stops et objectifs : entrez vos stops et vos objectifs icioffset = max(1,barindex-(tradeindex+1))a=(close[offset]-open[offset])set stop loss a*2Set target profit a*4//graph "a"graph aOn voit que ça fonctionne sur cet ordre par exemple, la valeur du stoploss “a” est correctement calculé et reste identique durant la vie de l’ordre:
Cette façon de poser un stoploss est intéressante si on utilise des ordres conditionnels et que l’on ne sait pas quand ils seront envoyés au marché. Cependant dans ton cas, tu aurais également pu faire ainsi (beaucoup plus simple) :
12345678DEFPARAM CumulateOrders=false// Conditions pour ouvrir une position acheteuseIF close>open AND close[1]<open[1] AND close[2]<open[2] AND open[2]>open[1] AND open<=close[1] AND close>high[2] THENBUY 1 CONTRACT AT MARKETset stop loss abs(close[1]-open[1])set target profit abs(close[1]-open[1])*1.25ENDIF06/27/2018 at 10:54 AM #74517 -
AuthorPosts
Find exclusive trading pro-tools on