Help understand if this code will repaint

 
Am trying to create a tma tma oscillator by using the difference between two tma but my tma will use custom price rather than mql4 main price such as close open etc. But i don't know if.this.will cause heavy repainting or.if it will just recalculate at centerFactor =0



double iCtmaCustom(double &series[], int halfLength, int iBar)
{
    int j, k;
    int forward = int(halfLength * CenterFactor);
    double sum = (halfLength + 1) * series[iBar];
    double sumw = (halfLength + 1);

    for(j = 1, k = halfLength; j <= halfLength; j++, k--)
    {
        if(j <= forward && iBar + j < ArraySize(series))
        {
            sum += k * series[iBar + j];
            sumw += k;
        }
        if(j <= iBar)
        {
            sum += k * series[iBar - j];
            sumw += k;
        }
    }
    return sum / sumw;
}

// --- PriceFast EMA
    ArrayResize(PriceFast, Bars);
    for(int pf = 0; pf < barsToRecalc; pf++)
        PriceFast[pf] = iMA(NULL, 0, PriceFastMA, 0, MODE_EMA, PRICE_CLOSE, pf);