А судя по стэктрэйсу - ошибка вовсе не при логировании:
Цитата:
в Ecng.Collections.SynchronizedSet`1.System.Collections.Generic.IList<T>.get_Item(Int32 index)
в Ecng.Collections.BaseCollection`1.get_Item(Int32 index)
в SampleSma.SmaStrategy.OnNewMyTrades(IEnumerable`1 trades) в D:\StockSharp_3.2.7_Sources\SmaStrategy.cs:строка 217
судя по всему - это что-то ваше, внутреннее. в исходниках в SmaStrategy.cs заметно меньше строчек :)
Да, пример переделанный, Александр, вы прям Шерлок Хомс :) я добавил в OnNewMyTrades обработку защитных стратегий. Так, а в чем ошибка, я тогда не понимаю...
Как я выяснил сейчас, ошибка возникает и в строке
Code
AddLog(StrategyErrorStates.None, "Удаление стратегии {0}", base.ChildStrategies[i].Name);
.
и в
Code
base.ChildStrategies.RemoveAt(i);
Метод есть, но он не поддерживается... При чем я помню, что в какой-то версии S# этот код работал...