ProRealTime
Forum dédié à ProRealTime : les questions sur P, les trucs et astuces sur l'interface de trading...

Re: Stop Profit à X en fonction d'un gain à Y

par Toto le Héros » 31 août 2018 16:19

//-------------------------------------------------------------------------
// Main code : fxb long
//-------------------------------------------------------------------------

// Définition des paramètres du code
DEFPARAM CumulateOrders = False // Cumul des positions désactivé
// Annule tous les ordres en attente et ferme toutes les positions à l'heure "FLATAFTER"
DEFPARAM FLATAFTER = 213000

// Empêche le système de placer des ordres pour entrer sur le marché ou augmenter la taille d'une position avant l'heure spécifiée
noEntryBeforeTime = 090000
timeEnterBefore = time >= noEntryBeforeTime

// Empêche le système de placer des ordres pour entrer sur le marché ou augmenter la taille d'une position après l'heure spécifiée
noEntryAfterTime = 173000
timeEnterAfter = time < noEntryAfterTime

// Empêche le système de placer de nouveaux ordres sur les jours de la semaine spécifiés
daysForbiddenEntry = OpenDayOfWeek = 6 OR OpenDayOfWeek = 0

//Variables
ENTREE=12395//Seuil de déclenchement pour entrer à l'achat sur le marché
SEUIL=10//Gain minimum déclenchant la protection de la position
SL=10//Stop Loss INITIAL
TP=20//Target Profit
PROTECT=1//Nouveau Stop sécurisant la position
once lock=0//lock bloquera le stop de protection

// Conditions pour ouvrir une position acheteuse
IF close<ENTREE and NOT longonmarket and timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry and STRATEGYPROFIT=0 THEN
BUY 1 CONTRACT AT ENTREE STOP
SELL AT ENTREE+TP LIMIT
SELL AT ENTREE-SL STOP
ENDIF

IF longonmarket then
SELL AT TRADEPRICE+TP LIMIT
if close>=(TRADEPRICE+SEUIL) or lock=1 then
lock=1
SELL AT TRADEPRICE+PROTECT STOP
else
SELL AT TRADEPRICE-SL STOP
ENDIF
endif

Re: Stop Profit à X en fonction d'un gain à Y

par fxbravo » 31 août 2018 16:47

:top: toto

Je vais tester ça semaine prochaine et te ferais un retour.

:merci: encore pour ton partage, c'est super :top:

On se verra du coup au salon ;)

Re: Stop Profit à X en fonction d'un gain à Y

par fxbravo » 31 août 2018 17:12

Petite question: à quoi sert exactement la fonction "lock"?

Car tu mets dans le code l'explication suivante: once lock=0//lock bloquera le stop de protection

et plus bas, dans les conditions d'éxécution, le lock=1.

Sinon, j'ai testé et ça ouvre bien la position. Mais le Stop n'est pas passé de -80 à +2 qand ça a dépassé les +10 en gain (c'est monté à 11.4, mais le SL est resté à -80).

J'ai sûrement du omettre une variable, je vais continuer à creuser.

Sinon, encore :merci:, et en plus le code est super propre :top:

Re: Stop Profit à X en fonction d'un gain à Y

par fxbravo » 31 août 2018 17:37

test en cours ;)
auto-trade.JPG
auto-trade.JPG (105.1 Kio) Vu 1451 fois

Re: Stop Profit à X en fonction d'un gain à Y

par fxbravo » 31 août 2018 18:03

Je rencontre quelques problèmes:

