Пример #1
0
        public bool AddTickData(TickData tickData)
        {
            if (tickData.dt.Hour == 9 && tickData.dt.Minute == 25)
            {
                return(true);
            }
            if (lsPartData == null)
            {
                lsPartData = new List <PartData>();
            }

            bool bNew = false;

            if (lsPartData.Count == 0)
            {
                bNew = true;
            }
            else
            {
                if (eLevel == ELevelType.EMonth)
                {
                    if (lsPartData[lsPartData.Count - 1].dt.Year < tickData.dt.Year)
                    {
                        bNew = true;
                    }
                    else if (lsPartData[lsPartData.Count - 1].dt.Month < tickData.dt.Month)
                    {
                        bNew = true;
                    }
                }
                else
                {
                    if (lsPartData[lsPartData.Count - 1].dt.AddMinutes(eLevel) < tickData.dt)
                    {
                        bNew = true;
                    }
                }
            }

            if (bNew)
            {
                PartData partData = new PartData(eLevel, tickData.dt);
                partData.AddData(tickData);
                lsPartData.Add(partData);
                if (lsPartData.Count > 205)
                {
                    lsPartData.RemoveAt(0);
                }
                mPartData = lsPartData[lsPartData.Count - 1];

                StrategyData newStrategyData = new StrategyData();
                lsStrategyData.Add(mStrategyData);
                if (lsStrategyData.Count > 5)
                {
                    lsStrategyData.RemoveAt(0);
                }
                mStrategyData = new StrategyData();
            }
            else
            {
                lsPartData[lsPartData.Count - 1].AddData(tickData);
            }

            return(true);
        }