**Update**
Colour background Buy & Sell Signal
Original - Vdub-Tetris-V0/
Colour background Buy & Sell Signal
Original - Vdub-Tetris-V0/
study("Vdub_Tetris_V2", overlay=true) Sml_Channel_TF_mins_D_W_M = input("240") Range = input(1) SELL = security(tickerid, Sml_Channel_TF_mins_D_W_M, highest(Range)) BUY = security(tickerid, Sml_Channel_TF_mins_D_W_M, lowest(Range)) HI = plot(SELL, color=SELL!=SELL[1]?na:red,linewidth=2 ) LO = plot(BUY, color=BUY!=BUY[1]?na:green,linewidth=2 ) fill(HI, LO, color=#E3CAF1, transp=80) Hcon = high >= SELL Lcon = low <= BUY plotshape(Hcon, style=shape.triangledown, color=maroon, location=location.abovebar, text='SELL') plotshape(Lcon, style=shape.triangleup, color=green, location=location.belowbar, text='BUY') range = SELL-BUY //-------------------------------------------------- Lrg_Channel_TF_mins_D_W_M = input('D') M_HIGH = security(tickerid, Lrg_Channel_TF_mins_D_W_M, high) M_LOW = security(tickerid, Lrg_Channel_TF_mins_D_W_M, low) plot(M_HIGH, color=M_HIGH != M_HIGH[1] ?na:fuchsia, style=line, linewidth=2) plot(M_LOW, color=M_LOW != M_LOW[1] ?na:fuchsia, style=line, linewidth=2) //-------------------------------------------------- length = input(4) hls = rma(hl2, length) isRising = hls >= hls[1] zigzag1 = isRising and not isRising[1] ? lowest(length) : not isRising and isRising[1] ? highest(length) : na plot(zigzag1, color=black) Zigzag2 = input(false) zigzag = Hcon ? high : Lcon ? low : na plot(not Zigzag2 ? na : zigzag, color=red, style=line, linewidth=3) //========================bgcolor================================= bgcolor(Hcon >= Lcon ? #FFFFFF : #0000FF, transp=90) bgcolor(Lcon >= Hcon ? #FFFFFF : #9771C5, transp=80) //--------------------------