• Тинькофф Банк-лучшие банковские продукты еще выгоднее
    Выбирайте продукт от банка Тинькофф
  • Уважаемые форумчане, друзья и посетители!
    Поступило предложение ( ссылка на обсуждение ) на сбор средств поддержания форума в рабочем состоянии с 1 июня ( оплата хостинга, бэкап ежедневный на другой хостинг и тд), отчетность будет предоставляться ежемесячно. Пока на ЮMoney ( яндекс деньги), доступно картой перевод, далее добавлю другие способы. Сумму перевода указывайте на ваш выбор исходя из своих возможностей.
    Форум продолжает свою работу благодаря Вашим пожертвованиям.

Дублирование строк при записи из onmarketdata

facepalm_by

New Member
NinjaTrader
Есть код где формирую строку для записи: "время";"цена";"объем аск";"объем бид"
Код:
protected override void OnMarketData(MarketDataEventArgs e)
        {   
   
            if (e.MarketDataType == MarketDataType.Ask)AskPrice = e.Price;           
            if (e.MarketDataType == MarketDataType.Bid)BidPrice = e.Price;           
            if (e.MarketDataType == MarketDataType.Last)LastPrice = e.Price;           
            if (e.MarketDataType == MarketDataType.Last)LastVolume = e.Volume;           
            if (e.MarketDataType != MarketDataType.Last)return;
           
            if((LastPrice >= AskPrice) && (AskPrice!=0))
                line = e.Time+";"+LastPrice+";"+LastVolume+";0";
            else if((LastPrice <= BidPrice) && (BidPrice!=0))
                line = e.Time+";"+LastPrice+";0;"+LastVolume;
           
            WriteData(line);    
           
        }

есть функция для записи
Код:
        void WriteData(string line)
        {
            try
            {
                StreamWriter sw = new StreamWriter(file_path,true);
                sw.WriteLine(line);
                sw.Close();
            }
            catch(Exception e)
            {
                ....
            }
            finally
            {
                ....
            }   
        }

в итоге в файл приходят записи и все гут, но только они дублируются всегда, т.е. если взять секундный, минутный объем (временной интервал), то на выходе идет объем в два раза больше. почему?
 
Назад
Верх Низ