I am trying to create a pine script to select custom week for drawing pivot points. In India, NSE expiry starts from Friday and ends on Thrusday. I wish to calculate custom pivot from Friday to thursday for last week and plot it from Friday to thursday of next week, but not able to do so. Pls help
//@version=4
//#3d3733 - black //#f70101 - red //#0130f7 - blue //#0ef91b - green //#b71c1c - brown
study("Ramesh Pivot Points", shorttitle="Ramesh Pivots", overlay=true) //higherTF = input("D", type=input.resolution)
//higherTF = input("D", type=input.resolution)
//0930-1700:146
higherTF = input("D", type=input.resolution,options=["D","W","M","Y"])
//higherTF=time(timeframe.period,"0900-1530:5671234")
//sessSpec = input("0900-1530:5671234", type=input.session)
prevCloseHTF = security(syminfo.tickerid, higherTF, close[1], lookahead=true) prevOpenHTF = security(syminfo.tickerid, higherTF, open[1], lookahead=true) prevHighHTF = security(syminfo.tickerid, higherTF, high[1], lookahead=true) prevLowHTF = security(syminfo.tickerid, higherTF, low[1], lookahead=true)
pLevel = (prevHighHTF + prevLowHTF + prevCloseHTF) / 3 bcLevel = (prevHighHTF + prevLowHTF ) / 2.0 tcLevel = (pLevel - bcLevel) + pLevel
r1Level = (pLevel * 2) - prevLowHTF r2Level = pLevel + (prevHighHTF - prevLowHTF) r3Level = r1Level + (prevHighHTF - prevLowHTF) r4Level = r3Level + (r2Level - r1Level)
s1Level = pLevel * 2 - prevHighHTF s2Level = pLevel- (prevHighHTF - prevLowHTF) s3Level = s1Level - (prevHighHTF - prevLowHTF) s4Level = s3Level - (s1Level - s2Level)
dprange = (prevHighHTF - prevLowHTF) //Expanded Camarilla Pivots Formula h1Level=prevCloseHTF + dprange*(1.1/12) h2Level=prevCloseHTF + dprange*(1.1/6) h3Level=prevCloseHTF + dprange*(1.1/4) h4Level=prevCloseHTF + dprange*(1.1/2) h5Level=(prevHighHTF/prevLowHTF)*prevCloseHTF l1Level=prevCloseHTF - dprange*(1.1/12) l2Level=prevCloseHTF - dprange*(1.1/6) l3Level=prevCloseHTF - dprange*(1.1/4) l4Level=prevCloseHTF - dprange*(1.1/2) l5Level=prevCloseHTF - (h5Level-prevCloseHTF)
var line pLine = na var line bcLine = na var line tcLine = na
var line r1Line = na var line r2Line = na var line r3Line = na var line r4Line = na
var line s1Line = na var line s2Line = na var line s3Line = na var line s4Line = na
var line h1Line = na var line h2Line = na var line h3Line = na var line h4Line = na var line h5Line = na
var line l1Line = na var line l2Line = na var line l3Line = na var line l4Line = na var line l5Line = na
if pLevel[1] != pLevel
line.set_x2(pLine, bar_index) line.set_x2(s1Line, bar_index)
line.set_x2(bcLine, bar_index) line.set_x2(tcLine, bar_index)
line.set_x2(r1Line, bar_index) line.set_x2(r2Line, bar_index)
line.set_x2(r3Line, bar_index) line.set_x2(r4Line, bar_index)
line.set_x2(s1Line, bar_index) line.set_x2(s2Line, bar_index)
line.set_x2(s3Line, bar_index) line.set_x2(s4Line, bar_index)
line.set_x2(h1Line, bar_index) line.set_x2(h2Line, bar_index)
line.set_x2(h3Line, bar_index) line.set_x2(h4Line, bar_index)
line.set_x2(h5Line, bar_index) line.set_x2(l1Line, bar_index)
line.set_x2(l2Line, bar_index) line.set_x2(l3Line, bar_index)
line.set_x2(l4Line, bar_index) line.set_x2(l5Line, bar_index)
line.set_extend(pLine, extend.none) line.set_extend(bcLine, extend.none) line.set_extend(tcLine, extend.none)
line.set_extend(r1Line, extend.none) line.set_extend(r2Line, extend.none) line.set_extend(r3Line, extend.none)
line.set_extend(r4Line, extend.none) line.set_extend(s1Line, extend.none) line.set_extend(s2Line, extend.none)
line.set_extend(s3Line, extend.none) line.set_extend(s4Line, extend.none) line.set_extend(h1Line, extend.none)
line.set_extend(h2Line, extend.none) line.set_extend(h3Line, extend.none) line.set_extend(h4Line, extend.none) line.set_extend(h5Line, extend.none)
line.set_extend(l1Line, extend.none) line.set_extend(l2Line, extend.none) line.set_extend(l3Line, extend.none)
line.set_extend(l4Line, extend.none) line.set_extend(l4Line, extend.none)
// r1Line := line.new(bar_index, r1Level, bar_index, r1Level, width=1, extend=extend.right,color=#b71c1c) // s1Line := line.new(bar_index, s1Level, bar_index, s1Level, width=1, extend=extend.right,color=#b71c1c) // pLine := line.new(bar_index, pLevel, bar_index, pLevel, width=1, extend=extend.right,color=#3d3733) // bcLine := line.new(bar_index, bcLevel, bar_index, bcLevel,width=1, extend=extend.right,color=#3d3733)
pLine := line.new(bar_index, pLevel, bar_index, pLevel, width=1, color=#3d3733) bcLine := line.new(bar_index, bcLevel, bar_index, bcLevel,width=1, color=#3d3733) tcLine := line.new(bar_index, tcLevel, bar_index, tcLevel,width=1, color=#3d3733)
r1Line := line.new(bar_index, r1Level, bar_index, r1Level, width=1, color=#b71c1c,style=line.style_dotted) r2Line := line.new(bar_index, r2Level, bar_index, r2Level, width=1, color=#b71c1c,style=line.style_dotted) r3Line := line.new(bar_index, r3Level, bar_index, r3Level, width=1, color=#b71c1c,style=line.style_dotted) r4Line := line.new(bar_index, r4Level, bar_index, r4Level, width=1, color=#b71c1c,style=line.style_dotted)
s1Line := line.new(bar_index, s1Level, bar_index, s1Level, width=1, color=#b71c1c,style=line.style_dotted) s2Line := line.new(bar_index, s2Level, bar_index, s2Level, width=1, color=#b71c1c,style=line.style_dotted) s3Line := line.new(bar_index, s3Level, bar_index, s3Level, width=1, color=#b71c1c,style=line.style_dotted) s4Line := line.new(bar_index, s4Level, bar_index, s4Level, width=1, color=#b71c1c,style=line.style_dotted)
h1Line := line.new(bar_index, h1Level, bar_index, h1Level, width=1, color=#f902d3) h2Line := line.new(bar_index, h2Level, bar_index, h2Level, width=1, color=#f902d3) h3Line := line.new(bar_index, h3Level, bar_index, h3Level, width=1, color=#f70101) h4Line := line.new(bar_index, h4Level, bar_index, h4Level, width=1, color=#0ef91b) h5Line := line.new(bar_index, h5Level, bar_index, h5Level, width=1, color=#0130f7)
l1Line := line.new(bar_index, l1Level, bar_index, l1Level, width=1, color=#ffee58) l2Line := line.new(bar_index, l2Level, bar_index, l2Level, width=1, color=#ffee58) l3Line := line.new(bar_index, l3Level, bar_index, l3Level, width=1, color=#0ef91b) l4Line := line.new(bar_index, l4Level, bar_index, l4Level, width=1, color=#f70101) l5Line := line.new(bar_index, l5Level, bar_index, l5Level, width=1, color=#0130f7)
label.new(bar_index, pLevel, "P", style=label.style_none,size=size.small) label.new(bar_index, bcLevel, "BC", style=label.style_none,size=size.small)
label.new(bar_index, tcLevel, "TC", style=label.style_none,size=size.small)
label.new(bar_index, r1Level, "R1", style=label.style_none,size=size.small) label.new(bar_index, r2Level, "R2", style=label.style_none,size=size.small)
label.new(bar_index, r3Level, "R3", style=label.style_none,size=size.small) label.new(bar_index, r4Level, "R4", style=label.style_none,size=size.small)
label.new(bar_index, s1Level, "S1", style=label.style_none,size=size.small) label.new(bar_index, s2Level, "S2", style=label.style_none,size=size.small)
label.new(bar_index, s3Level, "S3", style=label.style_none,size=size.small) label.new(bar_index, s4Level, "S4", style=label.style_none,size=size.small)
label.new(bar_index, h1Level, "h1", style=label.style_none,size=size.small) label.new(bar_index, h2Level, "h2", style=label.style_none,size=size.small)
label.new(bar_index, h3Level, "h3", style=label.style_none,size=size.small) label.new(bar_index, h4Level, "h4", style=label.style_none,size=size.small)
label.new(bar_index, h5Level, "h5", style=label.style_none,size=size.small) label.new(bar_index, l1Level, "l1", style=label.style_none,size=size.small)
label.new(bar_index, l2Level, "l2", style=label.style_none,size=size.small) label.new(bar_index, l3Level, "l3", style=label.style_none,size=size.small)
label.new(bar_index, l4Level, "l4", style=label.style_none,size=size.small) label.new(bar_index, l5Level, "l5", style=label.style_none,size=size.small)
if not na(pLine) and line.get_x2(pLine) != bar_index
line.set_x2(pLine, bar_index) line.set_x2(bcLine, bar_index) line.set_x2(tcLine, bar_index)
line.set_x2(r1Line, bar_index) line.set_x2(r2Line, bar_index) line.set_x2(r3Line, bar_index) line.set_x2(r4Line, bar_index)
line.set_x2(s1Line, bar_index) line.set_x2(s2Line, bar_index)
line.set_x2(s3Line, bar_index) line.set_x2(s4Line, bar_index)
line.set_x2(h1Line, bar_index) line.set_x2(h2Line, bar_index)
line.set_x2(h3Line, bar_index) line.set_x2(h4Line, bar_index)
line.set_x2(h5Line, bar_index) line.set_x2(l1Line, bar_index)
line.set_x2(l2Line, bar_index) line.set_x2(l3Line, bar_index)
line.set_x2(l4Line, bar_index) line.set_x2(l5Line, bar_index)