Professional Documents
Culture Documents
Point and Shoot Indicator
Point and Shoot Indicator
0 at
https://mozilla.org/MPL/2.0/
// � Stock_Warrior
//@version=4
h1 = hline(hline1)
h2 = hline(hline2)
fill(h1, h2, color = #9915ff, transp = 90)
plot(src, color = color_rsi, linewidth = 2, transp = 0)
//plot(Emaline, title="WMA", color=color.blue, offset=offset)
plot(Emaline, color = showema ? color.black : na, linewidth = 2,transp = 0)
getloval(l1, l2)=>
_ret1 = l1 == 1 ? b1val : l1 == 2 ? b2val : l1 ==3 ? b3val : l1 == 4 ? b4val :
l1 == 5 ? b5val : l1 == 6 ? b6val : l1 == 7 ? b7val : l1 == 8 ? b8val : l1 == 9 ?
b9val : l1 == 10 ? b10val : 0
_ret2 = l2 == 1 ? b1val : l2 == 2 ? b2val : l2 ==3 ? b3val : l2 == 4 ? b4val :
l2 == 5 ? b5val : l2 == 6 ? b6val : l2 == 7 ? b7val : l2 == 8 ? b8val : l2 == 9 ?
b9val : l2 == 10 ? b10val : 0
[_ret1, _ret2]
getlopos(l1, l2)=>
_ret1 = l1 == 1 ? b1pos : l1 == 2 ? b2pos : l1 ==3 ? b3pos : l1 == 4 ? b4pos :
l1 == 5 ? b5pos : l1 == 6 ? b6pos : l1 == 7 ? b7pos : l1 == 8 ? b8pos : l1 == 9 ?
b9pos : l1 == 10 ? b10pos : 0
_ret2 = l2 == 1 ? b1pos : l2 == 2 ? b2pos : l2 ==3 ? b3pos : l2 == 4 ? b4pos :
l2 == 5 ? b5pos : l2 == 6 ? b6pos : l2 == 7 ? b7pos : l2 == 8 ? b8pos : l2 == 9 ?
b9pos : l2 == 10 ? b10pos : 0
[_ret1, _ret2]
gethival(l1, l2)=>
_ret1 = l1 == 1 ? t1val : l1 == 2 ? t2val : l1 ==3 ? t3val : l1 == 4 ? t4val :
l1 == 5 ? t5val : l1 == 6 ? t6val : l1 == 7 ? t7val : l1 == 8 ? t8val : l1 == 9 ?
t9val : l1 == 10 ? t10val : 0
_ret2 = l2 == 1 ? t1val : l2 == 2 ? t2val : l2 ==3 ? t3val : l2 == 4 ? t4val :
l2 == 5 ? t5val : l2 == 6 ? t6val : l2 == 7 ? t7val : l2 == 8 ? t8val : l2 == 9 ?
t9val : l2 == 10 ? t10val : 0
[_ret1, _ret2]
gethipos(l1, l2)=>
_ret1 = l1 == 1 ? t1pos : l1 == 2 ? t2pos : l1 ==3 ? t3pos : l1 == 4 ? t4pos :
l1 == 5 ? t5pos : l1 == 6 ? t6pos : l1 == 7 ? t7pos : l1 == 8 ? t8pos : l1 == 9 ?
t9pos : l1 == 10 ? t10pos : 0
_ret2 = l2 == 1 ? t1pos : l2 == 2 ? t2pos : l2 ==3 ? t3pos : l2 == 4 ? t4pos :
l2 == 5 ? t5pos : l2 == 6 ? t6pos : l2 == 7 ? t7pos : l2 == 8 ? t8pos : l2 == 9 ?
t9pos : l2 == 10 ? t10pos : 0
[_ret1, _ret2]
// line definitions
var line l1 = na, var line l2 = na, var line l3 = na, var line l4 = na, var line l5
= na, var line l6 = na, var line l7 = na, var line l8 = na, var line l9 = na, var
line l10 = na
var line l11 = na, var line l12 = na, var line l13 = na, var line l14 = na, var
line l15 = na, var line l16 = na, var line l17 = na, var line l18 = na, var line
l19 = na, var line l20 = na
var line t1 = na, var line t2 = na, var line t3 = na, var line t4 = na, var line t5
= na, var line t6 = na, var line t7 = na, var line t8 = na, var line t9 = na, var
line t10 = na
var line t11 = na, var line t12 = na, var line t13 = na, var line t14 = na, var
line t15 = na, var line t16 = na, var line t17 = na, var line t18 = na, var line
t19 = na, var line t20 = na
// there is limitation for number of lines on chart (<=50), and we use 20 uptrend
lines + 20 downtrend lines (total 40)
maxline = 20
//Line coloring
ulcolor = color.red
dlcolor = color.blue
//Line style
linestyle = linestylei == 'Solid' ? line.style_solid : line.style_dashed
brokenstyle = line.style_dotted
// extend lines
extln = extendlines ? extend.right : extend.none
if valid
uv1 := hline
uv2 := val2
up1 := lloc
up2 := pos2
break
if valid
dv1 := hline
dv2 := val2
dp1 := lloc
dp2 := pos2
break
if showbroken and not valid and countlinehi < maxline and
brokentrend
countlinehi := countlinehi + 1
t1 := countlinehi == 1 ? line.new(pos2 - prd, val2, lloc, lval,
style = brokenstyle, color = ulcolor) : t1
t2 := countlinehi == 2 ? line.new(pos2 - prd, val2, lloc, lval,
style = brokenstyle, color = ulcolor) : t2
t3 := countlinehi == 3 ? line.new(pos2 - prd, val2, lloc, lval,
style = brokenstyle, color = ulcolor) : t3
t4 := countlinehi == 4 ? line.new(pos2 - prd, val2, lloc, lval,
style = brokenstyle, color = ulcolor) : t4
t5 := countlinehi == 5 ? line.new(pos2 - prd, val2, lloc, lval,
style = brokenstyle, color = ulcolor) : t5
t6 := countlinehi == 6 ? line.new(pos2 - prd, val2, lloc, lval,
style = brokenstyle, color = ulcolor) : t6
t7 := countlinehi == 7 ? line.new(pos2 - prd, val2, lloc, lval,
style = brokenstyle, color = ulcolor) : t7
t8 := countlinehi == 8 ? line.new(pos2 - prd, val2, lloc, lval,
style = brokenstyle, color = ulcolor) : t8
t9 := countlinehi == 9 ? line.new(pos2 - prd, val2, lloc, lval,
style = brokenstyle, color = ulcolor) : t9
t10 := countlinehi == 10 ? line.new(pos2 - prd, val2, lloc,
lval, style = brokenstyle, color = ulcolor) : t10
t11 := countlinehi == 11 ? line.new(pos2 - prd, val2, lloc,
lval, style = brokenstyle, color = ulcolor) : t11
t12 := countlinehi == 12 ? line.new(pos2 - prd, val2, lloc,
lval, style = brokenstyle, color = ulcolor) : t12
t13 := countlinehi == 13 ? line.new(pos2 - prd, val2, lloc,
lval, style = brokenstyle, color = ulcolor) : t13
t14 := countlinehi == 14 ? line.new(pos2 - prd, val2, lloc,
lval, style = brokenstyle, color = ulcolor) : t14
t15 := countlinehi == 15 ? line.new(pos2 - prd, val2, lloc,
lval, style = brokenstyle, color = ulcolor) : t15
t16 := countlinehi == 16 ? line.new(pos2 - prd, val2, lloc,
lval, style = brokenstyle, color = ulcolor) : t16
t17 := countlinehi == 17 ? line.new(pos2 - prd, val2, lloc,
lval, style = brokenstyle, color = ulcolor) : t17
t18 := countlinehi == 18 ? line.new(pos2 - prd, val2, lloc,
lval, style = brokenstyle, color = ulcolor) : t18
t19 := countlinehi == 19 ? line.new(pos2 - prd, val2, lloc,
lval, style = brokenstyle, color = ulcolor) : t19
t20 := countlinehi == 20 ? line.new(pos2 - prd, val2, lloc,
lval, style = brokenstyle, color = ulcolor) : t20