Bonjour
Je souhaiterai utiliser ce code sur un timeframe de 2h mais calculer les heikin ashi sur un timeframe de 1h.
Je peux le faire dans l’autre sens avec la commande timeframe() mais dans ce sens je ne peux pas car ce n’est pas un multiple (car plus petit).
Cela revient tout simplement à pouvoir tracer par exemple une cloture de bougie de la première heure sur le timeframe de 2h.
Quel est la solution: tableau? autre?
DEFPARAM CumulateOrders=False
nbaction=1
if barindex>1 then
haclose=(open[0]+close[0]+low[0]+high[0])/4
haopen=(haopen[1]+haclose[1])/2
endif
Haut=haclose[0]
Bas=haopen[0]
GRAPH(Haut[0]) COLOURED(0,255,0)
GRAPH(Bas[0])COLOURED(255,0,0)
// Conditions pour ouvrir une position acheteuse
IF Haut Crosses over Bas THEN
BUY nbaction SHARES AT MARKET
ENDIF
//Conditions pour fermer une position acheteuse
IF Haut Crosses under Bas THEN
SELL AT MARKET
ENDIF
// Conditions pour ouvrir une position vendeuse
IF Haut Crosses under Bas THEN
SELLSHORT nbaction SHARES AT MARKET
ENDIF
//Conditions pour fermer une position vendeuse
IF Haut Crosses over Bas THEN
EXITSHORT AT MARKET
ENDIF
Bonjour,
Malheureusement, il n’y a pas de solution directe. Le code dispose d”une “photo” de la situation à la clôture de la bougie. Il a accès aux données de la bougie 2 heures (ouverture, plus haut, plus bas, clôture), mais n’a pas accès aux données à l’intérieur de l’intervalle de temps de 2 heures (prix après 1 heure par exemple).
La solution est de retourner la situation dans l’autre sens : exécuter votre code en timeframe 1H et tester si vous êtes en clôture 2h ou pas (heure paire ou impaire par exemple) pour entrer en position.