EXPERIMENTAL:
Range Swinging
Range Swinging
study("[RS]Range Swing V0", overlay=true) window = input(10) sensitivity = input(2) multiplier = input(1.1) a_atr = atr(window)*multiplier h = valuewhen(high>=highest(window), high, 0) lh = max(valuewhen(h<=lowest(h, window), h, 0), h-a_atr) l = valuewhen(low<=lowest(window), low, 0) hl = min(valuewhen(l>=highest(l, window), l, 0), l+a_atr) median = avg(h, l) plot(title='Median', series=median, color=gray) ph1 = plot(title='H',series=h, color=maroon) ph2 = plot(title='LH',series=lh, color=red) pl1 = plot(title='L',series=l, color=green) pl2 = plot(title='HL',series=hl, color=lime) fill(ph1, ph2, color=red, transp=70) fill(pl1, pl2, color=lime, transp=70) top_sl = highest(h+a_atr*multiplier, window) bot_sl = lowest(l-a_atr, window) plot(title='TOPSL',series=top_sl, color=black) plot(title='BOTSL',series=bot_sl, color=black) buy_signal = lowest(sensitivity)[1] <= l and close < hl sel_signal = highest(sensitivity)[1] >= h and close > lh plotshape(buy_signal?l:na, text='B', style=shape.labelup, location=location.absolute, textcolor=black, color=lime) plotshape(sel_signal?h:na, text='S', style=shape.labeldown, location=location.absolute, textcolor=black, color=red)