- quand un ordre auto a été stoppé par le marché (soit en gain, soit en perte si le palier ne s'est pas déclenché), je supprime le "robot" et j'en rajoute un avec un nouveau niveau de prix dans le code.

Et bien, ca n'ouvre pas de nouveau trade! C'est peut-être la démo qui plante ceci dit.

Si jamais tu avais des pistes Toto, je suis preneur :top:

Re: Stop Profit à X en fonction d'un gain à Y

par Toto le Héros » 03 sept. 2018 10:02

Pour répondre à tes questions :
- la fonction "lock" intervient à partir du moment où le stop est sécurisé. Elle évite que si on repasse en dessous du seuil, le stop initial se remette en place
- concernant le cas monté à 11.4 et modification du stop non déclenchée, es-tu sûr que le seuil (10 je suppose) a été atteint EN CLÔTURE de Bougie dans l'ut de ton robot ?
- le redémarrage du robot avec un nouveau prix ne devrait pas poser de problème... je l'ai testé sur la version short
(PS : j'ai fait mes tests sur le DAX mais çà devrait fonctionner sur le DOW aussi)

Si tu relances un test, dis moi s'il te plait. Je peux lancer le même en parallèle à tout hasard. Je surveille cette file... ;)

Re: Stop Profit à X en fonction d'un gain à Y

par fxbravo » 03 sept. 2018 10:21

Salut toto,

Merci beaucoup pour tes réponses, claires et précises :top:

Sur le cas du seuil non déclenché, en effet la Bougie n'avait pas été clôturée. Du coup je pense tester l'algo sur du 1s et pas du 1min.

Je te tiendrais au courant des tests effectués.

En tout cas, un grand merci encore pour ton aide, c'est :top:

Re: Stop Profit à X en fonction d'un gain à Y

par plataxis » 03 sept. 2018 10:34

Toto le Héros a écrit :Cela dit, dans ton cas, tu peux mettre une UT courte (genre 1 minute par exemple, voire moins.... pas moins de 15 secondes suivant mon expérience).

Re: Stop Profit à X en fonction d'un gain à Y

par Toto le Héros » 03 sept. 2018 10:35

D'expérience 1 seconde ne fonctionne pas car trop court. (l'algo n'a pas le temps de réactualiser les positions)
15s devrait fonctionner. Peut-être 10 à tester.

Re: Stop Profit à X en fonction d'un gain à Y

par fxbravo » 03 sept. 2018 10:42

Ok, :top: Je vais tester ça!

Re: Stop Profit à X en fonction d'un gain à Y

par Toto le Héros » 03 sept. 2018 12:09

Une petite remarque concernant le cas monté à 11.4 (avec seuil à10), mais clôture en dessous de 10.
Tu peux (si tu veux) modifier dans le programme pour que la condition de comparaison au seuil ne se fasse pas sur la valeur "close" mais sur la valeur "high" (cas LONG) ou "low" (cas short).
Cette condition sera en revanche forcément lue à la cloture de la Bougie de l'ut de ton algo (çà, çà ne change jamais).

Je ne recommande pas (généralement) de faire çà.
Certes dans "la plupart des cas", tu vas permettre le déclenchement du "relevage de ton stop de protection"...
Mais dans quelques cas, la distance de STOP mini ne sera plus respectée (par exemple dans le cas du DAX si tu passes par 11.4 mais que tu clôtures à moins de 5)... et là le programme ne peut placer le STOP et tu rentres dans un espèce de trou noir où tu as perdu le contrôle de ton robot qui risque de : ne plus avoir de STOP du tout ou de s'arrêter sur une erreur "impossible de placer ordre" etc...

Voilà, pour info donc...

Re: Stop Profit à X en fonction d'un gain à Y

par fxbravo » 03 sept. 2018 16:12

Merci pour les explications Toto :top:

Sinon, nouvelle question de débutant en trading auto:
J'ai une position qui s'est ouverte, le SL s'est transformé comme prévu en StopProfit, puis le cours est venu le toucher. Je suis donc sorti en positif, c'est cool.
Ma question est la suivante: ProOrder ne relance pas la stratégie si le cours retouche le même niveau?

Car je viens de vérifier, il n'y a pas de nouvel ordre de créer suite à la clôture.

Est-ce un paramètre à modifier, ou tout simplement ce n'est pas possible?

Merci d'avance pour ton retour :top:

Re: Stop Profit à X en fonction d'un gain à Y

par fxbravo » 03 sept. 2018 16:36

Toto le Héros a écrit :De ce fait, le code est conçu pour ne prendre qu'UNE et UNE SEULE POSITION. C'est à dire que quand une clôture de position a eu lieu, il n'en reprendra pas sans que tu STOP la stratégie (bouton évoqué juste avant, mais là tu le fais alors que le programme ne tourne pas... Il te faudra ensuite mettre la stratégie à la corbeille (icône de poubelle à côté du STOP) et la recharger...
Bon, en relisant, j'ai ma réponse ;)

Re: Stop Profit à X en fonction d'un gain à Y

par Toto le Héros » 03 sept. 2018 18:15

En pratique c'est possible. J'ai bloqué la possibilité dans le programme avec la dernière condition "if strategyprofit=0" qui théoriquement n'arrive jamais alors qu'une position a été prise (sauf dans le cas où le système parfaitement flat en fin de journée... mais dans ce cas tu as jusqu'au lendemain matin pour l'arrêter manuellement et redémarrer un nouveau programme avec une nouvelle cible d'entrée).
Tu peux la retirer (la condition strategyprofit=0) si tu le souhaites et le programme reprendra une position dès que les conditions seront de nouveau réunies (ENTREE).

Re: Stop Profit à X en fonction d'un gain à Y

par fxbravo » 03 sept. 2018 18:41

Merci pour tes explications Toto :top:

Je teste ça et te fais un retour.

Re: Stop Profit à X en fonction d'un gain à Y

par fxbravo » 13 sept. 2018 12:26

Salut Toto,

Pour le moment, tout roule :top:

Sinon, je me demandais s'il était possible, une fois le Stop profit enclenché, de rajouter un trailing stop qui se met à XX% du gain en cours (ou a la cloture de la Bougie)

En gros, ma position en cours est à +50 points. Mon SL est passé en StopProfit à +1. Donc au pire je sors à 0 (cout du SLG de 1).

Mais je me suis dit, c'est dommage de ne pas optimiser la chose ;)

Donc, dans mon exemple ci-dessus, sur une stratégie basée sur UT1min, je passe à +50 (Oui, gros break out :lol:). Je souhaiterais, si c'est possible, mettre en place le fameux %TrailingStop: ce qui me donnerai un Stop Profit à +10 (20% de 50 points). Et qui ne peut que monter, of course ;). Donc si à la Bougie d'après on descend à +30, le SP reste à +10. Mais si ca remonte à +100, le SP se met à +20, etc.....

Penses-tu que cela soit possible à coder?

Re: Stop Profit à X en fonction d'un gain à Y

par Toto le Héros » 13 sept. 2018 15:15

Salut FX,
Oui bien sûr, il y a des codes assez basiques pour faire du trailing stop dans un sens ou l'autre.
Je peux jeter un oeil là-dessus demain soir au + tard je pense et reviendrai vers toi avec un code amélioré.
J'ai aussi pensé à une petite astuce MTF qui pourrait améliorer le code (de manière optionnelle). Je verrai si j'ai le temps d'implémeter çà aussi.

Re: Stop Profit à X en fonction d'un gain à Y

par fxbravo » 13 sept. 2018 15:36

Super Toto, merci beaucoup pour ton aide :top:

J'allais justement te demander si tu pouvais faire un petit cours sur le MTF ;)

Sinon, petit retour de l'algo: testé en réel avant 15h, le trade s'enclenche impeccablement, mais en regardant de plus près je vois que le SL est à -58.8 au lieu des -30 paramétré! gross stress :lol:
En fait, c'était la distance mini du SL imposé par ig pour cause de BCE ;)
Du coup, y-a-t-il un moyen d'annuler le système si le SL imposé par ig est supérieur à celui défini par le système?

Merci encore pour ton aide, j'apprends beaucoup (et je me suis mis à regarder les vidéos de prorealcode pour me former ;))

Re: Stop Profit à X en fonction d'un gain à Y

par Toto le Héros » 14 sept. 2018 12:44

Salut FX,
Je suis en cours de test sur la version TS (trailing stop).
Je reviens vers toi dès que ok.
J'ai pas fait encore mon mini journalier ce matin en manuel, donc j'aurai peut-être un peu moins de temps que prévu ; mais çà devrait aller. Je te tiens au jus.

Concernant l'incident d'hier, effectivement c'est chaud et çà ne doit jamais arriver.
Je suis d'ailleurs très surpris que çà arrive en fait.
(Ça ne m'est jamais arrivé en + d'1 an de trading automatique... cela dit, je en trade pas sur des UTs aussi courtes. Mon plus bas étant 5' à date avec des SLs plus éloignés)

Normalement, le robot devrait se mettre en défaut sur un cas comme celui-ci.
La seule explication que je vois est que le SL n'est pas strictement programmé avec l'instruction "Stop Loss". C'est dû au fait qu'on souhaite déplacer le SL régulièrement, mais je pourrais pour la prise de position programmer un peu différemment.
En attendant, ce serait bien que tu fasses remonter l'info à prt parce que c'est de fait un bug et que ce sera utile à d'autres d'améliorer. J'essaierai de reproduire le bug en DEMO (lors de la prochaine BCE).

A+

Re: Stop Profit à X en fonction d'un gain à Y

par fxbravo » 14 sept. 2018 13:05

Salut Toto,

Merci pour ton retour. Prends ton temps, priorité à ton trading :top:

J’ai fait remonter le bug à prt, ils investiguent depuis hier ;)

Excellente fin de semaine à toi!

Sujets similaires
Adaptation des Take-Profit/SL en fonction des Points-Pivots
par Elliott » 19 août 2019 15:43 (4 Réponses)
HELP [PRT - STREAM DECK] Stop profit déclenche un ordre stop
Fichier(s) joint(s) par JPM55 » 27 juin 2022 07:38 (11 Réponses)
Gain de 1pt avec quel stop ?
par Valentino » 31 août 2015 16:29 (14 Réponses)
PRT: affichage préalable du stop gain et perte
Fichier(s) joint(s) par max38250 » 22 sept. 2020 14:53 (6 Réponses)
stop et take profit à chaque trade?
par GDX23 » 27 oct. 2012 09:56 (8 Réponses)
Transformer un take profit en stop suiveur
par finplus » 08 mai 2016 17:17 (6 Réponses)
ratio [ target profit / stop loss ] scalping
Fichier(s) joint(s) par chrono » 30 sept. 2016 14:58 (5 Réponses)
Stop loss / take profit et volatilité ?
par TDTrading » 02 juin 2018 09:29 (4 Réponses)
Stop profit sur prt ig
par tradanto » 14 juil. 2018 02:02 (3 Réponses)
Mettre un stop profit sur un compte à risque limité
par thomas88 » 24 août 2018 10:27 (22 Réponses)