Il BACKGROUNDCOLOR setta il colore dell’intera porzione di grafico della candela corrente, non una sola parte e non per candele arretrate.
Fino alla v11 si poteva simulare stampando delle CANDELE o BARRE (senza ombre), larghe quanto la distanza. Non era perfetto, ma una buona approssimazione.
Con la v12 è stata aggiunta l’istruzione COLORBETWEEN, però NON si può limitare alle utime barre ma vale per TUTTO il grafico (mentre le linee seguono defparam drawonlastbaronly = true):
defparam drawonlastbaronly = true
atr=ROUND((AverageTrueRange[20](close)[1]),3)
TF = GetTimeFrame
IF TF = 86400 THEN // Day
upperlvl = floor(dlow(0)+atr,decimals)
lowerlvl = floor(dhigh(0)-atr,decimals)
drawsegment(barindex,upperlvl,barindex+3,upperlvl) style(dottedline,2)
drawsegment(barindex,lowerlvl,barindex+3,lowerlvl) style(dottedline,2)
drawtext("#upperlvl#",barindex+6,upperlvl, Dialog,Standard,10)
drawtext("#lowerlvl# #atr#" ,barindex+7,lowerlvl, Dialog,Standard ,10)
ColorBetween (upperlvl,lowerlvl,255,0,0,50)
ENDIF
IF TF = 604800 THEN // Week
upperlvl = floor(dlow(0)+atr,decimals)
lowerlvl = floor(dhigh(0)-atr,decimals)
drawsegment(barindex,upperlvl,barindex+3,upperlvl) style(dottedline,2)
drawsegment(barindex,lowerlvl,barindex+3,lowerlvl) style(dottedline,2)
drawtext("#upperlvl#",barindex+7,upperlvl, Dialog,Standard,10)
drawtext("#lowerlvl# #atr#" ,barindex+8,lowerlvl, Dialog,Standard,10)
drawtext("#lowerlvl# #atr#" ,barindex+7,lowerlvl, Dialog,Standard ,10)
ColorBetween (upperlvl,lowerlvl,255,0,0,50)
ENDIF
return