Не фурычит экспорт заявок
Atom
10.11.2010


Почему-то при запуске экспорта из таблицы приходит только последняя заявка и всё.. дальше экспорт не идёт.. т.е. ни старые, ни новые заявки уже не приходят.. где искать причину[confused]

И Quik и S# последней версии.. экспорт других таблиц идёт без нареканий.. Verifier ошибок не находит...

Заявки ловлю так:
Код
trader.NewOrders += Orders =>
{
foreach (var order in Orders)
{
Console.WriteLine("order.State = {0}", order.State);
}
}


VS пишет в окне вывода:
Код
order.State = Done
Первый этап обработки исключения типа "System.ArgumentException" в приложении Ecng.Trading.Quik.dll

Похоже там генерится какое-то исключение.. вот только как его отловить?

Теги:


Спасибо:


1 2 3  >
Mikhail Sukhov

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


XMbIPb

Первый этап обработки исключения типа "System.ArgumentException" в приложении Ecng.Trading.Quik.dll[/code]
Похоже там генерится какое-то исключение.. вот только как его отловить?


ITrader.ProcessDataError
Спасибо:

XMbIPb

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


Поймать то поймал.. вот только что это значит?
Код
System.ArgumentException: Элемент с тем же ключом уже был добавлен.
в System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
в System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
в System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
в Ecng.Trading.Quik.QuikTrader.#=qXtQgb_1Ivhr4cZlEBJS4ADM1O1bKVoCg9CtJr5uqcrk=.#=qwlIQWfo3qufLtkzLgdg_0w==(IList`1 #=qxm4X8NPgjxU5efFmY7R3Lw==, Func`2 #=qVtb7jPsPoFV1EKgfGAxHlw==)
в Ecng.Trading.Quik.DdeTable.#=qy8NUWUI7mXZMNnXZFsWcYg==(IList`1 #=qkc1RQGHvGXkONrB1lfHMpw==, Action`2 #=qe7FTlw34xv_zxSllAk2THw==, Action`1 #=qyr$xSlYGt0D7OlEnBcjGtw==)
Спасибо:

Mikhail Sukhov

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


XMbIPb
Поймать то поймал.. вот только что это значит?


В таблице заявок все номера транзакции уникальны?
Спасибо:

XMbIPb

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


Хм.. не совсем[blink] .. только сейчас заметил что заявки дублируются по три раза.. это как-то лечится?
Спасибо:

Mikhail Sukhov

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


XMbIPb
Хм.. не совсем[blink] .. только сейчас заметил что заявки дублируются по три раза.. это как-то лечится?


Заявки дублируются или имеют одинаковые номера транзакции?
Спасибо:

XMbIPb

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


Дублируются один в один.. я убрал их из таблицы с помощью фильтра.. перезапустил экспорт.. выставил новую заявку.. в таблице она высветилась моментально.. а вот робот получил её только минут через десять.. когда биржа уже закрылась...
Спасибо:

Mikhail Sukhov

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


XMbIPb
Дублируются один в один.. я убрал их из таблицы с помощью фильтра.. перезапустил экспорт.. выставил новую заявку.. в таблице она высветилась моментально.. а вот робот получил её только минут через десять.. когда биржа уже закрылась...


ITrader.NewOrders и лог с отметкой времени. Насчет дубляжа - это к брокеру.
Спасибо:

XMbIPb

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


На данный момент ситуация такая - я запускаю экспорт.. обработчик получает все заявки из таблицы.. я вручную выставляю новые, они тоже доходят без проблем.. запускаю код генерирующий заявки(он у меня находится в обработчике QuotesChanged), он выставляет заявку и ноль реакции.. я выставляю ещё одну вручную, она тут же приходит.. короче NewOrders игнорирует заявки выставленные из другого обработчика.. что-то мне подсказывает что здесь какая-то запара с потоками.. вот только я пока не особо в них разбираюсь...
Спасибо:

XMbIPb

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


Все обработчики я запихал в функцию Quik, которую вызываю из основного потока вот таким макаром:
Код
NextPrimeDelegate npd = new NextPrimeDelegate(this.Quik);
npd.BeginInvoke(null, null);


А уже из обработчиков вот так:
Код
Dispatcher.BeginInvoke(DispatcherPriority.Normal, new NextPrimeDelegate(GUI));

вызываю функцию которая отвечает за обновление GUI...
Это может как-то повлиять?
Спасибо:

Mikhail Sukhov

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


XMbIPb
На данный момент ситуация такая - я запускаю экспорт.. обработчик получает все заявки из таблицы.. я вручную выставляю новые, они тоже доходят без проблем.. запускаю код генерирующий заявки(он у меня находится в обработчике QuotesChanged), он выставляет заявку и ноль реакции.. я выставляю ещё одну вручную, она тут же приходит.. короче NewOrders игнорирует заявки выставленные из другого обработчика.. что-то мне подсказывает что здесь какая-то запара с потоками.. вот только я пока не особо в них разбираюсь...


Это скорее всего такая же ошибка как и http://stocksharp.com/posts/m/4545/ Обновитесь до 2.5.2
Спасибо: XMbIPb
1 2 3  >

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

loading
clippy