вопросы
Atom
2/3/2011


1)Order.Comment присвоенное значение не меняется - в квике комментарий всегда "S#"
2)_trader_PositionsChanged event выдает повторно данные:
Code

используется var position = obj.Last();
17:48:23.663;Position changed GZH1 начальное значение 25 текущее значение -16 blocked 0
17:48:23.663;Position changed RIH1 начальное значение -5 текущее значение 1 blocked 0
17:53:17.516;Position changed GZH1 начальное значение 25 текущее значение -16 blocked 0
17:53:17.516;Position changed RIH1 начальное значение -5 текущее значение 1 blocked 0
17:55:40.378;Position changed GZH1 начальное значение 25 текущее значение -16 blocked 0
17:55:40.378;Position changed RIH1 начальное значение -5 текущее значение 1 blocked 0

естественно никаких изменений небыло

Tags:


Thanks:


< 1 2 
skuvv

Avatar
Date: 2/9/2011
Reply


Заметил один момент - _trader_OrdersChanged срабатывает избыточно, тк его дергает событие из другого потока:
Code

20:00:51.146 Thread: EventDispatcher thread #мои сделки
LKH1 filled 5 avg_price 19288
LKH1 CumFilled 5 lastQty 5 lastPrice 19288 balance25
20:00:52.113 Thread: EventDispatcher thread #заявки
LKH1 filled 5 avg_price 19288
LKH1 CumFilled 10 lastQty 5 lastPrice 19288 balance20

Реальное событие было 1 раз, но оно сработало 2 раза - "мои сделки" не должны активировать событие OrdersChanged,
это не правильно. Кому надо, должен отлавливать NewMyTrade...
Вариант 2: сделать внутреннюю проверку на реальное изменение ордера и не дергать просто так событие
PS что еще хуже эти события не всегда по 2 срабатывают...
Thanks:

skuvv

Avatar
Date: 2/10/2011
Reply


Если отослать вручную стоп-заявку в квик, то при выгрузке через дде вылетает эксепшн:
Quote:

[On ProcessDataError] System.InvalidOperationException: Данные для таблицы 'стоп-заявки' экспортировались в меньшем формате. Не было найдено значение для колонки 'ID транзакции'. Количество колонок равно '34', индекс колонки '34'.

И обработь любые данные невозможно.
Thanks:

Mikhail Sukhov

Avatar
Date: 2/10/2011
Reply


skuvv Go to
Заметил один момент - _trader_OrdersChanged срабатывает избыточно, тк его дергает событие из другого потока:
Code

20:00:51.146 Thread: EventDispatcher thread #мои сделки
LKH1 filled 5 avg_price 19288
LKH1 CumFilled 5 lastQty 5 lastPrice 19288 balance25
20:00:52.113 Thread: EventDispatcher thread #заявки
LKH1 filled 5 avg_price 19288
LKH1 CumFilled 10 lastQty 5 lastPrice 19288 balance20

Реальное событие было 1 раз, но оно сработало 2 раза - "мои сделки" не должны активировать событие OrdersChanged,
это не правильно. Кому надо, должен отлавливать NewMyTrade...
Вариант 2: сделать внутреннюю проверку на реальное изменение ордера и не дергать просто так событие
PS что еще хуже эти события не всегда по 2 срабатывают...


Это другая ситуация - когда сделки пришли раньше заявки. Сделки приостанавливаются и дожидается информация о заявке. Как только придет заявка - сгенерируется событие и о новых сделках.
Thanks:

Mikhail Sukhov

Avatar
Date: 2/11/2011
Reply


skuvv Go to
Если отослать вручную стоп-заявку в квик, то при выгрузке через дде вылетает эксепшн:
Quote:

[On ProcessDataError] System.InvalidOperationException: Данные для таблицы 'стоп-заявки' экспортировались в меньшем формате. Не было найдено значение для колонки 'ID транзакции'. Количество колонок равно '34', индекс колонки '34'.

И обработь любые данные невозможно.


Таблица оформлена неправильно. Прочитайте документацию. Или используйте wnd файл.
Thanks:

Mikhail Sukhov

Avatar
Date: 2/11/2011
Reply


skuvv Go to
Осталось пару неясных моментов, значит в Квике в колонке ID транзакции пусто после замены.
Но Reregister возвращает order с ID транзакции.
Если перезапустить программу то в ивенте "новые ордера" поступают ордера с ID транзакции = 0
Я так понимаю что s# следит за ордерами с заменой и сопоставляет замененные ордера с старыми ID транзакции.


Багу подтверждаю с перестановкой заявок. Нашел и вылечил. Доступный фикс в следующем 3.0.2.
Thanks:

skuvv

Avatar
Date: 2/11/2011
Reply


Mikhail Sukhov Go to
skuvv Go to
Если отослать вручную стоп-заявку в квик, то при выгрузке через дде вылетает эксепшн:
Quote:

[On ProcessDataError] System.InvalidOperationException: Данные для таблицы 'стоп-заявки' экспортировались в меньшем формате. Не было найдено значение для колонки 'ID транзакции'. Количество колонок равно '34', индекс колонки '34'.

И обработь любые данные невозможно.


Таблица оформлена неправильно. Прочитайте документацию. Или используйте wnd файл.

Да так и было, одного столбцы нехватало...
Thanks:

Lafert

Avatar
Date: 3/12/2011
Reply


Mikhail Sukhov Go to
skuvv Go to
Заметил один момент - _trader_OrdersChanged срабатывает избыточно, тк его дергает событие из другого потока:
Code

20:00:51.146 Thread: EventDispatcher thread #мои сделки
LKH1 filled 5 avg_price 19288
LKH1 CumFilled 5 lastQty 5 lastPrice 19288 balance25
20:00:52.113 Thread: EventDispatcher thread #заявки
LKH1 filled 5 avg_price 19288
LKH1 CumFilled 10 lastQty 5 lastPrice 19288 balance20

Реальное событие было 1 раз, но оно сработало 2 раза - "мои сделки" не должны активировать событие OrdersChanged,
это не правильно. Кому надо, должен отлавливать NewMyTrade...
Вариант 2: сделать внутреннюю проверку на реальное изменение ордера и не дергать просто так событие
PS что еще хуже эти события не всегда по 2 срабатывают...


Это другая ситуация - когда сделки пришли раньше заявки. Сделки приостанавливаются и дожидается информация о заявке. Как только придет заявка - сгенерируется событие и о новых сделках.


А можно с этого места поподробнее: информация о сделке ждет пока не придет информация по заявке? стоит ли терять темп? Может быть лучше сгенерировать событие заявки, но предусмотреть для него особый статус?
Thanks:

Mikhail Sukhov

Avatar
Date: 3/12/2011
Reply


Lafert Go to
А можно с этого места поподробнее: информация о сделке ждет пока не придет информация по заявке? стоит ли терять темп? Может быть лучше сгенерировать событие заявки, но предусмотреть для него особый статус?


Был бы смысл? Темп не теряется, потому что заявка приходит позднее сделки только в случае запуска экспорта.
Thanks:
< 1 2 

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy