/// <summary>
        /// Вселенское зло спит тут!
        /// </summary>
        /// <remarks>
        /// Обязательно!!!!! Необходимо соблюсти порядок столбцов в квике!
        /// Номер,Дата, Время, Класс Код, Код инстурмента, цена, кол-во!
        /// </remarks>
        /// <returns></returns>
        internal static void GetDeals(byte[] rawData)
        {
            if (data == null)
            {
                return;
            }

            int rowsNumber = BitConverter.ToInt16(new byte[] { rawData[4], rawData[5] }, 0);

            XLTableTyped table = new XLTableTyped(rawData);

            for (int i = 0; i < rowsNumber; i++)
            {
                double number = -1;
                try
                {
                    table.MoveNext();
                    number = (double)table.Current;
                    table.MoveNext();
                    string DateStr = (string)table.Current;
                    table.MoveNext();
                    string TimeStr = (string)table.Current;
                    table.MoveNext();
                    string MarketStr = (string)table.Current;
                    table.MoveNext();
                    string CodeStr = (string)table.Current;
                    table.MoveNext();
                    double price = (double)table.Current;
                    table.MoveNext();
                    double volume = (double)table.Current;

                    IBar tick = new OpenWealth.Simple.Tick(ParseDateTimeWithCache(String.Concat(DateStr, " ", TimeStr)), (int)number, (float)price, (int)volume);

                    l.Debug("GetDeals Tick " + MarketStr + "." + CodeStr + " " + tick.ToString());
                    // TODO избавится от null
                    data.GetBars(data.GetSymbol(MarketStr, CodeStr), tickScale).Add(null, tick);
                }
                catch (Exception e)
                {
                    l.Error("Exception в GetDeals, при обработке сделки номер " + number, e);
                }
            }
        }
        /// <summary>
        /// Вселенское зло спит тут!
        /// </summary>
        /// <remarks>
        /// Обязательно!!!!! Необходимо соблюсти порядок столбцов в квике!
        /// Номер,Дата, Время, Класс Код, Код инстурмента, цена, кол-во!
        /// </remarks>
        /// <returns></returns>
        internal static void GetDeals(byte[] rawData)
        {
            if (data == null)
                return;

            int rowsNumber = BitConverter.ToInt16(new byte[] { rawData[4], rawData[5] }, 0);

            XLTableTyped table = new XLTableTyped(rawData);
            for (int i = 0; i < rowsNumber; i++)
            {
                double number = -1;
                try
                {
                    table.MoveNext();
                    number = (double)table.Current;
                    table.MoveNext();
                    string DateStr = (string)table.Current;
                    table.MoveNext();
                    string TimeStr = (string)table.Current;
                    table.MoveNext();
                    string MarketStr = (string)table.Current;
                    table.MoveNext();
                    string CodeStr = (string)table.Current;
                    table.MoveNext();
                    double price = (double)table.Current;
                    table.MoveNext();
                    double volume = (double)table.Current;

                    IBar tick = new OpenWealth.Simple.Tick(ParseDateTimeWithCache(String.Concat(DateStr, " ", TimeStr)), (int)number, (float)price, (int)volume);

                    l.Debug("GetDeals Tick " + MarketStr + "." + CodeStr + " " + tick.ToString());
                    // TODO избавится от null
                    data.GetBars(data.GetSymbol(MarketStr, CodeStr), tickScale).Add(null, tick);
                }
                catch (Exception e)
                {
                    l.Error("Exception в GetDeals, при обработке сделки номер " + number, e);
                }
            }
        }