rmwaddelljr

LBR PaintBars [LazyBear]

439 10 48
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 PRO 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 PRO 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
English
English (UK)
English (IN)
Deutsch
Français
Español
Italiano
Polski
Türkçe
Русский
Português
Bahasa Indonesia
Bahasa Melayu
ภาษาไทย
Tiếng Việt
日本語
한국어
简体
台灣
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