Ho creato un indicatore con tre filtri: Candela Long, Range che attraversa MMA[8], Filtro di volatilità : Il range deve essere maggiore della media del range delle ultime 5 candele.
Allego il codice vorrei, se possibile, avere un controllo se è strutturato bene ho migliorabile, ho usato dei cicli “if condizionali”, forse ho solo complicato le cose.
// Pulisci programma
result = 0
// filltro range che attraversa media esponenziale [8]
MMA = ExponentialAverage[8](close)
c1 = MMA < High
c2 = MMA > low
Filtro = c1 and c2
//Filtro di volatilità
Espansione = range > average[5,0](range[1])
// Se validati i miei filtri cerco candela Long (buy o sell)
If Espansione then
If Filtro then
corpo = abs(close-open)
corpomedio = average[20](corpo)
ampia = corpo > (corpomedio * Forzalong) // Forzalong non è nel codice perché e una variabile modificabile
Long = ampia and (close > open)// Rialzista
Short = ampia and (close < open)// Ribassista
if long then
result = 1
elsif short then
result = -1
else
result = 0
endif
endif
endif
return result ,0