Bonjour,
Je code un robot de trading avec Prorealtime et je n’ai pas trouvé le code qui arrête le robot quand mon portefeuille atteint une certaine valeur.
En gros mon portefeuille de départ est de 20000€ , je fais du “day trading”, je souhaite arrêter le robot quand j’ai 20100€.
Il doit y avoir l’ordre QUIT quelque part mais je ne vois pas comment le déclencher.
Merci
Christian
L’instruction STRATEGYPROFIT retourne le profit généré par la stratégie, ordres fermés. Donc avec ce type de code tu pourras automatiquement arrêter la stratégie lorsque celle-ci aura fait 100€ de gain :
if strategyprofit >=100 then
QUIT
endif
Bonjour Nicolas,
Je vais essayer rapidement ton code.
Merci pour ta réactivité.
A+
Christian
Hello Nicolas,
C’est basé sur les trades fermés.
Ce que je veux c’est QUIT (arrêt de l’EA) dés que j’atteins +100€. Dans mon exemple 20100€.
Donc Je clôture tous les ordres en cours.
Y a t’il une commande pour cela ? (comme sur MT4)
Christian
Hello Nicolas,
J’ai lu les manuels programmations de Prorealtime et je n’ai pas vu ” STRATEGYPROFIT” !
Ou dois je aller pour avoir toutes les commandes acceptées par Prorealtime ? (de façon exhaustive)
Merci.
Christian
Il n’y a aucune “commande” sous MT4 qui se substitue à QUIT !
Pour récupérer la valeur temps réel des ordres en cours, on utilise souvent ce petit snippet de code:
floatingprofit = (((close-positionprice)*pointvalue)*countofposition)/pipsize //actual trade gains
La liste de toutes les instructions se trouvent dans notre documentation en ligne : ProBuilder Language Documentation
Bonne lecture ! 😉
Re Nicolas !
Enfin quelqu’un qui répond !
Je me suis emm…. pendant 3 semaines à envoyer des mails à Prorealtime support et IG market
sans solution ! et souvent pas de réponse !
Sous MT4 tu peux suivre EQUITY (qui reflète ton portefeuille en temps réel ) et prendre les décisions que tu veux et notamment arrêter ton EA si tu le souhaites.
Je vais regarder ce que tu m’as envoyé.
A+
Les questions de programmation, tu peux les poster ici. Si tu n’est pas client PRT mais IG, alors le processus de support n’est pas le même.
Hello,
J’essaye d’utiliser “floatingprofit” et n’ayant pas trouvé de documentation j’ai pondu
le code ci-dessous (qui ne fonctionne pas)
//Arrête l’EA quand Capital= 100€ (ordres fermés)
if strategyprofit >=100 then
QUIT
endif
ça ne provoque pas d’erreur mais ça ne s’arrête pas non plus quand le profit est égal à 100€.
Partant avec un capital de 10000€ j’ai essayé aussi en mettant 10100€. Même résultat !
Quelqu’un peut me dire ou est le bug ?
Christian
Décidément je ne comprends plus 🙄
Soit tu utilises les ordres fermés pour arrêter ta stratégie avec STRATEGYPROFIT comme expliqué dans mon premier message, ton code est correct et doit fonctionner, soit tu utilises le calcul temps réel avec le code que j’ai donné :
floatingprofit = (((close-positionprice)*pointvalue)*countofposition)/pipsize //actual trade gains
if floatingprofit>=100 and strategyprofit>=0 then
quit
endif
Hello,
Mille excuses, je souhaite utiliser le temps réel.
J’ai mis ton code et il ne s’arrête pas à 100€ mais à 236€ en passant par 635€.
Hello,
En gros je souhaite que l’EA s’arrete sur la ligne verte à 10100€.
Christian
Pour mémoire, le code étant lu une seule fois à chaque clôture de bougie, il est possible qu’en temps réel (durant la bougie), le profit soit en effet supérieure à 100€.
Merci.
OK j’ai vu, à quoi sert alors de pouvoir être au tick par tick ?
A rien.
Les backtests en tick par tick permettent de tester à quel moment les niveaux de prix liés à des ordres stop ou limit sont touchés et par conséquent être le plus précis possible vis à vis de ce qui aurait pu se passer en temps réel. Le tick par tick ne lit pas le code à chaque tick.
Pour ton order à fermer à 100€ de gain, tu pourras essayer avec :
SET TARGET $PROFIT 100