```
def isRollover = GetYYYYMMDD() != GetYYYYMMDD()[1];
def beforeStart = GetTime() < RegularTradingStart(GetYYYYMMDD());
def vol = if isRollover and beforeStart then volume else if beforeStart then vol[1] + volume else Double.NaN;
def PMV = if IsNaN(vol) then PMV[1] else vol;
def AV = AggregationPeriod.DAY;
def x = Average(Volume(period=AV)[1],60);
def y1 = Round((PMV/x),2);
def L = Lg(y1);
def p = if L>=1 then 0 else if L>=0 then 1 else 2;
def y2 = Round(y1,p);
#plot z = y2;
#z.assignValueColor(if z>=10 then color.CYAN else if z>=1 then createcolor(255,153,153) else createcolor(0,215,0));
AssignBackgroundColor(if y2 > 10 then Color.BLUE
else if y2 > 8 then Color.DARK_GREEN
else if y2 > 6 then Color.GREEN
else if y2 > 4 then Color.LIGHT_GREEN
else if y2 > 2 then Color.LIME
else if y2 > 1 then Color.YELLOW
else if y2 < 1 then Color.ORANGE else Color.BLACK);
AddLabel(yes, y2, Color.BLACK);
```