Skip to main content

ATR Bands for Metastock

martin3 over 15 years ago Metastock

  • Rating:
    0 / 5 (Votes 0)
  • Tags:
    metastock, atr, bands

ATR bands, superior volatility bands – with ATR, Bollinger, multi-composite choices and parameters.

By Jose Silva

Screenshots

Files

Indicator / Formula

Copy & Paste Friendly

MetaStock -> Tools -> Indicator Builder -> New -> Copy & paste complete formula


{ATR/Bollinger composite bands v2.0

Copyright © 2004-2009 Jose Silva.
For personal use only.
All code remains the property of Jose Silva.
http://www.metastocktools.com }

{Inputs}
type:=Input("Type:  [1]ATR,  [2]BB,  [3]Composite1,  [4]Comp2",1,4,1);
pds:=Input("BB/ATR periods",1,252,21);
dv:=Input("BB/ATR deviations",0,10,2);

{Bollinger bands}
BBup:=BBandTop(C,pds,S,dv);
BBdw:=BBandBot(C,pds,S,dv);

{ATR bands - MetaStockTools.com version}
pds:=pds/2;
ATup:=Mov(C,pds,TRI)+Mov(ATR(1),pds,TRI)*dv;
ATdw:=Mov(C,pds,TRI)-Mov(ATR(1),pds,TRI)*dv;

{Composite bands 1:
  ATR/BB bands closest to price bars}
HiUp:=Max(ATup,BBup);
LoUp:=Min(ATup,BBup);
HiDw:=Max(ATdw,BBdw);
LoDw:=Min(ATdw,BBdw);
CompUp1:=LoUp;
CompDw1:=HiDw;

{Composite bands 2:
  ATR/BB bands closest to price bars,
  and not touching price bars where possible}
CompUp2:=If(LoUp<H,HiUp,LoUp);
CompDw2:=If(HiDw>L,LoDw,HiDw);

{Final bands}
up:=If(type=1,ATup,If(type=2,BBup,
 If(type=3,CompUp1,CompUp2)));
dw:=If(type=1,ATdw,If(type=2,BBdw,
 If(type=3,CompDw1,CompDw2)));

{Plot bands on price chart}
up;dw

0 comments

Leave Comment

Please login here to leave a comment.