Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
302 views
in Technique[技术] by (71.8m points)

stock - ( Tradingview - Camarilla) Show last two day's lines only

This script plots camarilla on tradingview chart. There is a toggle option to "Show last periods". When I enable it, it will show lines all the way back. I just need it to show current and previous day.. (or specify how many days historical lines is better).

Picture from another script that contains what I need. enter image description here

Tried but could not modify. Thanks in adance!!

study("Expanded Camarilla Levels", overlay = true)
mode =input(title = "HTF Method", defval = 'User Defined', options=['Auto', 'User Defined'])
HTFm = input('D', title = "Time Frame (if HTF Method=User Defined)", type=input.resolution)
showlast = input(title = "Show Only Last Period", defval = true)
showlabels = input(title = "Show Labels", defval = true)
lstyle = input(title = "Line Style", options = ['Solid', 'Circles', 'Cross'], defval ='Solid')
 
//auto higher time frame
HTFo =timeframe.period == '1' ? '30' : 
  timeframe.period == '3' ? '60' : 
  timeframe.period == '5' ? '240' : 
  timeframe.period == '15' ? 'D' : 
  timeframe.period == '30' ? 'D' : 
  timeframe.period == '45' ? 'D' : 
  timeframe.period == '60' ? 'D' : 
  timeframe.period == '120' ? 'D' : 
  timeframe.period == '180' ? 'D' : 
  timeframe.period == '240' ? 'D' : 
  timeframe.period == 'D' ? 'W' :
  '5W'
  
HTF = mode == 'Auto' ? HTFo : HTFm
    
highhtf = security(syminfo.tickerid, HTF, high[1], lookahead = barmerge.lookahead_on)
lowhtf = security(syminfo.tickerid, HTF, low[1], lookahead = barmerge.lookahead_on)
closehtf = security(syminfo.tickerid, HTF, close[1], lookahead = barmerge.lookahead_on)

RANGE = highhtf - lowhtf

// is this last bar for HTF?
islast = showlast ? security(syminfo.tickerid, HTF, barstate.islast, lookahead = true) : true

// Line Style
linestyle = lstyle == 'Solid' ? plot.style_line :
   lstyle == 'Circle' ? plot.style_circles : plot.style_cross

H5 = (highhtf / lowhtf) * closehtf
H4 = closehtf + RANGE * 1.1/2
H3 = closehtf + RANGE * 1.1/4
H2 = closehtf + RANGE * 1.1/6
H1 = closehtf + RANGE * 1.1/12
L1 = closehtf - RANGE * 1.1/12
L2 = closehtf - RANGE * 1.1/6
L3 = closehtf - RANGE * 1.1/4
L4 = closehtf - RANGE * 1.1/2
L5 = closehtf - (H5 - closehtf)

plot(islast ? H5 : na, title = "H5", color = color.silver, linewidth = 1, style = linestyle, transp = 45)
plot(islast ? H4 : na, title = "H4", color = color.green, linewidth = 1, style = linestyle, transp = 0)
plot(islast ? H3 : na, title = "H3", color = color.red, linewidth = 2, style = linestyle, transp = 0)
plot(islast ? L3 : na, title = "L3", color = color.lime, linewidth = 2, style = linestyle, transp = 0)
plot(islast ? L4 : na, title = "L4", color = color.orange, linewidth = 1, style = linestyle, transp = 0)
plot(islast ? L5 : na, title = "L5", color = color.silver, linewidth = 1, style = linestyle, transp = 45)

// Label for S/R
chper = time - time[1]
chper := change(chper) > 0 ? chper[1] : chper

Round_it(valu)=>
    a = 0
    num = syminfo.mintick
    s = valu
    if na(s)
        s := syminfo.mintick
    if num < 1
        for i = 1 to 20
            num := num * 10
            if num > 1
                break
            a := a +1
    
    for x = 1 to a 
        s := s * 10
    s := round(s)
    for x = 1 to a
        s := s / 10
    s := s < syminfo.mintick  ? syminfo.mintick : s
    s

// Labels
if showlabels
    var label s3label = na, var label s4label = na, var label s5label = na
    var label r3label = na, var label r4label = na, var label r5label = na
    
    label.delete(s3label), label.delete(s4label), label.delete(s5label)
    label.delete(r3label), label.delete(r4label), label.delete(r5label)
    s3label := label.new(x = time + chper * 20, y = L3, text = "L3", color = color.lime, textcolor=color.lime, style=label.style_none, xloc = xloc.bar_time, yloc=yloc.price)
    s4label := label.new(x = time + chper * 20, y = L4, text = "L4", color = color.lime, textcolor=color.orange, style=label.style_none, xloc = xloc.bar_time, yloc=yloc.price)
    s5label := label.new(x = time + chper * 20, y = L5, text = "L5", color = color.lime, textcolor=color.silver, style=label.style_none, xloc = xloc.bar_time, yloc=yloc.price)
    r3label := label.new(x = time + chper * 20, y = H3, text = "H3", color = color.red, textcolor=color.red, style=label.style_none, xloc = xloc.bar_time, yloc=yloc.price)
    r4label := label.new(x = time + chper * 20, y = H4, text = "H4", color = color.red, textcolor=color.lime, style=label.style_none, xloc = xloc.bar_time, yloc=yloc.price)
    r5label := label.new(x = time + chper * 20, y = H5, text = "H5", color = color.red, textcolor=color.silver, style=label.style_none, xloc = xloc.bar_time, yloc=yloc.price)
question from:https://stackoverflow.com/questions/65920416/tradingview-camarilla-show-last-two-days-lines-only

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...