private ICustomData <double, double> CreateMA(HistoricalData currentData, MAMode MAMode, int period, string name, double value)
        {
            this.AppendMa(currentData, MAMode, period, name);

            BuiltInIndicatorDataSeries[0].GetValue(value);

            return(BuiltInIndicatorDataSeries[0]);
        }
        private void AppendMa(HistoricalData currentData, MAMode MAMode, int period, string name)
        {
            switch (MAMode)
            {
            case MAMode.SMA:
                BuiltInIndicatorDataSeries.Insert(0, new SMA(period, name));
                break;

            case MAMode.EMA:
                BuiltInIndicatorDataSeries.Insert(0, new EMA(period, name));
                break;

            case MAMode.SMMA:
                BuiltInIndicatorDataSeries.Insert(0, new SMMA(period, name));
                break;

            case MAMode.LWMA:
                BuiltInIndicatorDataSeries.Insert(0, new LWMA(period, name));
                break;
            }
            (BuiltInIndicatorDataSeries[0] as DataSeries <double, double>).GetHistoricalData(currentData);
        }
        public ICustomData <double, double> CreateOrUpdateMA(double value, int period, MAMode mode, HistoricalData historicalData)
        {
            ICustomData <double, double> result;

            string name = mode.ToString() + period.ToString();

            int findResult = BuiltInIndicatorDataSeries.FindIndex(x => x.Name == name);

            if (findResult != -1)
            {
                BuiltInIndicatorDataSeries[findResult].GetValue(value);
                result = BuiltInIndicatorDataSeries[findResult];
            }
            else
            {
                result = CreateMA(historicalData, mode, period, name, value);
            }

            return(result);
        }
        private ICustomData <double, double> CreateAndFillMA(HistoricalData currentData, MAMode MAMode, int period, PriceType type, string name)
        {
            this.AppendMa(currentData, MAMode, period, name);

            FillMA(currentData, type);

            BuiltInIndicatorDataSeries[0].GetValue(currentData.GetValue(type, 0));

            return(BuiltInIndicatorDataSeries[0]);
        }
Example #5
0
        public ICustomData <double, double> Mov(double value, int period, MAMode mode)
        {
            var result = DataSeriesManager.CreateOrUpdateMA(value, period, mode, HistoryDataSeries);

            return(result);
        }
Example #6
0
        public ICustomData <double, double> CreateOrUpdateMA(PriceType type, int period, MAMode mode, HistoricalData historicalData)
        {
            ICustomData <double, double> result;

            string name = mode.ToString() + period.ToString();

            int findResult = MaDataSeries.FindIndex(x => x.Name == name);

            if (findResult != -1)
            {
                MaDataSeries[findResult].GetValue(historicalData.GetValue(type, 0));
                result = MaDataSeries[findResult];
            }
            else
            {
                result = CreateAndFillMA(historicalData, mode, period, type, name);
            }

            return(result);
        }
Example #7
0
        private ICustomData <double, double> CreateAndFillMA(HistoricalData currentData, MAMode MAMode, int period, PriceType type, string name)
        {
            switch (MAMode)
            {
            case MAMode.SMA:
                MaDataSeries.Insert(0, new SMA(period, name));
                break;

            case MAMode.EMA:
                MaDataSeries.Insert(0, new EMA(period, name));
                break;

            case MAMode.SMMA:
                MaDataSeries.Insert(0, new SMMA(period, name));
                break;

            case MAMode.LWMA:
                MaDataSeries.Insert(0, new LWMA(period, name));
                break;
            }
            (MaDataSeries[0] as DataSeries <double, double>).GetHistoricalData(currentData);

            FillMA(currentData, type);

            MaDataSeries[0].GetValue(currentData.GetValue(type, 0));

            return(MaDataSeries[0]);
        }