неочевидное поведение connector.RegisterTrades(security) при склеивании сделок
настройки коннектора
Код
var connector = new Connector(entityRegistry, storageRegistry);
connector.Load(new XmlSerializer<SettingsStorage>().Deserialize(ConnectorFile));
connector.StorageAdapter.DaysLoad = TimeSpan.FromDays(3);
connector.StorageAdapter.Load();
настройки серии
Код
var series = new CandleSeries(typeof(TimeFrameCandle), security, TimeSpan.FromMinutes(5))
{
BuildCandlesMode = BuildCandlesModes.Build,
};
Если склеивать сделки и при этом регистрировать инструмент на получение сделок
Код
_connector.RegisterTrades(security);
то свечи начинают лететь настолько разные, что график их рисовать оказывается

StackTrace " at #=qjo1gUXgKmuN5uY7ejrkPHHHHgXG9ynxyK2ZcVqHUr7OUwVfyRNfRNouDDTv1TiA9dW1dR_VV5Sk4fsw28x$bdA==.#=qKtG56yhix8wrhqoIKEH9zw==(ChartDrawData #=qneyXUuKvLf8tAUc6bCXqdQ==)\r\n at #=qEy4joBRK27utnGFPO_ga$VgzR76CgG7k2NGi8XfBX8CKqCvP9O9QjrsEcJU9CXJXt4spijcN5amkmshJzF0dJg==.#=qbQmP3pWgTwl9cgm85wMK5w==(ChartDrawData #=qneyXUuKvLf8tAUc6bCXqdQ==)\r\n at #=qEy4joBRK27utnGFPO_ga$VgzR76CgG7k2NGi8XfBX8CKqCvP9O9QjrsEcJU9CXJXt4spijcN5amkmshJzF0dJg==.#=qKtG56yhix8wrhqoIKEH9zw==(ChartDrawData #=qneyXUuKvLf8tAUc6bCXqdQ==)\r\n at StockSharp.Xaml.Charting.Chart.#=qWviAZh63oAFpycf16vW$MahjQX6muYVQb2ON5Nh5QhE=.#=qKtG56yhix8wrhqoIKEH9zw==(ChartDrawData #=qneyXUuKvLf8tAUc6bCXqdQ==)\r\n at StockSharp.Xaml.Charting.Chart.Draw(ChartDrawData data)\r\n at StockSharp.Xaml.Charting.ChartHelper.Draw(IChart chart, ChartCandleElement element, Candle candle)\r\n at EmulationRealtimeReal.MainWindow.Connector_CandleSeriesProcessing(CandleSeries arg1, Candle candle) in C:\\Users\\MozGa\\Documents\\Visual Studio 2017\\Projects\\WpfApp2\\EmulationRealtimeReal\\MainWindow.xaml.cs:line 260\r\n at StockSharp.Algo.Connector.RaiseCandleSeriesProcessing(CandleSeries series, Candle candle)\r\n at StockSharp.Algo.Connector.ProcessCandleMessage(CandleMessage message)\r\n at StockSharp.Algo.Connector.OnProcessMessage(Message message)" string
если не регистрировать инструмент на получение сделок
Код
//_connector.RegisterTrades(security);
То проблем не возникает, и сделки приходят и свечи строятся. Тоесть при CandleSeries с BuildCandlesMode = BuildCandlesModes.Build, регистрировать инструмент на получение сделок не надо, а в других случаях надо. Как то не очевидно.
Чтобы понять что проблема в RegisterTrades ушло много времени.
Непонятно баг или фича.