Изменение позиции
Atom Ответить
14.05.2011


Коллеги, подскажите, плз, как правильно определять момент изменения позиции? Я так понял, что в этом может помочь событие PositionsChanged, но оно вызывается чаще, чем мне бы хотелось.

"События вызываются всегда, когда Квик через ДДЕ посылает обновление таблицы с позициями. А происходит это не только тогда, когда происходит сделка. В этой таблице есть и поля, которые изменяются постоянно." Mikhail Sukhov

Теоретически я могу устанавливать свой флаг при срабатывании NewMyTrades и только после этого события обрабатывать PositionsChanged, но подозреваю, что можно сделать проще.

2 Mikhail - так можно задавать вопросы?

Теги:


Спасибо:




16 Ответов
Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 14.05.2011
Ответить


vfreeman Перейти
2 Mikhail - так можно задавать вопросы?


Laugh Нормуль.

Перенес в Квик.
Спасибо:

dvoris

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


Присоединюсь.. как отследить - отследим, просто хотелось бы понять, почему такое поведение.

Событие PositionsChanged возникает многократно, не совсем понятно почему. Таблица "позиции" в квике настроена по минимуму (входящий остаток, текущий и т.д.). По идее, ничего другого там не меняется.

Цитата:
16:28:03 : New order: 2140122385 13:27:28 SBER03 Buy 1 0
16:28:03 : New trade: 1221926362 13:27:28 SBER03 1 98.88
16:28:03 : Change position: SBER03 10 0
16:28:03 : Change position: SBER03 10 0
16:28:03 : Change position: SBER03 10 0
16:28:03 : Change position: SBER03 10 0

Цитата:
16:21:06 : Change position: SBER03 10 0
16:21:06 : New order: 2140024860 13:20:31 SBER03 Buy 1 0
16:21:06 : New trade: 1221921391 13:20:31 SBER03 1 98.75
16:21:06 : Change position: SBER03 10 0
16:21:06 : Change position: SBER03 10 0
16:21:06 : Change position: SBER03 10 0



Спасибо:

rtDen

Фотография
Курсы Программист
Дата: 28.03.2012
Ответить


Апну тему, хотелось бы услышать ответ на этот вопрос (почему постоянно вызывается событие QuikTrader.PositionsChanged).
Спасибо:

vfreeman

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


rtDen Перейти
Апну тему, хотелось бы услышать ответ на этот вопрос (почему постоянно вызывается событие QuikTrader.PositionsChanged).


вызов события не означает изменение события
я в свое время включил дополнительный фильтр в обработку этого события - отслеживал изменение CurrentValue объекта Position

ps: оказывается я создал этот топик 10 месяцев назад BigGrin

Автор топика
Спасибо:

rtDen

Фотография
Курсы Программист
Дата: 28.03.2012
Ответить


vfreeman Перейти

я в свое время включил дополнительный фильтр в обработку этого события - отслеживал изменение CurrentValue объекта Position


Скорее всего, сделаю так же
Спасибо:

Alexander

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


rtDen Перейти
Апну тему, хотелось бы услышать ответ на этот вопрос (почему постоянно вызывается событие QuikTrader.PositionsChanged).


Посмотрел по коду - поднимается только если приходит DDE изменение по таблице позиций на рынке акций или деривативов.
Распечатайте всё что вам приходит и покажите изменения.

сейчас пришло по Dde - мы записали это всё - подняли событие
Спасибо:

rtDen

Фотография
Курсы Программист
Дата: 30.03.2012
Ответить


Alexander Mukhanchikov Перейти
Распечатайте всё что вам приходит и покажите изменения.

Честно говоря, не понял, что нужно сделать. Таблицы "Позиции по деривативам" и "Позиции по бумагам" в квике не меняются, при вызове события "private void trader_PositionsChanged(IEnumerable<Position> positions)" в positions имеется одна позиция, по RIM2, CurrentValue BlockedValue и т.д. в ней каждый раз одинаковые.
Спасибо:

Alexander

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


rtDen Перейти
Alexander Mukhanchikov Перейти
Распечатайте всё что вам приходит и покажите изменения.

Честно говоря, не понял, что нужно сделать. Таблицы "Позиции по деривативам" и "Позиции по бумагам" в квике не меняются, при вызове события "private void trader_PositionsChanged(IEnumerable<Position> positions)" в positions имеется одна позиция, по RIM2, CurrentValue BlockedValue и т.д. в ней каждый раз одинаковые.


Покажите скриншот данной таблицы в квике, которая экспортируется.
Спасибо:

rtDen

Фотография
Курсы Программист
Дата: 30.03.2012
Ответить


Таблицы
Спасибо:

Alexander

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


Спасибо, буду детально проверять.
Вообще по DDE должны передаваться только строки таблицы, если в них были изменения.

Если нет - будем пинать Квик и попробуем у себя учесть эти очередные "особенности".
Спасибо:

rtDen

Фотография
Курсы Программист
Дата: 30.03.2012
Ответить


Спасибо Вам за быстрое реагирование.
Спасибо:

Alexander

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


Это 4.0.23, да?
Спасибо:

rtDen

Фотография
Курсы Программист
Дата: 30.03.2012
Ответить


Да
Спасибо:

Alexander

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


Багу подтверждаю, похоже бага Квика.

Отписался у них на форуме - http://quik.ru/forum/iwr/87354/87354/

Ждём ответа.

Внутри S# править неправильно - на клиентской части стоит тогда пока фильтровать данное поведение.
Спасибо:

rtDen

Фотография
Курсы Программист
Дата: 30.03.2012
Ответить


Ясно, пока добавлю доп. фильтр.
Спасибо:

Alexander

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


Alexander Mukhanchikov Перейти
Багу подтверждаю, похоже бага Квика.

Отписался у них на форуме - https://quik.ru/forum/iwr/87354/87354/

Ждём ответа.

Внутри S# править неправильно - на клиентской части стоит тогда пока фильтровать данное поведение.



У кого возникает проблема - просьба выслать им архив какой они просят.
Спасибо:


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

loading
clippy