http://gyazo.com/59fcb2dac20a98d4ba6662205f91e9e1
Как видно из графика, теперь одновременный запрос живых данных и данных из Гидры, приводит к рассинхронизации совмещенных данных. Если запрашивать только через Transaq данные от брокера, то все ок.
Код для склейки:
candleManager = new CandleManager(new TradeCandleBuilderSource(connector));
var cbs = new TradeStorageCandleBuilderSource { StorageRegistry = storageRegistry };
candleManager.Sources.OfType<TimeFrameCandleBuilder>().Single().Sources.Add(cbs);
candleSeries = new CandleSeries(typeof(TimeFrameCandle), security, timeFrame);
candleSeries.ProcessCandle += Draw;
int numHistDays = DateTime.Today.DayOfWeek.ToString() == "Monday" ? 3 : 1;
candleManager.Start(candleSeries, DateTime.Now - TimeSpan.FromDays(numHistDays), DateTime.MaxValue);
コメント (5)
ログイン または アカウントを作成, コメントを残すにはログインまたは新規登録してください
получается, что данные не склеиваются, а дублируются - т.е. после выгрузки исторических данных из Transaq начинают поступать данные за максимально возможно запрошенный период + realtime. Но они идут сразу за историческими данными и история дублируется
на 4.2.2.16 все работает... каждый раз с замиранием сердца обновляюсь на новую версию...
Михаил, есть новости по данному багу?
4.2.3.8 - баг все еще остался. У меня одного такие проблемы или еще кто-нибудь с таким сталкивался?
Итак, проблема локализована:
При добавленном втором источнике, исторические данные из Transaq теряют временные метки и получают вместо них время подключения - отсюда и дублирование данных: http://gyazo.com/fedc9b4e8e50c0fda37320459aa40f26
более крупный скриншот: http://gyazo.com/cab28fb182a37cf3005bc71fd1038850
При этом, если не добавлять второй источник, то временные метки верные. Также после выгрузки данных - временные метки тоже верные.
Значит проблема возникает именно в момент подключения и склейки, когда S# понимает, что у него 2 источника данных