Programmer une sortie partielle
Forums › ProRealTime forum Français › Support ProOrder › Programmer une sortie partielle
- This topic has 7 replies, 2 voices, and was last updated 11 months ago by LucasBest.
-
-
12/06/2023 at 10:51 AM #224915
Bonjour,
Je souhaiterai programmer une sortie partielle à 20 pts au dessus de l’entrée du trade puis à 40 pts mais cela ne fonctionne pas.
12345678910111213141516171819202122232425262728DEFPARAM CumulateOrders= falsedebut = 090000fin = 180000niveau1 = 15000if intradaybarindex=0 thencount = 0activeniveau1 = 0endifif time >= debut and time <= fin THENmaxorders = 1tradefinimemebougie= COUNTOFPOSITION=0 and COUNTOFPOSITION[1]=0 and (longtriggered or shorttriggered)if NOT ONMARKET and close[5] > niveau1 and activeniveau1 = 0 and open[1] > niveau1 and close[1] > niveau1 and count<maxorders and tradefinimemebougie = 0 THENBUY 1 CONTRACTS AT niveau1 LIMITENDIFif (onmarket and lastindex<>tradeindex) OR (tradefinimemebougie = 1) thencount=count+1lastindex=tradeindexendifENDIFSELL 0.5 CONTRACTS AT TRADEPRICE+20 LIMITSELL 0.5 CONTRACTS AT TRADEPRICE+40 LIMITSET STOP pLoss slJe ne comprends pas pourquoi il sort du trade à 15032.4 et 15024 (voir pièce jointe)
Merci beaucoup.
Très bonne journée12/06/2023 at 10:57 AM #22491912/06/2023 at 12:14 PM #224932Lorsque la 1ère vente partielle se fait tradeprice n’est plus égale au prix d’achat initial, mais au dernier prix de vente partiel…
Il y a plusieurs manières de régler le problème :
Le plus court : ajouter Set Target Price niveau1+40 pour la 2nd vente12345678910111213141516171819202122232425262728DEFPARAM CumulateOrders= falsedebut = 090000fin = 180000niveau1 = 15000if intradaybarindex=0 thencount = 0activeniveau1 = 0endifif time >= debut and time <= fin THENmaxorders = 1tradefinimemebougie= COUNTOFPOSITION=0 and COUNTOFPOSITION[1]=0 and (longtriggered or shorttriggered)if NOT ONMARKET and close[5] > niveau1 and activeniveau1 = 0 and open[1] > niveau1 and close[1] > niveau1 and count<maxorders and tradefinimemebougie = 0 THENBUY 1 CONTRACTS AT niveau1 LIMITSet Target Price niveau1+40 // Ajouter directement le target finalENDIFif (onmarket and lastindex<>tradeindex) OR (tradefinimemebougie = 1) thencount=count+1lastindex=tradeindexendifENDIFSELL 0.5 CONTRACTS AT TRADEPRICE+20 LIMITSET STOP pLoss slSinon, pour être plus rigoureux :
Si l'on veut faire plus de 2 ventes partielles...123456789101112131415161718192021222324252627282930313233343536373839DEFPARAM CumulateOrders= falsedebut = 090000fin = 180000niveau1 = 15000if intradaybarindex=0 thencount = 0activeniveau1 = 0endifif time >= debut and time <= fin THENmaxorders = 1tradefinimemebougie= COUNTOFPOSITION=0 and COUNTOFPOSITION[1]=0 and (longtriggered or shorttriggered)if NOT ONMARKET and close[5] > niveau1 and activeniveau1 = 0 and open[1] > niveau1 and close[1] > niveau1 and count<maxorders and tradefinimemebougie = 0 THENBUY 1 CONTRACTS AT niveau1 LIMITENDIF// s'assurer du vrai prix d'achatIf COUNTOFPOSITION = 1 thenPrixdachat = tradepriceEndifif (onmarket and lastindex<>tradeindex) OR (tradefinimemebougie = 1) thencount=count+1lastindex=tradeindexendifENDIF// programmer les ventes partielles en fonction de ce qui reste de la positionIf COUNTOFPOSITION = 1 thenSELL 0.5 CONTRACTS AT Prixdachat+20 LIMITEndifIf COUNTOFPOSITION = 0.5 thenSELL 0.5 CONTRACTS AT Prixdachat+40 LIMITEndifSET STOP pLoss sl1 user thanked author for this post.
12/06/2023 at 1:24 PM #224942Merci beaucoup pour la réponse.
Mais il semblerait qu’il y ait toujours un probème.J’ai utilisé la 2ème solution :
Entrée à 14992.4 :
Le premier trade sort à 15024 alors qu’il devrait sortir à 14012.4 (+20pts)
Le 2ème trade sort à 15055 alors qu’il devrait sortir à 15032.4 (+40pts)🙂
12/06/2023 at 1:55 PM #22494812/06/2023 at 1:57 PM #224950Merci beaucoup pour la réponse.
Mais il semblerait qu’il y ait toujours un probème.
J’ai utilisé la 2ème solution :
Entrée à 14992.4 :
Le premier trade sort à 15024 alors qu’il devrait sortir à 14012.4 (+20pts)
Le 2ème trade sort à 15055 alors qu’il devrait sortir à 15032.4 (+40pts)
🙂
La seconde vente partielle est bonne : 14992.4 + 40 = 15032.4
La 1ère est normale aussi car la vente ne peut être mise en place qu’à la bougie suivante (si je ne dis pas de bêtise)12/06/2023 at 2:10 PM #224953Le 2ème trade sort à 15055 alors qu’il devrait sortir à 15032.4 🙂
En fait ils sortent à la cloture de la bougie suivante apparemment, moi je souhaiterai qu’il puisse cloturer dans la bougie en cours s’il atteint le niveau indiqué :-(, est-ce possible ?
12/06/2023 at 2:20 PM #224955L’instruction : “Set Target Price niveau1+40” permet de sortir au prix limite indiqué, mais ne permet pas de faire une vente partielle, à part si la position a déjà été soldée partiellement…
Soit tu as des target plus important et ça vendra au prix limite que tu veux, soit il faut se mettre dans un time frame plus petite… Car là le prix limite est déjà atteint lors du passage d’ordre alors la vente se fait à un prix plus important (ce qui n’est pas si mal en fin de compte? 🙂 )
-
AuthorPosts