Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //@version=4
- study("Block v.2", overlay=true, max_boxes_count = 100)
- color c_up = input(color.green, "Bar Color Up", type = input.color)
- color c_down = input(color.red, "Bar Color Down", type = input.color)
- color c_up_b = input(color.green, "Box Color Up", type = input.color)
- color c_down_b = input(color.red, "Box Color Down", type = input.color)
- trans = input(85, minval = 0, maxval = 100)
- src = close
- float highs = 0.0
- float lows = 0.0
- highs := close > nz(highs[1]) or close < nz(lows[1]) ? high : max(high, highs[1])
- lows := close > nz(highs[1]) or close < nz(lows[1]) ? low : min(low, lows[1])
- colors = color.green
- colors := close > nz(highs[1]) or close < nz(lows[1]) ? close > open ? c_up : c_down : na
- new_block = close > highs[1] or close < lows[1]
- plotshape(new_block, "New Block", shape.diamond, location.abovebar, colors)
- barcolor(colors)
- //boxes
- var n = 0
- if(new_block)
- var cbar = 0
- var line line1 = na
- var line line2 = na
- icolor = color.red
- icolor := close > open ? c_up_b : c_down_b
- cbar := new_block ? bar_index : na
- if (icolor != icolor[1] and icolor == c_up_b)
- mybox = box.new(left=bar_index, top=highs[1],
- right=cbar[1] , bottom=lows[1], bgcolor=color.new(icolor[1], trans),
- border_width=na)
- line1 := line.new(cbar[1], lows[1] ,cbar , highs[1])
- line.set_xy2(id = line2,x = cbar[1],y = lows[1])
- if (icolor != icolor[1] and icolor == c_down_b)
- mybox = box.new(left=bar_index, top=highs[1],
- right=cbar[1] , bottom=lows[1], bgcolor=color.new(icolor[1], trans),
- border_width=na)
- line.set_xy2(id = line1,x = cbar[1],y = highs[1])
- line2 := line.new(cbar[1], highs[1], cbar, lows[1])
- line.set_color(id = line1, color = #2efb37)
- line.set_color(id = line2, color = #2efb37)
Advertisement
Add Comment
Please, Sign In to add comment