Hi Spirit:
I have tried to write a Variable Moving Average. This one too is not working.
What am I missing when it comes to series creation inside a function?
// NOT WORKING
///////////////////////////////////////////////////
///// Variable Moving Average /////
///////////////////////////////////////////////////
vars VariableMovingAverage (var* Input, int MAPeriod, int CMOPeriod)
{
int factor = (2/((MAPeriod)+1));
vars VI = series(abs((CMO(Input, CMOPeriod))/100) );
int m = max(MAPeriod, CMOPeriod);
vars v = series(0);
int i;
for (i=(NumBars-1); i>0; i--)
{
if (i>(NumBars-1-m))
v[i]= Input[i];
else
v[i] = (factor*VI[i]*Input[i]) + ((1-factor* VI[i])* v[i+1]);
} //end of loop
return v;
} //end of function