rmwaddelljr

LBR PaintBars [LazyBear]

523 10 67
I wanted to use the indicator LazyBear published and use StDev instead of ATR. This is my first time doing this so I'd appreciate suggestions. I will say this too; as helpful as indicators are in general (some more than others), the most important "indicator" you can use is the one between your ears. Controlling emotion, having a reliable plan followed with discipline. That gives one the decided "edge".
Remove from Favorite Scripts Add to Favorite Scripts
//
// @author LazyBear
// List of all my indicators:
// https://docs.google.com/document/d/15AGCufJZ8CIUvwFJ9W-IKns88gkWOKBCvByMEvm5MLo/edit?usp=sharing
//
study("LBR PaintBars [LazyBear]", overlay=true, shorttitle="LBRBARS_LB")
lbperiod = input (16, title="HL Length")
atrperiod = input (9, title= "ATR Length")
stdev = input(20, title= "St Dev Length")
mult = input (2.5, minval=0, title="ATR Multiplier")
bcf = input(true, title="Color LBR Bars?")
mnlb=input(false, title="Color non LBR Bars?" )
svb=input(false, title="Show Volatility Bands?")
mkb=input(true, title="Mark LBR bars above/below KC?")
lengthKC = input(20, minval=1, title="KC Length")
multKC = input(1.5, title="KC Multiplier")
useTR = input(true, title="Use TR for KC")
skb=input(false, title="Show KC?")
calc_stdev(source, useTR, length, mult) =>
    ma = ema(source, length)
    range = useTR ? tr : high - low
    rangema = ema(range, length)
    upper = ma + rangema * mult
    lower = ma - rangema * mult
    [upper, ma, lower]
 
[u,b,l] = calc_stdev(close, useTR, lengthKC, multKC)
uk=plot(skb?u:na, color=gray, linewidth=1, title="KC Upper"), lk=plot(skb?l:na, color=gray, linewidth=1, title="KC Lower")
fill(uk,lk,gray), plot(skb?b:na, style=circles, color=orange, linewidth=2, title="KC Basis")
kct=mkb ? (close >= u or close <= l) : false
aatr = mult * sma(stdev(close,atrperiod), atrperiod)
b1 = lowest(low, lbperiod) + aatr
b2 = highest(high, lbperiod) - aatr
uvf =  (close > b1 and close > b2)
lvf = (close < b1 and close < b2 )
uv = plot(svb?b2:na, style=line, linewidth=3, color=red, title="UpperBand")
lv = plot(svb?b1:na, style=line, linewidth=3, color=green, title="LowBand")
bc = (bcf ? kct?fuchsia:(uvf ? lime : lvf ? maroon : mnlb?blue:na) : (not (uvf or lvf) and mnlb ? blue : na ) )
barcolor(bc)
calc_stdev() is making use of KC calculation. You want to change it to BB calculation.

ma=sma(src, length)
upper=ma + mult*stdev(src, length)
lower=ma - mult*stdev(src,length)


Reply
rmwaddelljr LazyBear
Here's what I did:
ma = sma(src, length)
upper = ma + mult*stdev(src,length)
lower = ma - mult*stdev(src,length)


Getting "Array item type cannot be cast to series or ColorSeries types"
Reply
LazyBear rmwaddelljr
can u post the whole code? use pastebin, TV will filter lot of stments
Reply
rmwaddelljr LazyBear
//
// @author LazyBear
// List of all my indicators:
// https://docs.google.com/document/d/15AGCufJZ8CIUvwFJ9W-IKns88gkWOKBCvByMEvm5MLo/edit?usp=sharing
//
study("LBR PaintBars ", overlay=true, shorttitle="LBRBARS_LB")
lbperiod = input (16, title="HL Length")
atrperiod = input (9, title= "ATR Length")
stdev = input(20, title= "St Dev Length")
mult = input (2.5, minval=0, title="ATR Multiplier")
bcf = input(true, title="Color LBR Bars?")
mnlb=input(false, title="Color non LBR Bars?" )
svb=input(false, title="Show Volatility Bands?")
mkb=input(true, title="Mark LBR bars above/below KC?")
lengthKC = input(20, minval=1, title="KC Length")
multKC = input(1.5, title="KC Multiplier")
useTR = input(true, title="Use TR for KC")
skb=input(false, title="Show KC?")
calc_stdev(source, useTR, length, mult) =>
ma = sma(src, length)
upper = ma + mult*stdev(src,length)
lower = ma - mult*stdev(src,length)


= calc_stdev(close, useTR, lengthKC, multKC)
uk=plot(skb?u:na, color=gray, linewidth=1, title="KC Upper"), lk=plot(skb?l:na, color=gray, linewidth=1, title="KC Lower")
fill(uk,lk,gray), plot(skb?b:na, style=circles, color=orange, linewidth=2, title="KC Basis")
kct=mkb ? (close >= u or close <= l) : false
aatr = mult * sma(stdev(close,atrperiod), atrperiod)
b1 = lowest(low, lbperiod) + aatr
b2 = highest(high, lbperiod) - aatr
uvf = (close > b1 and close > b2)
lvf = (close < b1 and close < b2 )
uv = plot(svb?b2:na, style=line, linewidth=3, color=red, title="UpperBand")
lv = plot(svb?b1:na, style=line, linewidth=3, color=green, title="LowBand")
bc = (bcf ? kct?fuchsia:(uvf ? lime : lvf ? maroon : mnlb?blue:na) : (not (uvf or lvf) and mnlb ? blue : na ) )
barcolor(bc)
Reply
rmwaddelljr rmwaddelljr
where is "pastebin"?
Reply
rmwaddelljr rmwaddelljr
http://pastebin.com/WA6eZbjn

Figured it out:)
Reply
LazyBear rmwaddelljr
use "source" instead of "src" . Updated code:

ma = sma(source, length)
upper = ma + mult*stdev(source,length)
lower = ma - mult*stdev(source,length)
Reply
rmwaddelljr LazyBear
Still getting: "Array item type cannot be cast to series or ColorSeries types" as an error code
Reply
rmwaddelljr rmwaddelljr
Can't find what an "array" item is.
Reply
rmwaddelljr rmwaddelljr
Found my error.
Reply
EN English
EN English (UK)
EN English (IN)
DE Deutsch
FR Français
ES Español
IT Italiano
PL Polski
TR Türkçe
RU Русский
PT Português
ID Bahasa Indonesia
MS Bahasa Melayu
TH ภาษาไทย
VI Tiếng Việt
JA 日本語
KO 한국어
ZH 简体中文
ZH 繁體中文
AR العربية
Home Stock Screener Forex Signal Finder Cryptocurrency Signal Finder Economic Calendar How It Works Chart Features House Rules Moderators Website & Broker Solutions Widgets Stock Charting Library Feature Request Blog & News FAQ Help & Wiki Twitter
Profile Profile Settings Account and Billing My Support Tickets Contact Support Ideas Published Followers Following Private Messages Chat Sign Out