# Variable Moving Average Bands [LazyBear]

4991 lượt xem
4991
VMA Bands are ATR bands with VMA as its centre. For a description of options, refer to my VMA post:
I have moved VMA calculation in to a separate function. Feel free to use calc_vma() in your scripts. For more MA calculation function ( KAMA , VIDYA and others), refer to my complete list of indicators below.

Wish you all a very prosperous New year. Hope these indicators make you all more money this year too :)

List of my other indicators:
- Chart:
//
// @author LazyBear
// List of all my indicators:
//
study(title="Variable Moving Average Bands [LazyBear]", shorttitle="VMABANDS_LB", overlay=true)
src=close
l=input(6, title="VMA Length")
bm=input(1.5, title="Bands Multipler")
std=input(false, title="Show Trend Direction")
bc=input(false, title="Color bars based on Trend")
calc_vma(src, l) =>
k = 1.0/l
pdm = max((src - src[1]), 0)
mdm = max((src[1] - src), 0)
pdmS = ((1 - k)*nz(pdmS[1]) + k*pdm)
mdmS = ((1 - k)*nz(mdmS[1]) + k*mdm)
s = pdmS + mdmS
pdi = pdmS/s
mdi = mdmS/s
pdiS = ((1 - k)*nz(pdiS[1]) + k*pdi)
mdiS = ((1 - k)*nz(mdiS[1]) + k*mdi)
d = abs(pdiS - mdiS)
s1 = pdiS + mdiS
iS = ((1 - k)*nz(iS[1]) + k*d/s1)
hhv = highest(iS, l)
llv = lowest(iS, l)
d1 = hhv - llv
vI = (iS - llv)/d1
vma=(1 - k*vI)*nz(vma[1]) + k*vI*src
vma

vma=calc_vma(src, l)
o=bm*atr(l)
uband=vma+o
lband=vma-o
vmaC=(vma > vma[1]) ? green : (vma<vma[1]) ? red : (vma==vma[1]) ? blue : black
plot(vma, color=std?vmaC:black, linewidth=3, title="VMA")
ubx=plot(uband, color=gray, linewidth=2, title="UpperBand")
lbx=plot(lband, color=gray, linewidth=2, title="LowerBand")
fill(ubx,lbx, color=black, transp=95)
barcolor(bc?vmaC:na)
Thanks! Very good tool. Great work.
Phản hồi
sudhir.mehta
Thanks.
Phản hồi
Very nice, indebted to yours, ucsgears and ChrisMoody's scripts.
Great work, as usual.
Have you used these, or just coding them for fun?
Phản hồi
IvanLabrie
I do use them occasionally to get a different feel, but usually stick to only a few (1 momentum & 1 volume).

Each new indicator teaches me something new about price though, so mostly I code to learn :)
Phản hồi
LazyBear
Very nice, I've been trying a similar approach heh, but my coding is subpar. :p
Phản hồi
O-o wow.....
Phản hồi