Ошибка экспорта таблицы стоп-заявок

Ошибка экспорта таблицы стоп-заявок
Atom
26.02.2013
VassilSanych


При прошлом запуске успешно создавал тейк-профиты по заявке (как CreateConditionTakeProfit из примера).
Соответственно в таблице стоп-заявок есть данные.
Закрыл, запустил заново.
Получил следующий баг экспорта на старте:
Код
2013/02/26 14:42:37.144|       |StrategyManager|Status:Started, PnL:0, Slippage:0, Position:0, Latency:00:00:00, StartedTime
2013/02/26 14:42:37.145|       |SS        |Стратегия запущена. [0,-1]. Позиция при старте 0.
2013/02/26 14:42:37.277|Debug  |QuikManager|Терминал проверен
2013/02/26 14:42:37.281|Debug  |QuikManager|Создание шлюза взаимодействия с системой Quik.
2013/02/26 14:42:37.593|       |QuikManager|Шлюз создан
2013/02/26 14:42:42.652|Debug  |QuikManager|Ожидание соединения
2013/02/26 14:42:42.657|Debug  |QuikManager|Соединение установлено.
2013/02/26 14:42:46.168|Debug  |TimeServerHelper|Время синхронизировано c сервером 80.90.180.140:123. Отступ - 00:00:03.4116024
2013/02/26 14:42:51.169|Debug  |QuikManager|Запуск экспорта данных.
2013/02/26 14:42:51.533|Debug  |QuikManager|Новые бумаги
2013/02/26 14:42:51.675|Error  |QuikManager|Ошибка получения данных: System.ArgumentOutOfRangeException: Неподдерживаемый тип стоп-заявки.
Имя параметра: func
Фактическое значение было Тэйк-профит по заявке.
   в StockSharp.Quik.QuikDdeFormatter.GetStopOrderType(Func`2 func) в e:\Projects\C_Projects\StockSharp\Sources\Quik\QuikDdeFormatter.cs:строка 268
   в StockSharp.Quik.QuikTrader.<>c__DisplayClass31.<>c__DisplayClass56.<>c__DisplayClass58.<>c__DisplayClass5a.<OnPoke>b__1b(Int64 key) в e:\Projects\C_Projects\StockSharp\Sources\Quik\QuikTrader.cs:строка 1154
   в StockSharp.Algo.BaseTrader.<>c__DisplayClass1f.<GetOrder>b__1d(Int64 key) в e:\Projects\C_Projects\StockSharp\Sources\Algo\BaseTrader.cs:строка 2440
   в StockSharp.Algo.BaseTrader.Cache.<>c__DisplayClass50.<GetOrder>b__4f(Int64 key) в e:\Projects\C_Projects\StockSharp\Sources\Algo\BaseTrader.cs:строка 125
   в Ecng.Collections.CollectionHelper.SafeAdd[TKey,TValue](IDictionary`2 dictionary, TKey key, Func`2 handler, Boolean& isNew) в e:\Ecng\trunk\Collections\CollectionHelper.cs:строка 479
   в Ecng.Collections.CollectionHelper.SafeAdd[TKey,TValue](IDictionary`2 dictionary, TKey key, Func`2 handler) в e:\Ecng\trunk\Collections\CollectionHelper.cs:строка 456
   в StockSharp.Algo.BaseTrader.Cache.GetOrder(Security security, Int64 id, Func`2 createOrder) в e:\Projects\C_Projects\StockSharp\Sources\Algo\BaseTrader.cs:строка 123
   в StockSharp.Algo.BaseTrader.GetOrder(Security security, Int64 id, Func`2 createOrder, Func`2 changeOrder) в e:\Projects\C_Projects\StockSharp\Sources\Algo\BaseTrader.cs:строка 2436
   в StockSharp.Quik.QuikTrader.<>c__DisplayClass31.<>c__DisplayClass56.<>c__DisplayClass58.<OnPoke>b__1a(Security otherSec) в e:\Projects\C_Projects\StockSharp\Sources\Quik\QuikTrader.cs:строка 1149
   в StockSharp.Quik.QuikTrader.<>c__DisplayClass31.<>c__DisplayClass56.<OnPoke>b__19(Security security) в e:\Projects\C_Projects\StockSharp\Sources\Quik\QuikTrader.cs:строка 1207
   в StockSharp.Algo.BaseTrader.ProcessSecurityAction(String securityId, Object nativeSecurityId, Action`1 action, Boolean ignoreIfNotExist) в e:\Projects\C_Projects\StockSharp\Sources\Algo\BaseTrader.cs:строка 2829
   в StockSharp.Quik.QuikTrader.<>c__DisplayClass31.<OnPoke>b__18(IList`1 row, Func`2 func) в e:\Projects\C_Projects\StockSharp\Sources\Quik\QuikTrader.cs:строка 1141
   в StockSharp.Quik.QuikDdeFormatter.Deserialize(DdeTable table, IList`1 rows, Action`2 handler, Action`1 errorHandler, Boolean skipErrors) в e:\Projects\C_Projects\StockSharp\Sources\Quik\QuikDdeFormatter.cs:строка 57

Теги:


Спасибо:


< 1 2 
VassilSanych

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


Mikhail Sukhov
Тогда подождем пару дней, вдруг перестанет из-за правки.

Не перестанет.
Во-первых, я старый функционал не выбрасывал. Так что, даже если это было рассчитано на какую-то другую (более кривую) версию квика, то по-старому тоже будет работать.
Просто не будет падать именно с таким типом заявки.
Во-вторых, ошибка описана однозначно. Накосячить трудно.
В-третьих, не понимаю, почему столько внимания такому пустячному исправлению.
В других моих сегодняшних багрепортах жести значительно больше ;)

Спасибо:

Mikhail Sukhov

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


VassilSanych



Будет значительно проще, если вы в лог выведите тип стоп-заявки, что приходит от Квика (с идентификатором процесса, чтобы разделить повторные запуски).
Спасибо:
< 1 2 

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

loading
clippy