Bonsoir à tous,
J’aimerai faire un screener à priori simple mais qui ne l’est pas !
En partant des 3D Candle HA ( heikin Ashi ) codé par ALE et une moyenne mobile simple p = 7
1 – j’aimerai trier le croisement à la hausse de 3d candle avec SMA7
2- la même chose à la baisse
==> le systeme me dit : ne retourne pas de valeur !
Alors où est l’astuce pour un truc qu’on voit et qui n’existe pas ?!
// 3D CANDLE HA Supertiti by ALE PRC Heikin Ashi
//09.07.2018 //ALE@PROREALCODE
////////////////////////////////////////////////////////////
//TranslateCandle =0 // To maintain both the candles on the graph without overlap
//TransRange =0,01 // To choose distance of the 3D caNdle
//Transparency =4
////////////////////////////////////////////////////////////
//ONCE CandleCci =0 // CANDLE + COMMODITY CHANNEL INDEX COLOUR
//ONCE CandleRsi =0 // CANDLE + RSI COLOUR
//ONCE CandleStochastic =0 // CANDLE + STOCASTIC COLOUR
//ONCE CandleCycle =0 // CANDLE + CYCLE COLOUR
//ONCE CandleDI =0 // CANDLE + DIRECTIONAL INDEX COLOUR
//////////////////////////////V//////////////////////////////
//ONCE CciPeriod =20
//ONCE RsiPeriod =14
//ONCE N =14
//ONCE K =3
//ONCE DiPeriod =14
//HEIKIN ASHI SMOOTHED PRC 22.10.2016
//SmoothPeriod=2
xClose = (open+high+low+close)/4
IF BarIndex=0 THEN
xOpen = open
xHigh = high
xLow = low
ELSE
xOpen = (xOpen[1] + xClose[1])/2
xHigh = Max(Max(high, xOpen), xClose)
xLow = Min(Min(low, xOpen), xClose)
ENDIF
AvOpen=Average[SmoothPeriod](xOpen)
AvHigh=Average[SmoothPeriod](xHigh)
AvLow=Average[SmoothPeriod](xLow)
Avclose=Average[SmoothPeriod](xClose)
If CandleCci then // CANDLE + COMMODITY CHANNEL INDEX COLOUR
MyCci = Cci[max(1,CciPeriod)](customclose)
R = (200-MyCci)
G =(200+MyCci)
if TranslateCandle then
DRAWCANDLE(AvOpen-(AvOpen*TransRange*pointsize), AvHigh-(AvHigh*TransRange*pointsize), AvLow-(AvLow*TransRange*pointsize), AvClose-(AvClose*TransRange*pointsize)) Coloured (R,G,0,transparency*50)
else
DRAWCANDLE(AvOpen, AvHigh, AvLow, AvClose) Coloured (R,G,0,transparency*50)
endif
Elsif CandleRsi then // CANDLE + RSI COLOUR
MyRsi = RSI[max(1,RsiPeriod)](customclose)
R =50+(200-(MyRsi-50)*12)
G =50+(200+(MyRsi-50)*12)
if TranslateCandle then
DRAWCANDLE(AvOpen-(AvOpen*TransRange*pointsize), AvHigh-(AvHigh*TransRange*pointsize), AvLow-(AvLow*TransRange*pointsize), AvClose-(AvClose*TransRange*pointsize)) Coloured (R,G,0,transparency*50)
else
DRAWCANDLE(AvOpen, AvHigh, AvLow, AvClose) Coloured (R,G,0,transparency*50)
endif
Elsif CandleStochastic then // CANDLE + STOCHASTIC COLOUR
MyStoch = Stochastic[max(1,N),max(1,K)](customclose)
R =50+(200-(MyStoch-50)*6)
G =50+(200+(MyStoch-50)*6)
if TranslateCandle then
DRAWCANDLE(AvOpen-(AvOpen*TransRange*pointsize), AvHigh-(AvHigh*TransRange*pointsize), AvLow-(AvLow*TransRange*pointsize), AvClose-(AvClose*TransRange*pointsize)) Coloured (R,G,0,transparency*50)
else
DRAWCANDLE(AvOpen, AvHigh, AvLow, AvClose) Coloured (R,G,0,transparency*50)
endif
Elsif CandleCycle then // CANDLE + CYCLE COLOUR
MyCycle = Cycle(customclose)
R = (200-MyCycle*10)
G =(200+MyCycle*10)
if TranslateCandle then
DRAWCANDLE(AvOpen-(AvOpen*TransRange*pointsize), AvHigh-(AvHigh*TransRange*pointsize), AvLow-(AvLow*TransRange*pointsize), AvClose-(AvClose*TransRange*pointsize)) Coloured (R,G,0,transparency*50)
else
DRAWCANDLE(AvOpen, AvHigh, AvLow, AvClose) Coloured (R,G,0,transparency*50)
endif
Elsif CandleDI then // CANDLE + DIRECTIONAL INDEX
MyDi = DI[max(1,DiPeriod)](customclose)
R = 50+(200-MyDi*10)
G =50+(200+MyDi*10)
if TranslateCandle then
DRAWCANDLE(AvOpen-(AvOpen*TransRange*pointsize), AvHigh-(AvHigh*TransRange*pointsize), AvLow-(AvLow*TransRange*pointsize), AvClose-(AvClose*TransRange*pointsize)) Coloured (R,G,0,transparency*50)
else
DRAWCANDLE(AvOpen, AvHigh, AvLow, AvClose) Coloured (R,G,0,transparency*50)
endif
endif
Return