Баг в EmulationTrader
Atom
15.03.2013


Обнаружил очень неприятный баг: при попытке начать тестирование на очередном дне тестер внезапно останавливается и "умирает".
Решил загрузить этот день через storageRegistry.GetMarketDepthStorage, в результате ошибка:

"Object reference not set to an instance of an object." в

" at #=q06L9EwbuuY2w$4UYtqOemPzNMCbJtdGXVz4rJTN3rWod1JrKftSdqprmBXkEbf8R.#=qU$JnocjnAN7ETbqxfosfzQ==(#=qmSpGmgb$JBbbTfeW$ZFZDzT5qJdb4Bw0rOj47TBIGgXHNHncNGBdrn1Ey$enF8DBdVK_XN$8LayOYgem$Eld7g== #=qaRLM_L3A2jBavJveiFyIyg==)
at #=qmSpGmgb$JBbbTfeW$ZFZDzT5qJdb4Bw0rOj47TBIGgXHNHncNGBdrn1Ey$enF8DBdVK_XN$8LayOYgem$Eld7g==.MoveNext()
at StockSharp.Algo.Storages.StorageHelper.#=qn9tdtGF$$_6xxrTk0UA53_CNcq3W6tpjnohQoroXo8c=.#=qaEmVxOCcTR$SXINjfOphhRFRPoYbcy7$WxuArYa1Mgo=.#=qfpho6f3G0L0DuYSJ8MW1rc0wBxlTph6Kjgv03k21A06phi_MGIqhGYDZlML5rbG_()
at System.Collections.Generic.List`1..ctor(IEnumerable`1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)"

Посмотрел сам файл со стаканами этого дня, выглядит нормально, размер не нулевой. И таких файлов у меня очень много, тестировать не возможно. Версия 4.1.8



Спасибо:


Mikhail Sukhov

Фотография
Дата: 15.03.2013
Ответить


Сложно воспроизвести. Можно как-то файл выложить с историей по 1 дню, на котором ругается? Плюс мини код привести.

Спасибо:

FiNick

Фотография
Дата: 18.03.2013
Ответить


Код
var storageRegistry = new StorageRegistry();
((LocalMarketDataDrive)storageRegistry.DefaultDrive).Path = @"C:\Storage";
var time = new DateTime(2013, 03, 14);            
var opt = new Security() { Id = "RI150000BP3@RTS" };
var list = storageRegistry.GetMarketDepthStorage(opt).Load(time, time.AddDays(1)).ToList();


Вот! 15ое число грузится нормально, на 14ом ошибка возникает. Файл прикрепил.
Storage.rar 957 KB (209)
Спасибо:

Mikhail Sukhov

Фотография
Дата: 19.03.2013
Ответить


FiNick Перейти
Вот! 15ое число грузится нормально, на 14ом ошибка возникает. Файл прикрепил.


За 14-ое файл наполовину пустой. Это видно даже под hex редактором. Так что вопрос что с файлом можно закрыть, а открыть вопрос как так получилось.
Спасибо:

FiNick

Фотография
Дата: 19.03.2013
Ответить


Такой файл получился в результате многократных зависаний компа/выключения электричества.
Можно ли сделать так, чтобы EmulationTrader не зависал при попытке прочитать такой день? Или может руками можно удалить поврежденный участок, чтоб файл читался.
Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy