нестабильно приходят "custom" данные из квика
Atom Ответить
05.10.2010


непонятки творятся.. раз запущу свою мега-программку "custom" данные из Квика идут, другой раз не идут, хотя в таблице квика вижу, что визуально обновляются.

Михаил, могут ли быть какие-то подводные камни с т.зр. Stock# или его использования?
AddCustomTableMapping делаю сразу после создание trader. экспорт запускаю.. строго после подключения.

Видно что в самом квике эспорт по DDE для этой таблицы запущен..

Из особенностей: когда данные все-таки "идут" иногда попадаются странные значения свойств custom-объектов, например, в свойстве должна быть строка даты, а там почему-то ноль..
Или в переопределенный мною Equals почему-то передается объект некого неожидаемого типа, не помню точно какого.. NamedItem что ли..
Но это все иногда.. (т.е. не похоже, что я криво колонки custom-таблицы на свойства класс отмаппировал).


Что-нибудь посоветуете? Или Квик дурит?

Больше всего напрягает ситуация с неприходом данных.

Теги:


Спасибо:



Скидка 15% на все обучение до 5 апреля (осталось 2 дней).

9 Ответов
Mikhail Sukhov

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


sergun
непонятки творятся.. раз запущу свою мега-программку "custom" данные из Квика идут, другой раз не идут, хотя в таблице квика вижу, что визуально обновляются.

Михаил, могут ли быть какие-то подводные камни с т.зр. Stock# или его использования?


А как Вы проверяете, идут или нет?

sergun

Из особенностей: когда данные все-таки "идут" иногда попадаются странные значения свойств custom-объектов, например, в свойстве должна быть строка даты, а там почему-то ноль..


А порядок полей точно правильный? Еще бывает конфликт форамата даты. Скажем, если скопируете такую даты и в коде пропишите

Код
"здесь должно быть время".To<DateTime>()


то будет работать?

Если не секрет, то сделайте скрин таблицы Квика и приведите сам код (желательно все выкинуть, что не относиться к custom таблицам).

sergun

Или в переопределенный мною Equals почему-то передается объект некого неожидаемого типа, не помню точно какого.. NamedItem что ли..


Не совсем понял, что написано.

sergun

Но это все иногда.. (т.е. не похоже, что я криво колонки custom-таблицы на свойства класс отмаппировал).


Оно или работает или нет. Промежуточного состояния нет.
Спасибо:

sergun

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



А как Вы проверяете, идут или нет?

>>> В обработчике прихода кастом-данных стоит брейкпоинт.


sergun

Или в переопределенный мною Equals почему-то передается объект некого неожидаемого типа, не помню точно какого.. NamedItem что ли..


Не совсем понял, что написано.

>>> В моем классе CustomTable переопределил метод Equal, так вот под тем же отладчиком видел несколько раз что в переопределенный метод Equal в качестве объекта передается не объект класса CustomTable, а нечто, принадлежащее какому-то странному классу..

sergun

Но это все иногда.. (т.е. не похоже, что я криво колонки custom-таблицы на свойства класс отмаппировал).


Оно или работает или нет. Промежуточного состояния нет.[/quote]
>>>

Проблема в том, что почему-то именно ИНОГДА (от запуска к запуску) почему-то данные не приходят, хотя в квике ВСЕГДА вижу их обновление в таблице.
У Вас не предусмотрено какое-нибудь отладочное логгирование?
Автор топика
Спасибо:

Mikhail Sukhov

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


sergun

обработчике прихода кастом-данных стоит брейкпоинт.


А у Вас сущность имеет идентификатор (Identity)? Если да, то для ее объектов, которые уже были ранее получены, не будет вызвано событие. Они просто изменятся внутрях QuikTrader. Это by design. Вносит какие то проблемы?
Спасибо:

Render

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


Цитата:
А у Вас сущность имеет идентификатор (Identity)? Если да, то для ее объектов, которые уже были ранее получены, не будет вызвано событие. Они просто изменятся внутрях QuikTrader. Это by design.

Долго не мог понять почему событие ProcessCustomTables второй раз не вызывается. Теперь вижу. Если это не прописано явно в документации, то думаю нужно обязательно написать.
Спасибо:

MCTuTeJ|19951995

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


Михаил, а правильно ли я понял что если, например, я экспортирую custom таблицу "Позиции", то при изменении уже существующей позиции событие ProcessCustomTables не придет ?
Спасибо:

Mikhail Sukhov

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


MCTuTeJ|19951995
Михаил, а правильно ли я понял что если, например, я экспортирую custom таблицу "Позиции", то при изменении уже существующей позиции событие ProcessCustomTables не придет ?


Правильно. В этой самой таблице нужно в set-ерах сделать вызов необходимого события. Как я это показал в примере.
Спасибо:

MCTuTeJ|19951995

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


это который NotifyPropertyChanged ? Чтобы можно было данные привязать по-человечески ?
Спасибо:

Mikhail Sukhov

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


MCTuTeJ|19951995
это который NotifyPropertyChanged ? Чтобы можно было данные привязать по-человечески ?


NotifyPropertyChanged - это лишь вариант (нужен для GUI, чтобы оно знало об обновлении). А так можно и обычным событием.
Спасибо: MCTuTeJ|19951995

MCTuTeJ|19951995

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


Mikhail Sukhov

А так можно и обычным событием.

Спасибо, помогло.

Спасибо:


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

loading
clippy