Esempio n. 1
0
        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]);
            }
        }