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)