Eccolo, fai qualche verifica:
defparam drawonlastbaronly = true
Timeframe(Daily,UpdateOnClose)
ONCE N = 50
myYear = OpenYear
myMonth = OpenMonth
myDay = OpenDay
YearX = myYear - 1
FOR i = 1 TO BarIndex
IF Year[i] < YearX THEN
break
ENDIF
IF OpenYear[i] = YearX THEN
IF OpenMonth[i] < myMonth THEN
FOR j = 0 TO N - 1
myO = Open[i-1+j]
myH = high[i-1+j]
myL = low[i-1+j]
myC = close[i-1+j]
r = 0
g = 175
b = 0
t = 255
IF myC < myO THEN
r = 255
g = 0
ENDIF
DrawSegment(BarIndex+1+j,myO,BarIndex+1+j,myC) style(line,5) coloured(r,g,b,t)
DrawSegment(BarIndex+1+j,myH,BarIndex+1+j,max(myO,myC)) style(line,1) coloured(r,g,b,t)
DrawSegment(BarIndex+1+j,myL,BarIndex+1+j,min(myO,myC)) style(line,1) coloured(r,g,b,t)
NEXT
break
ELSIF OpenMonth[i] = myMonth THEN
IF (OpenDay[i] = myDay) OR ((OpenDay[i] > myDay) AND (OpenDay[i+1] < myDay)) OR ((OpenDay[i] > myDay) AND (OpenDay[i+1] > myDay) AND (OpenMonth[i-1] < myMonth)) THEN
FOR j = 0 TO N - 1
myO = Open[i+j]
myH = high[i+j]
myL = low[i+j]
myC = close[i+j]
r = 0
g = 175
b = 0
t = 255
IF myC < myO THEN
r = 255
g = 0
ENDIF
DrawSegment(BarIndex+1+j,myO,BarIndex+1+j,myC) style(line,5) coloured(r,g,b,t)
DrawSegment(BarIndex+1+j,myH,BarIndex+1+j,max(myO,myC)) style(line,1) coloured(r,g,b,t)
DrawSegment(BarIndex+1+j,myL,BarIndex+1+j,min(myO,myC)) style(line,1) coloured(r,g,b,t)
NEXT
break
ENDIF
ENDIF
ENDIF
NEXT
RETURN