//Questo indicatore calcola dei livelli
//di volatiltà utilizzando l'ATR del giorno
//precedente (input- a 5gg)
//e il valore del close precedente (1)
//o dell'open della giornata (0)
//
//timeframe(1 day,updateonclose)
//ATRD0=AverageTrueRange[n](close)
//ATRD1=ATRD0[1]
DEFPARAM DRAWONLASTBARONLY=TRUE
if OTTAVIGANN then
if openclose then
levelh=DOpen(0)+ATRD1
levels=DOpen(0)-ATRD1
levelo=DOpen(0)
levelh50=DOpen(0)+ATRD1*.5
levels50=DOpen(0)-ATRD1*.5
levelh75=DOpen(0)+ATRD1*.75
levels75=DOpen(0)-ATRD1*.75
levelh875=DOpen(0)+ATRD1*.875
levels875=DOpen(0)-ATRD1*.875
levelh125=DOpen(0)+ATRD1*.125
levels125=DOpen(0)-ATRD1*.125
levelh1125=DOpen(0)+ATRD1*1.125
levels1125=DOpen(0)-ATRD1*1.125
levelh25=DOpen(0)+ATRD1*.25
levels25=DOpen(0)-ATRD1*.25
levelh625=DOpen(0)+ATRD1*.625
levels625=DOpen(0)-ATRD1*.625
levelh375=DOpen(0)+ATRD1*.375
levels375=DOpen(0)-ATRD1*.375
else
levelh=DClose(1)+ATRD1
levels=DClose(1)-ATRD1
levelo=DClose(1)
levelh50=DClose(1)+ATRD1*.5
levels50=DClose(1)-ATRD1*.5
levelh75=DClose(1)+ATRD1*.75
levels75=DClose(1)-ATRD1*.75
levelh875=DClose(1)+ATRD1*.875
levels875=DClose(1)-ATRD1*.875
levelh125=DClose(1)+ATRD1*.125
levels125=DClose(1)-ATRD1*.125
levelh1125=DClose(1)+ATRD1*1.125
levels1125=DClose(1)-ATRD1*1.125
levelh25=DClose(1)+ATRD1*.25
levels25=DClose(1)-ATRD1*.25
levelh625=DClose(1)+ATRD1*.625
levels625=DClose(1)-ATRD1*.625
levelh375=DClose(1)+ATRD1*.375
levels375=DClose(1)-ATRD1*.375
endif
endif
if LIVELLIFIBO then
if openclose then
levelh=DOpen(0)+ATRD1
levels=DOpen(0)-ATRD1
levelo=DOpen(0)
levelh50=DOpen(0)+ATRD1*.5
levels50=DOpen(0)-ATRD1*.5
levelh75=DOpen(0)+ATRD1*.764
levels75=DOpen(0)-ATRD1*.764
levelh125=DOpen(0)+ATRD1*.118
levels125=DOpen(0)-ATRD1*.118
levelh25=DOpen(0)+ATRD1*.236
levels25=DOpen(0)-ATRD1*.236
levelh625=DOpen(0)+ATRD1*.618
levels625=DOpen(0)-ATRD1*.618
levelh375=DOpen(0)+ATRD1*.382
levels375=DOpen(0)-ATRD1*.382
else
levelh=DClose(1)+ATRD1
levels=DClose(1)-ATRD1
levelo=DClose(1)
levelh50=DClose(1)+ATRD1*.5
levels50=DClose(1)-ATRD1*.5
levelh75=DClose(1)+ATRD1*.764
levels75=DClose(1)-ATRD1*.764
levelh125=DClose(1)+ATRD1*.118
levels125=DClose(1)-ATRD1*.118
levelh25=DClose(1)+ATRD1*.236
levels25=DClose(1)-ATRD1*.236
levelh625=DClose(1)+ATRD1*.618
levels625=DClose(1)-ATRD1*.618
levelh375=DClose(1)+ATRD1*.382
levels375=DClose(1)-ATRD1*.382
endif
endif
//ATRgrafico=AverageTrueRange[n](close)
DrawText("OPEN = #LEVELO#",BarIndex+10,LEVELO) COLOURED (0,153,153)
DrawText("OPEN + ATR(5)",BarIndex+10,LEVELH) COLOURED (248,0,0)
DrawText("OPEN - ATR(5)",BarIndex+10,LEVELS) COLOURED (248,0,0)
DrawText("OPEN + 0,25 ATR(5)",BarIndex+10,LEVELH25) COLOURED (0,153,153)
DrawText("OPEN - 0,25 ATR(5)",BarIndex+10,LEVELS25) COLOURED (0,153,153)
DrawText("OPEN + 0,5 ATR(5)",BarIndex+10,LEVELH50) COLOURED (0,153,153)
DrawText("OPEN - 0,5 ATR(5)",BarIndex+10,LEVELS50) COLOURED (0,153,153)
DrawText("OPEN + 0,75 ATR(5)",BarIndex+10,LEVELH75) COLOURED (0,153,153)
DrawText("OPEN - 0,75 ATR(5)",BarIndex+10,LEVELS75) COLOURED (0,153,153)
return Levelh as "open+ATR", levels as "open-ATR", levelh50 as "open+0,5atr", levels50 as "open-0,5atr", levelh25 as "open+0,25atr", levels25 as "open-0,25atr", levelo as "open", levelh125 as "open+0,125atr", levels125 as "open-0,125atr", levelh1125 as "open+1,125atr", levels1125 as "open-1,125atr",levelh375 as "open+0,375atr", levels375 as "open-0,375atr",levelh75 as "open+0,75atr", levels75 as "open-0,75atr",levelh875 as "open+0,875atr", levels875 as "open-0,875atr",levelh625 as "open+0,625atr", levels625 as "open-0,625atr"
buongiorno, questo indicatore traccia dei livelli orizzontali utilizzando l’ATR del giorno precedente su time frame inferiori al daily. non sono riuscito ad utilizzare la funzione TIMEFRAME ed ho dovuto lasciare l’ATR del giorno precedente come input. E’ possibile avere il codice corretto, grazie