Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //@version=4
- //@author=maki2000
- study("Auto Intraday Fibs", overlay=true)
- period = input("5", "Period", input.resolution)
- lastSessionClose = input("1555-1600", "Last Session Close", input.session)
- currentSessionopen = input("0930-0935", "Current Session Open", input.session)
- reverse = input(false, "Reverse", input.bool)
- auto_reverse = input(false, "Auto Reverse", input.bool)
- show_0 = input(true, "Show 0", input.bool)
- show_0_236 = input(true, "Show 0.236", input.bool)
- show_0_382 = input(true, "Show 0.382", input.bool)
- show_0_5 = input(true, "Show 0.5", input.bool)
- show_0_618 = input(true, "Show 0.618", input.bool)
- show_0_786 = input(true, "Show 0.786", input.bool)
- show_1 = input(true, "Show 1", input.bool)
- show_1_272 = input(true, "Show 1.272", input.bool)
- show_1_618 = input(true, "Show 1.618", input.bool)
- show_2 = input(true, "Show 2", input.bool)
- show_2_272 = input(false, "Show 2.618", input.bool)
- show_2_618 = input(true, "Show 2.618", input.bool)
- show_3 = input(false, "Show 3", input.bool)
- show_3_618 = input(true, "Show 3.618", input.bool)
- show_4_236 = input(true, "Show 4.236", input.bool)
- show_4_618 = input(true, "Show 4.618", input.bool)
- getData(s) =>
- float d = na
- inSession = time(period, s)
- if not inSession and inSession[1]
- d := close[1]
- d
- float closeData = na
- closeData := closeData[1]
- lastClose = security(syminfo.tickerid, period, getData(lastSessionClose))
- if not na(lastClose)
- closeData := lastClose
- float openData = na
- openData := openData[1]
- currentOpen = security(syminfo.tickerid, period, getData(currentSessionopen))
- if not na(currentOpen)
- openData := currentOpen
- // colors
- fib_0_color = #868799
- fib_1_color = #868799
- fib_0_236_color = #912028
- fib_0_382_color = #679628
- fib_0_5_color = #269628
- fib_0_618_color = #269674
- fib_0_786_color = #246799
- fib_1_272_color = #679628
- fib_1_618_color = #221899
- fib_2_color = #269674
- fib_2_272_color = #679628
- fib_2_618_color = #912028
- fib_3_color = #246799
- fib_3_618_color =#843299
- fib_4_236_color = #911873
- fib_4_618_color = #679628
- // auto reverse?
- if auto_reverse
- if close > openData
- reverse := true
- // fib retracements
- fib_0 = reverse ? openData : closeData
- fib_1 = reverse ? closeData : openData
- fib_diff = abs(fib_1-fib_0)
- fib_0_236 = reverse ? fib_0 + (0.236 * fib_diff) : fib_0 - (0.236 * fib_diff)
- fib_0_382 = reverse ? fib_0 + (0.382 * fib_diff) : fib_0 - (0.382 * fib_diff)
- fib_0_5 = reverse ? fib_0 + (0.5 * fib_diff) : fib_0 - (0.5 * fib_diff)
- fib_0_618 = reverse ? fib_0 + (0.618 * fib_diff) : fib_0 - (0.618 * fib_diff)
- fib_0_786 = reverse ? fib_0 + (0.786 * fib_diff) : fib_0 - (0.786 * fib_diff)
- fib_1_272 = reverse ? fib_0 + (1.272 * fib_diff) : fib_0 - (1.272 * fib_diff)
- fib_1_618 = reverse ? fib_0 + (1.618 * fib_diff) : fib_0 - (1.618 * fib_diff)
- fib_2 = reverse ? fib_0 + (2 * fib_diff) : fib_0 - (2 * fib_diff)
- fib_2_272 = reverse ? fib_0 + (2.272 * fib_diff) : fib_0 - (2.272 * fib_diff)
- fib_2_618 = reverse ? fib_0 + (2.618 * fib_diff) : fib_0 - (2.618 * fib_diff)
- fib_3 = reverse ? fib_0 + (3 * fib_diff) : fib_0 - (3 * fib_diff)
- fib_3_618 = reverse ? fib_0 + (3.618 * fib_diff) : fib_0 - (3.618 * fib_diff)
- fib_4_236 = reverse ? fib_0 + (4.236 * fib_diff) : fib_0 - (4.236 * fib_diff)
- fib_4_618 = reverse ? fib_0 + (4.618 * fib_diff) : fib_0 - (4.618 * fib_diff)
- // Fib lines
- first_bar_index = bar_index-barssince(lastClose)
- if show_0
- fib_0_line = line.new(x1=bar_index, y1=fib_0, x2=first_bar_index, y2=fib_0, xloc=xloc.bar_index, extend=extend.left, color=fib_1_color, style=line.style_solid, width=1)
- line.delete(fib_0_line[1])
- if show_1
- fib_1_line = line.new(x1=bar_index, y1=fib_1, x2=first_bar_index, y2=fib_1, xloc=xloc.bar_index, extend=extend.left, color=fib_0_color, style=line.style_solid, width=1)
- line.delete(fib_1_line[1])
- if show_0_236
- fib_0_236_line = line.new(x1=bar_index, y1=fib_0_236, x2=first_bar_index, y2=fib_0_236, xloc=xloc.bar_index, extend=extend.left, color=fib_0_236_color, style=line.style_solid, width=1)
- line.delete(fib_0_236_line[1])
- if show_0_382
- fib_0_382_line = line.new(x1=bar_index, y1=fib_0_382, x2=first_bar_index, y2=fib_0_382, xloc=xloc.bar_index, extend=extend.left, color=fib_0_382_color, style=line.style_solid, width=1)
- line.delete(fib_0_382_line[1])
- if show_0_5
- fib_0_5_line = line.new(x1=bar_index, y1=fib_0_5, x2=first_bar_index, y2=fib_0_5, xloc=xloc.bar_index, extend=extend.left, color=fib_0_5_color, style=line.style_solid, width=1)
- line.delete(fib_0_5_line[1])
- if show_0_618
- fib_0_618_line = line.new(x1=bar_index, y1=fib_0_618, x2=first_bar_index, y2=fib_0_618, xloc=xloc.bar_index, extend=extend.left, color=fib_0_618_color, style=line.style_solid, width=1)
- line.delete(fib_0_618_line[1])
- if show_0_786
- fib_0_786_line = line.new(x1=bar_index, y1=fib_0_786, x2=first_bar_index, y2=fib_0_786, xloc=xloc.bar_index, extend=extend.left, color=fib_0_786_color, style=line.style_solid, width=1)
- line.delete(fib_0_786_line[1])
- if show_1_272
- fib_1_272_line = line.new(x1=bar_index, y1=fib_1_272, x2=first_bar_index, y2=fib_1_272, xloc=xloc.bar_index, extend=extend.left, color=fib_1_272_color, style=line.style_solid, width=1)
- line.delete(fib_1_272_line[1])
- if show_1_618
- fib_1_618_line = line.new(x1=bar_index, y1=fib_1_618, x2=first_bar_index, y2=fib_1_618, xloc=xloc.bar_index, extend=extend.left, color=fib_1_618_color, style=line.style_solid, width=1)
- line.delete(fib_1_618_line[1])
- if show_2
- fib_2_line = line.new(x1=bar_index, y1=fib_2, x2=first_bar_index, y2=fib_2, xloc=xloc.bar_index, extend=extend.left, color=fib_2_color, style=line.style_solid, width=1)
- line.delete(fib_2_line[1])
- if show_2_272
- fib_2_272_line = line.new(x1=bar_index, y1=fib_2_272, x2=first_bar_index, y2=fib_2_272, xloc=xloc.bar_index, extend=extend.left, color=fib_2_272_color, style=line.style_solid, width=1)
- line.delete(fib_2_272_line[1])
- if show_2_618
- fib_2_618_line = line.new(x1=bar_index, y1=fib_2_618, x2=first_bar_index, y2=fib_2_618, xloc=xloc.bar_index, extend=extend.left, color=fib_2_618_color, style=line.style_solid, width=1)
- line.delete(fib_2_618_line[1])
- if show_3
- fib_3_line = line.new(x1=bar_index, y1=fib_3, x2=first_bar_index, y2=fib_3, xloc=xloc.bar_index, extend=extend.left, color=fib_3_color, style=line.style_solid, width=1)
- line.delete(fib_3_line[1])
- if show_3_618
- fib_3_618_line = line.new(x1=bar_index, y1=fib_3_618, x2=first_bar_index, y2=fib_3_618, xloc=xloc.bar_index, extend=extend.left, color=fib_3_618_color, style=line.style_solid, width=1)
- line.delete(fib_3_618_line[1])
- if show_4_236
- fib_4_236_line = line.new(x1=bar_index, y1=fib_4_236, x2=first_bar_index, y2=fib_4_236, xloc=xloc.bar_index, extend=extend.left, color=fib_4_236_color, style=line.style_solid, width=1)
- line.delete(fib_4_236_line[1])
- if show_4_618
- fib_4_618_line = line.new(x1=bar_index, y1=fib_4_618, x2=first_bar_index, y2=fib_4_618, xloc=xloc.bar_index, extend=extend.left, color=fib_4_618_color, style=line.style_solid, width=1)
- line.delete(fib_4_618_line[1])
- // Labels
- // labelPosition = bar_index-barssince(lastClose) - 5
- labelPosition = bar_index - 10
- if show_0
- labelFib_0 = label.new(labelPosition, fib_0, text="0 ("+tostring(fib_0,"####.##")+")", style=label.style_none, textcolor=fib_0_color, color=color.white, size=size.normal)
- label.delete(labelFib_0[1])
- if show_1
- labelFib_1 = label.new(labelPosition, fib_1, text="1 ("+tostring(fib_1,"####.##")+")", style=label.style_none, textcolor=fib_1_color, color=color.white, size=size.normal)
- label.delete(labelFib_1[1])
- if show_0_236
- labelFib_0_236 = label.new(labelPosition, fib_0_236, text="0.236 ("+tostring(fib_0_236,"####.##")+")", style=label.style_none, textcolor=fib_0_236_color, color=color.white, size=size.normal)
- label.delete(labelFib_0_236[1])
- if show_0_382
- labelFib_0_382 = label.new(labelPosition, fib_0_382, text="0.382 ("+tostring(fib_0_382,"####.##")+")", style=label.style_none, textcolor=fib_0_382_color, color=color.white, size=size.normal)
- label.delete(labelFib_0_382[1])
- if show_0_5
- labelFib_0_5 = label.new(labelPosition, fib_0_5, text="0.5 ("+tostring(fib_0_5,"####.##")+")", style=label.style_none, textcolor=fib_0_5_color, color=color.white, size=size.normal)
- label.delete(labelFib_0_5[1])
- if show_0_618
- labelFib_0_618 = label.new(labelPosition, fib_0_618, text="0.618 ("+tostring(fib_0_618,"####.##")+")", style=label.style_none, textcolor=fib_0_618_color, color=color.white, size=size.normal)
- label.delete(labelFib_0_618[1])
- if show_0_786
- labelFib_0_786 = label.new(labelPosition, fib_0_786, text="0.786 ("+tostring(fib_0_786,"####.##")+")", style=label.style_none, textcolor=fib_0_786_color, color=color.white, size=size.normal)
- label.delete(labelFib_0_786[1])
- if show_1_272
- labelFib_1_272 = label.new(labelPosition, fib_1_272, text="1.272 ("+tostring(fib_1_272,"####.##")+")", style=label.style_none, textcolor=fib_1_272_color, color=color.white, size=size.normal)
- label.delete(labelFib_1_272[1])
- if show_1_618
- labelFib_1_618 = label.new(labelPosition, fib_1_618, text="1.618 ("+tostring(fib_1_618,"####.##")+")", style=label.style_none, textcolor=fib_1_618_color, color=color.white, size=size.normal)
- label.delete(labelFib_1_618[1])
- if show_2
- labelFib_2 = label.new(labelPosition, fib_2, text="2 ("+tostring(fib_2,"####.##")+")", style=label.style_none, textcolor=fib_2_color, color=color.white, size=size.normal)
- label.delete(labelFib_2[1])
- if show_2_272
- labelFib_2_272 = label.new(labelPosition, fib_2_272, text="2.272 ("+tostring(fib_2_272,"####.##")+")", style=label.style_none, textcolor=fib_2_272_color, color=color.white, size=size.normal)
- label.delete(labelFib_2_272[1])
- if show_2_618
- labelFib_2_618 = label.new(labelPosition, fib_2_618, text="2.618 ("+tostring(fib_2_618,"####.##")+")", style=label.style_none, textcolor=fib_2_618_color, color=color.white, size=size.normal)
- label.delete(labelFib_2_618[1])
- if show_3
- labelFib_3 = label.new(labelPosition, fib_3, text="3 ("+tostring(fib_3,"####.##")+")", style=label.style_none, textcolor=fib_3_color, color=color.white, size=size.normal)
- label.delete(labelFib_3[1])
- if show_3_618
- labelFib_3_618 = label.new(labelPosition, fib_3_618, text="3.618 ("+tostring(fib_3_618,"####.##")+")", style=label.style_none, textcolor=fib_3_618_color, color=color.white, size=size.normal)
- label.delete(labelFib_3_618[1])
- if show_4_236
- labelFib_4_236 = label.new(labelPosition, fib_4_236, text="4.236 ("+tostring(fib_4_236,"####.##")+")", style=label.style_none, textcolor=fib_4_236_color, color=color.white, size=size.normal)
- label.delete(labelFib_4_236[1])
- if show_4_618
- labelFib_4_618 = label.new(labelPosition, fib_4_618, text="4.618 ("+tostring(fib_4_618,"####.##")+")", style=label.style_none, textcolor=fib_4_618_color, color=color.white, size=size.normal)
- label.delete(labelFib_4_618[1])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement