Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ____ __ ___ ________ ___________ ___________ __ ____ ___
- // / __ )/ / / | / ____/ //_/ ____/ |/_ __< / // / / __ |__ \
- // / __ / / / /| |/ / / ,< / / / /| | / / / / // /_/ / / __/ /
- // / /_/ / /___/ ___ / /___/ /| / /___/ ___ |/ / / /__ __/ /_/ / __/
- // /_____/_____/_/ |_\____/_/ |_\____/_/ |_/_/ /_/ /_/ \____/____/
- // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
- // © blackcat1402
- //@version=5
- indicator('[blackcat] L2 Vitali Apirine Weekly & Daily Stochastics', overlay=false, max_bars_back=5000, max_labels_count=500)
- //Indicator: WeeklyAndDailyStochastic
- // TASC Sep 2018
- // Weekly And Daily Stochastics
- // Vitali Apirine
- //inputs:
- DailyLength = input(14, title=' DailyLength ')
- WeeklyLength = input(70, title=' v ')
- DailySmoothingLength = input(3, title=' DailySmoothingLength ')
- WeeklySmoothingLength = input(3, title=' WeeklySmoothingLength ')
- OverBought = input(80, title=' OverBought ')
- OverSold = input(20, title=' OverSold ')
- //variables:
- StochD = 0.0
- StochW = 0.0
- SmoothD = 0.0
- SmoothW = 0.0
- MidLine = (OverBought + OverSold) * .5
- inp = input(close)
- //Algo
- StochD := (inp - ta.lowest(low, DailyLength)) / (ta.highest(high, DailyLength) - ta.lowest(low, DailyLength)) * 100
- StochW := (inp - ta.lowest(low, WeeklyLength)) / (ta.highest(high, WeeklyLength) - ta.lowest(low, WeeklyLength)) * 100
- SmoothD := ta.ema(StochD, DailySmoothingLength)
- SmoothW := ta.ema(StochW, WeeklySmoothingLength)
- //PLOT courtesy of @animecummer
- var grad = array.new_color(na)
- if barstate.isfirst
- array.push(grad, color.gray)
- array.push(grad, #ff00ff)
- array.push(grad, #ff00f7)
- array.push(grad, #ff00ef)
- array.push(grad, #ff00e8)
- array.push(grad, #ff00e0)
- array.push(grad, #ff00d8)
- array.push(grad, #ff00d1)
- array.push(grad, #ff00ca)
- array.push(grad, #ff00c2)
- array.push(grad, #ff00bb)
- array.push(grad, #ff00b4)
- array.push(grad, #ff00ae)
- array.push(grad, #ff00a7)
- array.push(grad, #ff00a1)
- array.push(grad, #ff009a)
- array.push(grad, #ff0094)
- array.push(grad, #ff008e)
- array.push(grad, #ff0088)
- array.push(grad, #ff0383)
- array.push(grad, #ff147d)
- array.push(grad, #ff1f78)
- array.push(grad, #ff2773)
- array.push(grad, #ff2e6e)
- array.push(grad, #ff356a)
- array.push(grad, #ff3b65)
- array.push(grad, #ff4061)
- array.push(grad, #ff455d)
- array.push(grad, #ff4959)
- array.push(grad, #ff4e55)
- array.push(grad, #ff5252)
- array.push(grad, #ff5a4e)
- array.push(grad, #ff6349)
- array.push(grad, #ff6b44)
- array.push(grad, #ff743f)
- array.push(grad, #ff7d3a)
- array.push(grad, #ff8634)
- array.push(grad, #ff8f2e)
- array.push(grad, #ff9827)
- array.push(grad, #ffa120)
- array.push(grad, #ffab17)
- array.push(grad, #ffb40b)
- array.push(grad, #ffbe00)
- array.push(grad, #ffc700)
- array.push(grad, #ffd000)
- array.push(grad, #ffda00)
- array.push(grad, #ffe300)
- array.push(grad, #ffec00)
- array.push(grad, #fff600)
- array.push(grad, #ffff00)
- array.push(grad, #ffff00)
- array.push(grad, #eefd1d)
- array.push(grad, #ddfb2d)
- array.push(grad, #ccf83a)
- array.push(grad, #bcf546)
- array.push(grad, #adf150)
- array.push(grad, #9eee59)
- array.push(grad, #8fea62)
- array.push(grad, #81e66a)
- array.push(grad, #74e172)
- array.push(grad, #66dc79)
- array.push(grad, #5ad87f)
- array.push(grad, #4dd385)
- array.push(grad, #41cd8a)
- array.push(grad, #36c88f)
- array.push(grad, #2cc393)
- array.push(grad, #24bd96)
- array.push(grad, #1fb798)
- array.push(grad, #1eb299)
- array.push(grad, #21ac9a)
- array.push(grad, #26a69a)
- array.push(grad, #26a99d)
- array.push(grad, #26aca0)
- array.push(grad, #26afa3)
- array.push(grad, #26b1a6)
- array.push(grad, #25b4aa)
- array.push(grad, #25b7ad)
- array.push(grad, #25bab0)
- array.push(grad, #24bdb3)
- array.push(grad, #24c0b6)
- array.push(grad, #24c3ba)
- array.push(grad, #23c6bd)
- array.push(grad, #23c9c0)
- array.push(grad, #22ccc4)
- array.push(grad, #21cfc7)
- array.push(grad, #20d2ca)
- array.push(grad, #20d5ce)
- array.push(grad, #1fd8d1)
- array.push(grad, #1edbd4)
- array.push(grad, #1cded8)
- array.push(grad, #1be1db)
- array.push(grad, #1ae4df)
- array.push(grad, #18e7e2)
- array.push(grad, #17eae6)
- array.push(grad, #15ede9)
- array.push(grad, #12f0ed)
- array.push(grad, #10f3f0)
- array.push(grad, #0df6f4)
- array.push(grad, #09f9f8)
- array.push(grad, #04fcfb)
- array.push(grad, #00ffff)
- rsival1 = math.round(ta.rsi(SmoothD, 20))
- gradcolor1 = array.get(grad, rsival1)
- rsival2 = math.round(ta.rsi(SmoothW, 20))
- gradcolor2 = array.get(grad, rsival2)
- Plot1 = plot(SmoothD, 'Daily', color=gradcolor1, linewidth=1)
- Plot2 = plot(SmoothW, 'Weekly', color=gradcolor2, linewidth=3)
- Plot3 = plot(OverBought, 'OverBought', color=color.new(color.red, 0))
- Plot4 = plot(OverSold, 'OverSold', color=color.new(color.green, 0))
- Plot5 = plot(MidLine, 'Mid', color=color.new(color.white, 0))
Advertisement