xel_arjona

GEOMETRIC STANDARD DEVIATION BANDS v1 by @XeL_Arjona

GEOMETRIC STANDARD DEVIATION BANDS
Ver.1 By Ricardo M Arjona @XeL_Arjona

DISCLAIMER:

The Following indicator/code IS NOT intended to be a formal investment advice or recommendation by the author, nor should be construed as such. Users will be fully responsible by their use regarding their own trading vehicles/assets.

The embedded code and ideas within this work are FREELY AND PUBLICLY available on the Web for NON LUCRATIVE ACTIVITIES and must remain as is.


WHAT'S THIS?

This IS NOT the wheel "Re-Invention"... This is exactly what the name says: A pair of Envelope Bands to measure "volatility", constructed at statistical relation from within price series and their Rolling back MEAN (Simple Moving Average). YES, What Mr. Bollinger did and put it's name to this simple, cleaver and popular formula.

This time, I took the time to make another simple mod, but seems to me to be quite functional in REAL VOLATILE assets like in the example chart: TO USE THEIR GEOMETRIC MODE!!

Cheers!
Any feedback or public modification(s) are quite welcome to the community....!

@XeL_Arjona
Apr 28 2016

オープンソーススクリプト

TradingViewの精神に則り、このスクリプトの作者は、トレーダーが理解し検証できるようにオープンソースで公開しています。作者に敬意を表します!無料で使用することができますが、このコードを投稿で再利用するには、ハウスルールに準拠する必要があります。 お気に入りに登録してチャート上でご利用頂けます。

免責事項

これらの情報および投稿は、TradingViewが提供または保証する金融、投資、取引、またはその他の種類のアドバイスや推奨を意図したものではなく、またそのようなものでもありません。詳しくは利用規約をご覧ください。

チャートでこのスクリプトを利用したいですか?
//@version=2
study("GEOMETRIC STANDARD DEVIATION BANDS v1 by @XeL_Arjona", shorttitle="gSDB", overlay=true)
src = input(title="Candle Source:",type=source,defval=close)
p   = input(title="Rollback Mean:",defval=21)
s   = input(title="Deviation Envelope:",defval=2)
et  = input(title="EnvTYPE: [1]Cl | [3]Avg | [3]HiLo:",defval=2,minval=1,maxval=3)
// VARIABLES
cl = log(src)
hi = iff(et==1, log(src), iff(et==2,log(high), log(avg(src,high))))
lo = iff(et==1, log(src), iff(et==2,log(low), log(avg(src,low))))
// FUNCTIONS
// Standard Deviation from Custom Mid Point (Custom Bollinger)
cStdDev(array,mid,lb,mult,dir) =>
    std = stdev(array,lb)
    d = dir ? 1 : -1
    band = mid + d * mult * std
mean    = exp(sma(cl,p))
up      = exp(cStdDev(hi,sma(hi,p),p,s,true))
dn      = exp(cStdDev(lo,sma(lo,p),p,s,false))
// PLOT DIRECTIVES
plot(mean,color=blue,transp=0)
uband = plot(up,color=blue,transp=55)
dband = plot(dn,color=blue,transp=55)
fill(uband,dband,color=navy,transp=96)