Ecco
// Indicatore multiuso: livelli visuali su apertura, chiusura e ATR
defparam drawonlastbaronly=true
//------------------------------//
// Parametri
//------------------------------//
p = 5 // Periodi per l'ATR
//------------------------------//
// Dati giornalieri
//------------------------------//
timeframe(daily,updateonclose)
atr = AverageTrueRange[p](close) // ATR(5)
timeframe(default)
if intradaybarindex=0 then
closePrev = close[1] // Chiusura giorno precedente
openToday = open // Apertura giorno attuale
bar=barindex
// Calcoli dei livelli
atrUp = openToday + atr
atrDown = openToday - atr
atr30 = atr * 0.30
atrUp30 = openToday + atr30
atrDown30 = openToday - atr30
endif
//------------------------------//
// Disegno sul grafico
//------------------------------//
IF islastbarupdate THEN
// Livello del close precedente
drawsegment(bar,closePrev,barindex,closePrev) coloured(255, 0, 255) style(line, 2)
// Livello dell'open attuale (linea tratteggiata)
drawsegment(bar,openToday,barindex,openToday) coloured(0, 0, 0) style(dottedline, 1)
// Fascia ATR pieno
drawsegment(bar, atrUp, barindex, atrUp) coloured(0, 0, 255)
drawsegment(bar, atrDown, barindex, atrDown) coloured(0, 0, 255)
// Fascia ATR 30%
drawsegment(bar, atrUp30, barindex, atrUp30) coloured(255, 165, 0)
drawsegment(bar, atrDown30, barindex, atrDown30) coloured(255, 165, 0)
// Etichette testuali
drawtext("Close prev", barindex+5, closePrev, sansserif, bold, 10) coloured(255,0,255)
drawtext("Open", barindex+5, openToday, sansserif, bold, 10) coloured(0,0,0)
drawtext("ATR+", barindex+5, atrUp, sansserif, bold, 10) coloured(0,0,255)
drawtext("ATR-", barindex+5, atrDown, sansserif, bold, 10) coloured(0,0,255)
drawtext("ATR+30%", barindex+5, atrUp30, sansserif, bold, 10) coloured(255,165,0)
drawtext("ATR-30%", barindex+5, atrDown30, sansserif, bold, 10) coloured(255,165,0)
ENDIF
return