Questo è il secondo della lista, il BOUNCE 50 L (solo Long), come sempre dovrai testare te i parametri corretti:
ONCE MaxBars = 3
ONCE LongCondX = 0
ONCE Bars1 = 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
//
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 = low[1] CROSSES UNDER Ema50
a5 = open[1] > Ema50
a6 = close[1] > Ema50
a7 = close > high[1]
a8 = close > open
ax = a1 AND a2 AND a3 AND a4 AND a5 AND a6 AND a7 AND a8
a9a = StocK <= StocOS
a9b = StocK > StocOS
IF LongCondX = 0 THEN
IF ax > 0 THEN
LongCondX = 1
ENDIF
ENDIF
IF LongCondX > 0 THEN
Count = Count + 1
IF Count > MaxBars THEN
LongCond = 0
LongCondX = 0
Bars1 = 0
Count = 0
ax = 0
ENDIF
ENDIF
IF LongCondX > 0 THEN
IF Bars1 = 0 THEN
IF Count > MaxBars THEN
LongCond = 0
LongCondX = 0
Bars1 = 0
Count = 0
ax = 0
ELSIF a9a > 0 THEN
Bars1 = 1
ENDIF
ELSIF a9b THEN
LongCond = 0
LongCondX = 0
Bars1 = 0
Count = 0
ax = 0
ENDIF
ENDIF
LongCond = Bars1
SCREENER [LongCond]
Come la volta scorsa ti allego anche l’indicatore (dove cambia solo l’ultima riga) e la strategia (dove ho tolto l’ultima riga e ne ho aggiunte poche altre per farla girare).
Grazie mille davvero proverò ad adattarlo con i parametri. ma per l’indicatore devo applicarlo sul trend dei prezzi?
No, mettilo sotto il prezzo.
Scusami se non mi sono fatto più sentire, ma ho da fare parecchio, dovrai attendere ancora 8-10 giorni prima che possa mettere le mani sul terzo screener/indicatore.
Buon fine settimana.
Ciao a tutti,
O fatto il 100, penso che e ok.
O provato da fare i screener short per 18 e 50, ma non sonno 100% si sono giusti. le posto chui
Grazie per tutto!!
ONCE MaxBars = 3
ONCE ShortCondX = 0
ONCE Bars1 = 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
//
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 = low[1] CROSSES over Ema50
a5 = open[1] < Ema50
a6 = close[1] < Ema50
a7 = close < high[1]
a8 = close < open
ax = a1 AND a2 AND a3 AND a4 AND a5 AND a6 AND a7 AND a8
a9a = StocK >= StocOS
a9b = StocK < StocOS
IF ShortCondX = 0 THEN
IF ax < 0 THEN
ShortCondX = 1
ENDIF
ENDIF
IF ShortCondX < 0 THEN
Count = Count + 1
IF Count < MaxBars THEN
ShortCond = 0
ShortCondX = 0
Bars1 = 0
Count = 0
ax = 0
ENDIF
ENDIF
IF ShortCondX < 0 THEN
IF Bars1 = 0 THEN
IF Count < MaxBars THEN
ShortCond = 0
ShortCondX = 0
Bars1 = 0
Count = 0
ax = 0
ELSIF a9a < 0 THEN
Bars1 = 1
ENDIF
ELSIF a9b THEN
ShortCond = 0
ShortCondX = 0
Bars1 = 0
Count = 0
ax = 0
ENDIF
ENDIF
ShortCond = Bars1
SCREENER [ShortCond]
ONCE MaxBars1 = 15
ONCE MaxBars2 = 15
ONCE ShortCondX = 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)
//
// Short 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 under 0
a8b = MyMACD1 CROSSES over 0
a9a = MyMACD2 CROSSES under 0
a9b = MyMACD2 CROSSES over 0
a10a = StocK >= StocOS
a10b = StocK < StocOS
IF ShortCondX = 0 THEN
IF ax < 0 THEN
ShortCondX = 1
ENDIF
ENDIF
IF ShortCondX < 0 THEN
Count = Count + 1
IF Count < MaxBars1 THEN
ShortCond = 0
ShortCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ENDIF
ENDIF
IF ShortCondX < 0 THEN
IF Bars1 = 0 THEN
IF Count < MaxBars1 THEN
ShortCond = 0
ShortCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ELSIF a8a < 0 THEN
Bars1 = 1
ENDIF
ELSIF a8b THEN
ShortCond = 0
ShortCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ENDIF
IF Bars2 = 0 THEN
IF Count <= MaxBars1 THEN
ShortCond = 0
ShortCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ELSIF a9a < 0 THEN
Bars2 = 1
ENDIF
ELSIF a9b THEN
ShortCond = 0
ShortCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ENDIF
IF Bars3 = 0 THEN
IF Count <= MaxBars2 THEN
ShortCond = 0
ShortCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ELSIF a10a < 0 THEN
Bars3 = 1
ENDIF
ELSIF a10b THEN
ShortCond = 0
ShortCondX = 0
Bars1 = 0
Bars2 = 0
Bars3 = 0
Count = 0
ax = 0
ENDIF
ENDIF
ShortCond = Bars1 AND Bars2 AND Bars3
SCREENER[ShortCond]
Ho ricodificato Bounce 50 Short, semplificando la codifica (ho cambiato un paio di righe evidenziate).
Ho cambiato anche varie altre cose.
Trova pochi risultati (secondo me nella descrizione della logica sul file PDF c’è qualche errore):
ONCE MaxBars = 5
//
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
//
StocOB = 70 //70 - 30
//StocOS = 100 - StocOB
StocK = Stochastic[5,3](close) //5,3,1
//StocD = Average[1,1](StocK)
//
// SHORT conditions
a1 = Ema18 < Ema50
a2 = ema50 < Ema100
a3 = Ema100 < Ema200
a4 = high[1] CROSSES over Ema50[1] //********** CHANGED
a5 = open[1] < Ema50[1]
a6 = close[1] < Ema50[1]
a7 = close < low[1] //********** CHANGED
a8 = close < open
a9 = summation[Maxbars](StocK >= StocOB) = MaxBars
ShortCond = a1 AND a2 AND a3 AND a4 AND a5 AND a6 AND a7 AND a8 AND a9
SCREENER [ShortCond]