Bonjour je voudrais coder une strategie renko mais je n’arrive pas.
Si vous voulez la strategie elle est très simple quand le renko devient vert en achete mais si le renko devient rouge en vent mais il y aussi une moyen mobile 200 simple qui sert de filtre de tendance alors si le prix est au-dessus en achete mais si il est en-dessous en vent.
Et pour finir quand je rentre a l’achat sur le premier renko vert il faut qu’il y a un 2 pour que je le mette en break envent et la même chose pour la vente
Et je sors de position quand il y a une renko de couleur apposé.
Voilà j’espère que vous pourrez faire quelque chose avec ça merci d’avance.
Bonjour,
Ci-dessous un de mes anciens code qui correspond peu ou prou à votre demande. J’ai rajouté le filtre avec la MM200 mais pas le BreakEven. Le forum regorge de ce type de code, il est relativement simple d’en trouver un et de l’intégrer.
S’agissant de Renko, le backtest est à effectuer en 1 seconde car la mise en ligne d’un bot en tick est impossible.
Le DAX semble être le bon choix du moment (image ci-joint) , mais attention, il n’en a pas toujours été ainsi.
// 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 = 204500
// 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 à ajuster
boxsize=20
positionsize = 1
//Indicateur Renko
size=boxsize*pointsize
once renkoha=0
once renkove=0
onceprix = close
oncereste = (onceprix mod 100)
oncedizaine = round(( onceprix-oncereste)/100) * 10
once upbox = oncedizaine
once downbox = oncedizaine - size
once lowwick = close*100
IF close > upbox + size THEN
upbox = upbox + size
downbox = downbox + size
begin=barindex
highwick=close
wickbar=barindex-round((barindex-begin[1])/2)
ELSIF close < downbox - size THEN
upbox = upbox - size
downbox = downbox - size
begin=barindex
wickbar=barindex-round((barindex-begin[1])/2)
ENDIF
highwick=max(high,highwick)
lowwick=min(low,lowwick)
//Signal achat/vente
if upbox>upbox[1] then
renkoha=renkoha[1]+1
elsif upbox=upbox[1] then
renkoha=renkoha[1]
else
renkoha=0
endif
if downbox<downbox[1] then
renkove=renkove[1]-1
elsif downbox=downbox[1] then
renkove=renkove[1]
else
renkove=0
endif
// Achats
c1 = renkoha crosses over 0.5
c2 = close>Average[200](close)
IF c1 AND c2 AND timeEnterAfter AND not daysForbiddenEntry THEN
BUY positionsize CONTRACT AT MARKET
set stop ploss 50
ENDIF
// Ventes
c3 =renkove crosses under -0.5
c4 = close<Average[200](close)
IF c3 AND c4 AND timeEnterAfter AND not daysForbiddenEntry THEN
SELLSHORT positionsize CONTRACT AT MARKET
set stop ploss 50
ENDIF
//Sorties
if longonmarket and renkove <0 then
sell at market
endif
if shortonmarket and renkoha >0 then
exitshort at market
endif
if dayofweek = 5 and time=190000 then
sell at market
exitshort at market
endif