Нет информации о главном окне Quik. Возможно, было неуспешное подключение.


Нет информации о главном окне Quik. Возможно, было неуспешное подключение.
Atom Reply
6/8/2010


В чем может быть причина сообщения об ошибке?
Квик запущен, путь к нему прописан.

Tags:


Thanks:




33 Answers
1 2  >
Mikhail Sukhov

Avatar
Date: 6/8/2010
Reply


Запускать экспорт нужно только после событие Connected.

Thanks:

sergun

Avatar
Date: 6/9/2010
Reply


Это событие не наступает.

Topic starter
Thanks:

Mikhail Sukhov

Avatar
Date: 6/9/2010
Reply


Пример Sample пробовали? Там как раз по такому сценарию. Он работает?
Значит наступает.

Thanks:

sergun

Avatar
Date: 6/9/2010
Reply


Разумеется, правда SampleConsole.
При запуске примера также не наступает событие Connected.

При этом никакие эксепшены или ошибочные события не появляются..

Что может влиять? Версия квик 5.16.0.145

Topic starter
Thanks:

Mikhail Sukhov

Avatar
Date: 6/9/2010
Reply


А Квик вообще запущен? Подключен к торгам?

Thanks:

sergun

Avatar
Date: 6/9/2010
Reply


Да, квик запущен. К торгам подключен.

Topic starter
Thanks:

Mikhail Sukhov

Avatar
Date: 6/9/2010
Reply


А если запустить Sample? Я консоль не проверял.

Thanks:

sergun

Avatar
Date: 6/9/2010
Reply


А вот Sample работает.

Но мне пока с WPF экспериментировать рано..
Особой разницы в коде подключения не вижу, похоже дело именно в работе
с другими окошками из окошечного либо консольного приложения..

Что-нибудь посоветуете?

Topic starter
Thanks:

Mikhail Sukhov

Avatar
Date: 6/9/2010
Reply


QuikTrader не зависит от консоли или WPF - ему без разницы.

Thanks:

ddd888

Avatar
Date: 6/9/2010
Reply


Кстати, у меня аналогичная проблема - Sample нормально работает, а
SampleConsole - нет. StartDde() дает такую же ошибку, а
StartDde(string или array) - "нет ссылки на объект". Может это связано
с изменением логики работы метода StartDde? Раньше в 1.8 таких
проблем не было. Можно увидеть код этого метода?

Thanks:

Mikhail Sukhov

Avatar
Date: 6/9/2010
Reply


Нет ссылки на объект - приведите полный текст.

Thanks:

ddd888

Avatar
Date: 6/9/2010
Reply


SystemNullReferenceException: В экземпляре объекта не задана ссылка на
объект.
Далее указание на строку:
trader.StartDde(new[] { trader.SecuritiesTable,
trader.MyTradesTable });

Thanks:

Mikhail Sukhov

Avatar
Date: 6/9/2010
Reply


это скорее всего то, что trader null. Это уж совсем не зависит от
события Connected =)

Thanks:

ddd888

Avatar
Date: 6/9/2010
Reply


Так почему же он null? Это в Вашем же примере в Sample Console
происходит!
Кстати, а когда именно возникает событие Connected?

Thanks:

Mikhail Sukhov

Avatar
Date: 6/9/2010
Reply


Если это мой пример, то тогда надо посмотреть в чем бага.

Событие Connected вызывается сразу после соединения с Квиком.

Thanks:

ddd888

Avatar
Date: 6/9/2010
Reply


Под "соединением" имеется ввиду соединение через Trans2quik или
подключение через DDE?

Thanks:

Mikhail Sukhov

Avatar
Date: 6/9/2010
Reply


Первое.

Thanks:

Mikhail Sukhov

Avatar
Date: 6/10/2010
Reply


Взглянул на пример. Оформлен неправильно. Дде стартует до того, как
было произведено подключение. Вы это учитываете?

Thanks:

ddd888

Avatar
Date: 6/10/2010
Reply


Нет, в примере, я ничего от себя не добавлял.
Т.е. StartDde надо тоже "засунуть" под событие Connected?

Thanks:

ddd888

Avatar
Date: 6/10/2010
Reply


Еще такой вопрос. Если добавлять какие-нибудь манипуляции со стаканом
(Quotes), типа Max(t=t>t.Price), то иногда в этом месте возникает
исключение "последовательность не содержит элементов". Пробовал
поставить тест на null или Count=0, но исключение все равно
появляется. Из-за чего это происходит и как этого избежать?

Thanks:

Mikhail Sukhov

Avatar
Date: 6/10/2010
Reply


Из-за того, что стакан еще пуст.

Thanks:

ddd888

Avatar
Date: 6/10/2010
Reply


Но тогда должна работать проверка на null? Еще раз проверил
аналогичную ситуацию на 1.8 - там такая ошибка обычно иногда возникает
при первичном запуске стакана, но раз запустившись потом никогда не
появляется. В 2.0.1 она возникает периодически уже при открытом
стакане. У меня GetMarketDepth изменилась логика?

Thanks:

Mikhail Sukhov

Avatar
Date: 6/10/2010
Reply


Периодически - это как? По таймеру? Или пользователь что-то кликает?
Или в стратегии?

Thanks:

ddd888

Avatar
Date: 6/10/2010
Reply


Обновление стакана у меня происходит по событию
GetMarketDepth(this.Security).Changed
Вот во время периодического обновления иногда и выскакивает эта
ошибка.

+ опять-таки иногда при инициализации стакана выскакивает ошибка
"последовательность не содержит соответствующего элемента". В отладке
при этом this.Security - вроде вполне нормально загруженный.

Thanks:

ddd888

Avatar
Date: 6/10/2010
Reply


Заметил такую особенность - пока все сделки до конца не подгрузились в
S#, при открытии стакана GetMarketDepth может вызывать ошибку
("последовательность не содержит элементов"). А RegisterQuotes -
"последовательность не содержит соответствующего элемента".

Thanks:
1 2  >

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

loading
clippy