Пример #1
0
        private IEnumerable <Last> CreateLasts(HitTradesData hitTradesData)
        {
            string symbol = hitTradesData.Symbol;

            this.lastsTimeCache.TryGetValue(symbol, out long lastTimeTicks);

            foreach (var item in hitTradesData.Data)
            {
                DateTime dateTime = item.Timestamp;
                double   price    = (double)item.Price;
                double   size     = (double)item.Quantity;

                if (dateTime.Ticks <= lastTimeTicks)
                {
                    dateTime = new DateTime(++lastTimeTicks, DateTimeKind.Utc);
                }
                else
                {
                    lastTimeTicks = dateTime.Ticks;
                }

                yield return(new Last(symbol, price, size, dateTime));
            }

            this.lastsTimeCache[symbol] = lastTimeTicks;
        }
Пример #2
0
        private DayBar CreateDayBar(HitTradesData hitTradesData)
        {
            var lastTrade = hitTradesData.Data.Last();

            return(new DayBar(hitTradesData.Symbol, lastTrade.Timestamp)
            {
                Last = (double)lastTrade.Price,
                LastSize = (double)(lastTrade.Price * lastTrade.Quantity)
            });
        }