API 4.2.2.26. Попытка записать неупорядоченные сделки


API 4.2.2.26. Попытка записать неупорядоченные сделки
Atom
09.04.2014


Вроде, в более ранних версиях такой ошибки не было. Можно как-то сделать, чтобы уже записанные сделки повторно в хранилище не писались, а сохранялись только те, что еще не записаны без вызова исключения?
Код
2014-04-09 09:40:52,755 [28] ERROR - Ошибка при сохранении сделок по инструменту SIM4@FORTS
System.ArgumentException: Попытка записать неупорядоченные сделки. Последнее записанное время равно 2014.04.08 23:49:59.954, новое 2014.04.08 19:00:00.228.
Parameter name: time
   at #=qupnVebKj5E_LfTEbmHe8KbG1dFxqwl7kUrWlGqaG0wI5uZKLsPtsVbnd5P7bDHQaAz2tCb6J9idMw3gvRjY1Mw==.#=qb0efB_0iWfYKV9dPpABQHw==(List`1 #=qRzSfjVkNOy_gJNbO1BzabQ==, DateTime #=qMk3IYP0EUku0w8TTMnxBsg==, DateTime #=qJ7budlo1qPRztaJejKVodg==, String #=qrJqJ8wrVY9Q55_L_PziYhg==)
   at #=qik$V9d0YIdt7a50_J_0pB51BqQfMZSNdri603R9UOkwkITuxxgzPFVi4iTEfxHNZ.#=qgaD_Tb$SEKVACHkmAGTisA==(List`1 #=qNJ2O7YVriWDgBVvYn8QUNg==, IEnumerable`1 #=qM59CUGlz1vm7o5jlWDYLmA==, #=qaEY6XdcItoIZhrbE_JQwk2wxYyltU_C97sm3DZRx5TWPlYw1V_KXXUaeyFPgi$uN #=q69YGPdCldqvfpJRlBX89tA==)
   at #=qSUou6FVxZ1h5BDJOlNq57MmNIouqlf9BTBrzOvrw1sN63XCWU3mHVHvulFvTqWdEsa0NLuVqyGXaOEMTqtKklw==.#=qkOUT4VUG7vd7cjfDOBNPsZ_B8CpdZWtHMMFzuEjwjOSH$$TTfAj90GB27rbnGE9MQNSiHNYIhWARk5sPnmPgwGN$wzEZXjPQJsPyOqGKpCY=(IEnumerable`1 #=qObQ0zo$unBgfMM41eeojew==, #=qDQE6UFyxY9ev55BGfq1mkC$y1CYqWdm2p3E5qBWHmwJee422YIKsU6YRi7n50Xzb #=qEX50oKddWjEyVBh1ljsroA==)
   at #=qtE5HPex3z_81QNLFBfrStGYr$HJbb97D2ocIM65d8mpdGq8_Rh0rf322J$LYyYNY.#=qoch2JfnxMeF_RRR1aIXzLQ==(DateTime #=qsjQUmsSmyDKnEr3UkWP9Hg==, #=qaOB$eFMURJ1m17N_SxlaNg==[] #=qyObO0JV1rCoXj11Xn$J$bA==, Boolean #=qT1bF99ka$PPH6jPZ2sy6Gw==)
   at #=qtE5HPex3z_81QNLFBfrStGYr$HJbb97D2ocIM65d8mpdGq8_Rh0rf322J$LYyYNY.Save(IEnumerable`1 #=qyObO0JV1rCoXj11Xn$J$bA==)
   at AlgoTrading.Features.Hydra.Model.SaveManager.SaveTrades() in d:\Temp\AlgoTrading\Build Process Data\Export\SourceCode\Applications\AlgoTrading\Features\Hydra\Model\SaveManager.cs:line 202

Теги:


Спасибо:


< 1 2 3  >
Mikhail Sukhov

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


vk37 Перейти



" Попытка записать неупорядоченные сделки." - значит сами сделки передаваемые не упорядочены по времени. А не то, что хранилище не может отфильтровать.
Спасибо:

towace

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


может вот это свойство хранилища поможет, AppendOnlyNew
Спасибо:

vk37

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


Михаил Сухов Перейти
" Попытка записать неупорядоченные сделки." - значит сами сделки передаваемые не упорядочены по времени. А не то, что хранилище не может отфильтровать.
Упорядочил сделки перед сохранением по времени:
Код
tradesStorage.Save(tradeBySecurity.OrderBy(t => t.Time));
Исключение при сохранении по-прежнему осталось, часть сделок не сохранилась.
Если из хранилища удалить сделки за 01.11.13 после окончания действий по шагу 1, то ошибок при выполнении шага 2 не будет. Выходит, что все-таки хранилище не может отфильтровать.
Спасибо:

vk37

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


towace Перейти
может вот это свойство хранилища поможет, AppendOnlyNew
Оно по умолчанию == true.

Спасибо:

Mikhail Sukhov

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


vk37 Перейти
Упорядочил сделки перед сохранением по времени:
Код
tradesStorage.Save(tradeBySecurity.OrderBy(t => t.Time));
Исключение при сохранении по-прежнему осталось


Тогда не знаю в чем дело. Надо больше информации. Может как-то эти сделки сохранить.
Спасибо:

vk37

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


Михаил Сухов Перейти
Надо больше информации.
Могу сохранить отдельно сделки, полученные на шаге 1 и отдельно сделки полученные на шаге 2 и приложить хранилище к посту. Могу попробовать простой проект сделать, демонстрирующий проблему. Что конкретно нужно?
Спасибо:

Mikhail Sukhov

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


vk37 Перейти
Михаил Сухов Перейти
Надо больше информации.
Могу сохранить отдельно сделки, полученные на шаге 1 и отдельно сделки полученные на шаге 2 и приложить хранилище к посту. Могу попробовать простой проект сделать, демонстрирующий проблему. Что конкретно нужно?


Второе было бы лучше.
Спасибо:

vk37

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


Михаил Сухов Перейти
Второе было бы лучше.
Сделал проект.
Подключаюсь к куфиду. Нахожу инструмент +GC#. Получаю сделки за 01.11.2013. Сохраняю полученные сделки в хранилище, в котором уже содержатся несколько сделок за первую секунду 01.11.2013 (как-то попали при запросе данных за предыдущий день). Получаю исключение "Попытка записать неупорядоченные сделки". Убеждаюсь, что новые сделки в хранилище не записаны. Отключаюсь от куфида.
Спасибо:

Mikhail Sukhov

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


vk37 Перейти


А можно как-то по проще? С захардкожены значениями?
Спасибо:

vk37

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


Михаил Сухов Перейти
А можно как-то по проще? С захардкожены значениями?
Что значит с захардкоженными значениями? Вроде и так максимально просто: запускаешь код - получаешь ошибку, ничего корректировать в коде не нужно. 130 строк кода.
Спасибо:
< 1 2 3  >

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

loading
clippy