Bonjour, plusieurs remarques à propos de ton code en post #156589:
- Echelle=100/0 ne sert à rien (sans même débattre de la division par 0)
- les h1,h2,b1,b2 pourquoi les diviser par za (qui vaut 1 ou 0, division par zéro?)
- les h1,h2,b1,b2 n’interviennent que dans des if comme des conditions au lieu de valeurs, ils seront toujours vrais et donc ne servent pas, soit on les élimine entièrement, soit il faut revoir leur véritable usage pour réécrire les conditions des if différemment si leurs valeurs doivent jouer quelque part
- les [0] même si corrects en syntaxe sont inutiles car par défaut sans valeurs entre crochets c’est la même chose que [0]
Le code simplifié pour le même résultat devient:
myRSI=RSI[21](close)
if myRSI crosses over 50 then
drawcandle(open,high,low,close[0])coloured(0,128,0)
drawtext("B",barindex[0],low[0])
drawtext("H",barindex[0],high[0])
endif
if myRSI crosses under 50 then
drawcandle(open,high,low,close[0])coloured(218,165,32)
drawtext("B",barindex[0],low[0])
drawtext("H",barindex[0],high[0])
endif
return
ce qui est très similaire au post library, et une version sans boucle pour avoir les 2 dernières occurences peut s’écrire, sans drawcandle comme le faisait justement remarquer Nicolas, mais avec des drawrectangle/segment qui redessinent des candles grassouillettes:
defparam drawonlastbaronly=true
myRSI=RSI[21](close)
if myRSI crosses over 50 then
barre1=barindex
open1=open
haut1=high
bas1=low
close1=close
endif
if myRSI crosses under 50 then
barre2=barindex
open2=open
haut2=high
bas2=low
close2=close
endif
drawrectangle(barre1-1,open1,barre1+1,close1) coloured(0,128,0) bordercolor(0,128,0)
DRAWSEGMENT(barre1, bas1, barre1, min(open1,close1)) coloured(0,128,0) style(line,3)
DRAWSEGMENT(barre1, haut1, barre1, max(open1,close1)) coloured(0,128,0) style(line,3)
drawtext("B",barre1,bas1)
drawtext("H",barre1,haut1)
drawrectangle(barre2-1,open2,barre2+1,close2) coloured(218,165,32) bordercolor(218,165,32)
DRAWSEGMENT(barre2, bas2, barre2, min(open2,close2)) coloured(218,165,32) style(line,3)
DRAWSEGMENT(barre2, haut2, barre2, max(open2,close2)) coloured(218,165,32) style(line,3)
drawtext("B",barre2,bas2)
drawtext("H",barre2,haut2)
return