haOpen:=(Ref((O+H+L+C)/4,-1) + PREV)/2;
haCl:=((O+H+L+C)/4+haOpen+Max(H,haOpen)+Min(L,haOpen))/4;
period:= Input("SVAPO period :", 2, 20, 8);
cutoff:= Input("Minimum %o price change :",0.0,10,1);
devH:= Input("Standard Deviation High :", 0.1, 5, 1.5);
devL:= Input("Standard Deviation Low :", 0.1, 5, 1.3);
stdevper:= Input("Standard Deviation Period :", 1, 200, 100);
haC:=Tema(haCl,period/1.6);
vave:=Ref(Mov(V,period*5,S),-1);
vmax:=vave*2;
vc:=If(V<vmax,V,vmax);
vtr:=Tema(LinRegSlope(V,period),period);
SVAPO:=Tema(Sum(If(haC>(Ref(haC,-1)*(1+cutoff/1000)) AND
Alert(vtr>=Ref(vtr,-1),2), vc, If(haC<(Ref(haC,-1)*(1-cutoff/1000)) AND
Alert(vtr>Ref(vtr,-1),2),-vc,0)),period)/(vave+1),period);
devH*Stdev(SVAPO,stdevper);
-devL*Stdev(SVAPO,stdevper);
zeroref:=0;
zeroref;
SVAPO