Bonjour,
je veux bien un coup de main pour finir mon code s’il vous plaît.
Pour exemple : je veux ouvrir 3 contrats à mon signal. Je veux clôturer 1 contrat à la première clôture gagnante, c’est à dire positionperf>0 et clôturer un second contrat à la bougie suivante gagnante et pour finir, clôturer le 3ième contrat à la bougie suivante gagnante tout en le mettant breakeven.
Mon code pour les sortie c’est ça pour l’instant:
c1 = (close CROSSES OVER Mysup)
c2 = COUNTOFPOSITION <3
IF c1 and c2 THEN
diff = close - plusbas[0]
monatr=AverageTrueRange[14](close)
BUY 3 CONTRACT AT MARKET
ENDIF
c2 = POSITIONPERF > 0
if c2 THEN
sell 1 contract AT MARKET
ENDIF
set stop loss 1*(diff)+1*(monatr)
Merci d’avance ^^
J’ai pas été assez clair, j’ai modifié la formulation :
Je veux clôturer 1 contrat à la première clôture gagnante, c’est à dire positionperf>0 et clôturer un second contrat à la bougie suivante gagnante et pour finir, mettre le dernier contrat breakeven dans l’espoir de le clôturer avec une 3ième bougie gagnante.
Pour développer un code ProBuilder qui répond à votre stratégie de trading spécifique, nous devons gérer les fermetures de positions en plusieurs étapes en fonction de la performance de chaque position et du nombre de contrats. Voici un exemple de script qui pourrait correspondre à votre description :
// Paramètres initiaux
NbContratsInitiaux = 3 // Nombre initial de contrats
NbContrats = NbContratsInitiaux // Variable pour suivre le nombre de contrats actuellement ouverts
// Conditions pour clôturer des contrats
IF longonmarket THEN
IF NbContrats = NbContratsInitiaux AND positionperf > 0 THEN
SELL 1 CONTRACT AT market // Clôturer 1 contrat à la première clôture gagnante
NbContrats = NbContrats - 1
ELSIF NbContrats = NbContratsInitiaux - 1 AND positionperf > 0 THEN
SELL 1 CONTRACT AT market // Clôturer un second contrat à la bougie suivante gagnante
NbContrats = NbContrats - 1
SET STOP breakeven // Mettre le dernier contrat en breakeven
ENDIF
ENDIF
// Même logique pour les positions courtes (si nécessaire)
IF shortonmarket THEN
// Votre logique pour les positions courtes ici
ENDIF
Explications :
- Gestion des Contrats: Le script commence par définir le nombre initial de contrats. Il suit ensuite le nombre de contrats restants ouverts.
- Première Fermeture: Si la performance de la position est positive (positionperf > 0) et qu’il reste trois contrats, le script clôture un contrat.
- Deuxième Fermeture: Si un contrat a déjà été clôturé et que la position reste gagnante, le script clôture un autre contrat.
- Breakeven pour le Dernier Contrat: Après la clôture du deuxième contrat, le stoploss du dernier contrat est déplacé au point d’entrée (breakeven).
À Noter :
- positionperf: Cette instruction retourne la performance de la position actuelle. Elle est positive si la position est gagnante.
- Gestion du Temps: Ce script ne prend pas en compte explicitement les “bougies suivantes”. Il vérifie les conditions à chaque nouvelle bougie.
- Backtesting: Il est crucial de tester ce script dans un environnement de backtesting pour s’assurer qu’il fonctionne comme prévu.
- Adaptabilité: Vous pourriez avoir besoin d’ajuster ce script pour qu’il corresponde parfaitement à votre stratégie de trading, notamment en termes de gestion des positions courtes ou d’autres aspects spécifiques de votre plan de trading.
(test de réponse avec IA)
Lien vers le code ci-dessus ajouté en tant que journal 386 ici…
Bibliothèque de liens d’extraits
Bonjour Nicolas,
Je vous remercie beaucoup pour votre réponse. J’ai mis un certain à répondre, le temps de prendre en main votre code. Ca marche super bien ! Un grand Merci !