Ci è voluto un pò di tempo, però ci sono arrivato a comprendere la logica. Questo è il primo della lista, il BOUNCE 18 LONG.
E’ come riportato sul PDF, solo che anche per il conteggio delle barre dello stocastico, indicate come 3 nel PDF, sono davvero poche per ottenere segnali, per cui le ho impostate a 15 come quelle per i due MACD:
ONCE MaxBars1 = 15
ONCE MaxBars2 = 15
ONCE LongCondX = 0
ONCE Bars1 = 0
ONCE Bars2 = 0
ONCE Bars3 = 0
ONCE Count = 0
//
ONCE AvgType = 1 //1=ema
Ema18 = average[18,AvgType](close) //18
Ema50 = average[50,AvgType](close) //50
Ema100 = average[100,AvgType](close) //100
Ema200 = average[200,AvgType](close) //200
//
MyMACD1 = Macd[18,50,9](close) //18,50,9
MyMACD2 = Macd[50,100,9](close) //50,100,9
//
StocOB = 70 //70 - 30
StocOS = 100 - StocOB
StocK = Stochastic[5,1](close) //5,1,3
//StocD = Average[3,1](StocK)
//
// LONG conditions
a1 = Ema18 > Ema50
a2 = ema50 > Ema100
a3 = Ema100 > Ema200
a4 = open[1] > Ema18
a5 = close[1] > Ema18
a6 = close > high[1]
a7 = close > open
ax = a1 AND a2 AND a3 AND a4 AND a5 AND a6 AND a7
a8a = MyMACD1 CROSSES OVER 0
a8b = MyMACD1 CROSSES UNDER 0
a9a = MyMACD2 CROSSES OVER 0
a9b = MyMACD2 CROSSES UNDER 0
a10a = StocK <= StocOS
a10b = StocK > StocOS
IF LongCondX = 0 THEN
IF ax > 0 THEN
LongCondX = 1
ENDIF
ENDIF
IF LongCondX > 0 THEN
Count = Count + 1
IF Count > MaxBars1 THEN
LongCond = 0
LongCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ENDIF
ENDIF
IF LongCondX > 0 THEN
IF Bars1 = 0 THEN
IF Count > MaxBars1 THEN
LongCond = 0
LongCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ELSIF a8a > 0 THEN
Bars1 = 1
ENDIF
ELSIF a8b THEN
LongCond = 0
LongCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ENDIF
IF Bars2 = 0 THEN
IF Count >= MaxBars1 THEN
LongCond = 0
LongCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ELSIF a9a > 0 THEN
Bars2 = 1
ENDIF
ELSIF a9b THEN
LongCond = 0
LongCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ENDIF
IF Bars3 = 0 THEN
IF Count >= MaxBars2 THEN
LongCond = 0
LongCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ELSIF a10a > 0 THEN
Bars3 = 1
ENDIF
ELSIF a10b THEN
LongCond = 0
LongCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ENDIF
ENDIF
LongCond = Bars1 AND Bars2 AND Bars3
SCREENER[LongCond]
Ti ho fatto anche un indicatore ed una strategia (sul DAX, giornaliero), che ti allego, ma non posto qui perché qui si parla solo di SCREENER.
Si potrebbe fare anche la versione SHORT, non so se vuoi provare tu, altrimenti te la faccio io.
Per gli altri screener puoi provare a fare qualcosa te, altrimenti posso farteli io… con molta calma! (sono molti).