public override void PopulateExtendedIndicators(Entity.Indicator[] indArray) { double[] close = new double[indArray.Length]; double?[] rsiOutput = new double?[indArray.Length]; double?[] rsiOutput_Acc = new double?[indArray.Length]; for (int i = 0; i < indArray.Length; i++) { if (indArray[i].Close.HasValue) { close[i] = indArray[i].Close.Value; } else { close[i] = 0; } } RSI.Calculate(close, 2, rsiOutput); GenericHelper.GetAccumulate(rsiOutput, 2, 2, rsiOutput_Acc); for (int i = 0; i < indArray.Length; i++) { indArray[i].ExtendedIndicators = new Dictionary <string, double?>(); indArray[i].ExtendedIndicators.Add("RSI2", rsiOutput[i]); indArray[i].ExtendedIndicators.Add("RSI2ACC", rsiOutput_Acc[i]); } }