多个创建类后计算错误

时间:2014-08-31 02:38:03

标签: android

我已经使用下面的代码来计算线性加权移动平均线的值,但是当我尝试通过创建新类重新计算新的数据集时,结果是错误的。

第一次打电话我得到了正确的价值但是第二次打电话是错误的。

public class LWMA
{
BarChart barChart;
int maPeriod;
public double value[];

public LWMA(int mp,BarChart bc){
    barChart = bc;
    maPeriod = mp;

    value = new double[barChart.barCount];
    for (int i = 0; i < barChart.barCount - 1; i++){
        value[i] = 0;
    }
    calculateIndicator();
}   // Ending L

public boolean calculateIndicator(){
    double sumPrice;
    double sumDivider;
    sumPrice = 0;
    sumDivider = 0;

    for ( int i = 1; i <= maPeriod; i++) 
        sumDivider += i;

    for (int i = 0; i < barChart.barCount; i++){
        value[i] = 0f;
        if (i >= maPeriod){
            sumPrice = 0f;
            for (int j = 0; j < maPeriod; j++){
                sumPrice += (barChart.barChartItem[i-j].getClosePrice()*(maPeriod-j));
            }   // loop j
            value[i] = sumPrice/sumDivider;
        }
        else{
            value[i] = 0f;
        }
    }   //loop i
    return true;
}

0 个答案:

没有答案