//Average value of Highest Close and Lowest Close
ONCE HighestClose = Close[0]
ONCE HighestMirrorClose = MirrorClose[0]
// Calulate the highest close value
IF Close >= Close[1] THEN
IF Close >= HighestClose THEN
HighestClose = Close
ENDIF
ENDIF
// Calculate the difference between the highest close value and close
DifHighestClose = HighestClose - Close
// Mirror this difference in the highest close value
MirrorClose = HighestClose + DifHighestClose
// Calculate the highest mirror close value
IF MirrorClose >= MirrorClose[1] THEN
IF MirrorClose >= HighestMirrorClose THEN
HighestMirrorClose = MirrorClose
ENDIF
ENDIF
// Mirror or rotate the highest mirror close value in/with the highest close value
LowestClose = HighestClose - (HighestMirrorClose - HighestClose )
// Average of highest close and lowest close
MidHighestLowest = (HighestClose + LowestClose) / 2
DRAWTEXT("O", barindex, close)coloured(0,0,0)
IF Close[0] >= MidHighestLowest THEN
r=0
g=0
b=255
ELSE
r=255
g=0
b=0
ENDIF
RETURN Close coloured(r,g,b), MidHighestLowest