Bonjour,
Je suis actuellement en programmation automatique sous prorealtime et je cherche à améliorer mon système mais je n’arrive à compléter mon code malgré plusieurs tentatives. je fais appel à la communautés pour me donner un petit coup de pouce.
Ci-dessous mon codage.
Je voudrais que mon stop placé à 20 points de mon prix d’achat soit remonté au prix d’achat quand le cours a pris 20 points, sans mettre de stop suiveur.
Exemple : Achat CFD CAC 40 à 8000 points, stop à 7980 et profit à 8032. Quand le Cac franchit 8020, je voudrais que mon stop remonte à mon prix d’achat.
Merci pour votre aide
// 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 à 0:00, puis empêche toute création d’ordre avant l’heure “FLATBEFORE”.
DEFPARAM FLATBEFORE = 090000
// Annule tous les ordres en attente et ferme toutes les positions à l’heure “FLATAFTER”
DEFPARAM FLATAFTER = 220000
// 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 = 091500
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
// Conditions pour ouvrir une position acheteuse
indicator1 = RSI[9](close)
c1 = (indicator1 >= 0)
IF c1 AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
BUY 5 CONTRACT AT MARKET
ENDIF
// Stops et objectifs
SET STOP pLOSS 20
SET TARGET pPROFIT 32
Bonjour, vous pouvez remplacer les dernières lignes de code par les suivantes.
IF c1 AND timeEnterBefore AND timeEnterAfter AND not daysForbiddenEntry THEN
BUY 5 CONTRACT AT MARKET
SET STOP pLOSS 20
SET TARGET pPROFIT 32
ENDIF
if onmarket and high>(positionprice+20*pointsize) then
set stop price positionprice
endif
Par contre, remarquez que la condition C1 est toujours remplie puisque le RSI varie entre 0 et 100.
Bonjour,
Merci pour le coup de main au codage.
J’ai essayé de backtester ma stratégie mais le stop au prix d’achat ne remonte pas systématiquement, quand le cours prend 20 pips de plus que mon prix d’achat et la position est perdante quand le cours redescend au stop initial. Est ce vous verriez une anomalie dans mon codage initiale qui bloque la remontée?