- Katılım
- 23 Eki 2020
- Mesajlar
- 1,828
Exponential Moving Average - improved volume-adjusted, dynamic-period EMA with multiple output choice. |
|
Exponential Moving Average - Volume Adjusted { Volume adjusted, dynamic-period EMA v2.3 } { EMA periodicity shortens on high volume, increases on low volume } { (c) Copyright 2003-2004 Jose Silva } { http://www.metastocktools.com } pds:=Input("EMA periods",1,2520,21); VAvgPds:=Input("Volume sample periods", 2,252,21); x:=Input("use Open=1 High=2 Low=3 Close=4 Volume=5 P=6",1,6,4); shift:=1+Input("EMA vertical shift %", -100,100,0)/100; plot:=Input("EMA=1, Dyn EMA pds=2, Vol avg=3, Crossovers=4",1,4,1); x:=If(x=1,O,If(x=2,H,If(x=3,L,If(x=5,V,If(x=6,P,C))))); MovVol:=Mov(V,VAvgPds,E); VolRatio:=Min(V,MovVol)/Max(V,MovVol); VolAvg:=If(V>MovVol,2-VolRatio,VolRatio); multi:=.75/(.1+.32*VolAvg+.58*Power(VolAvg,4)); pds:=pds*multi; pds:=If(pds>Cum(IsDefined(x))-VAvgPds, Cum(IsDefined(x))-VAvgPds,pds); pds:=If(pds<1,1,pds); VlEma:=x*2/(pds+1)+PREV*(1-2/(pds+1)); VlEma:=VlEma*shift; signals:=Cross(x,VlEma)-Cross(VlEma,x); If(plot=2,pds,If(plot=3,VolAvg*50, If(plot=4,signals,VlEma))) |
Source / From: |