var ftATR2(int ATRPeriod)
{
var* tr = zalloc(ATRPeriod*sizeof(var));
int i = 0;
int ElementIDX = 0;
var MyTrueRange;
while(ElementIDX < ATRPeriod)
{
MyTrueRange = max(priceHigh(0+i),priceClose(1+i))-min(priceLow(0+i),priceClose(1+i));
if (MyTrueRange != 0)
{
tr[ElementIDX] = MyTrueRange;
ElementIDX++;
}
i++;
if(i > 10*ATRPeriod) break;
}
var myATR = Sum(tr, ElementIDX) / ElementIDX;
if(!Init && !is(LOOKBACK) && myATR == 0) printf("\nftATR is zero! This shouldn't happen!");
return(myATR);
}