Ошибка: Нет лучшего бида для котировки.

Ошибка: Нет лучшего бида для котировки.
Atom
12/11/2013
pro_to


Пытаюсь разобраться с примером SamplesmartConsole. Подключение успешно устанавливается, инструмент появляется, но при получении значения середины спреда, _lkoh.BestBid оказывается Null и генерится ексепш. Код в котором генерится исключение:

// запоминаем первоначальное значение середины спреда var firstMid = _lkoh.BestPair.SpreadPrice / 2; if (_lkoh.BestBid == null) throw new Exception("Нет лучшего бида для котировки.");

Логику примера я не правил, только подправил параметры подключения. В чем может быть ошибка? Это в примере косяк или у меня что-то не так? Подскажите, пожалуйста :) Для разработки использую VisualStudio 2010,на Windows 8.


Tags:


Thanks:


1 2  >
alexan3010

Avatar
Date: 12/12/2013
Reply


Тут так не любят. Расскажите сначала о версии SmartCom (3, 2.2 или 2.0), версию его сборки, его битности. Потом что подправили в параметрах подключения. Потом какую собственно версию API вы используете. Да и то вряд ли ответят ( если я не соображу :) ).

Thanks:

pro_to

Avatar
Date: 12/13/2013
Reply


Использую смартком 3.0.79_x64 Подключаюсь следующим образом: IPHostEntry host = Dns.GetHostEntry("mxdemo.ittrade.ru"); trader.Login = "login"; trader.Password = "password"; trader.Address = new IPEndPoint(host.AddressList[0], 8443); trader.Version = StockSharp.Smart.Wrapper.SmartComVersions.V3; trader.Connect(); Подключение проходит успешно. API использую 4.2.1.3. Пример стандартный, который вместе с API идет.

Спасибо, за ваше участие.

Thanks:

alexan3010

Avatar
Date: 12/13/2013
Reply


Я сейчас у себя посмотрел, у меня этот пример в 4.2.1.3 вообще с ошибкой (не обработанной, то есть окно закрывается) вылетает в процессе ожидания данных от инструмента Лукойл. Вообще версия 4.2.x.x еще не стабильна и активно допиливается, со смарткомом ни один пример нормально полностью не отрабатывает (см. мои сообщения в этой ветке). Поэтому, если вы только начинаете, я вам советую использовать 4.1.19 так как она стабильная.

Thanks:

Mikhail Sukhov

Avatar
Date: 12/14/2013
Reply


alexan3010: со смарткомом ни один пример нормально полностью не отрабатывает (см. мои сообщения в этой ветке).

Кроме само изменяющихся свечек, что еще у вас не работает?

Thanks:

Mikhail Sukhov

Avatar
Date: 12/14/2013
Reply


pro_to: Пытаюсь разобраться с примером SamplesmartConsole. Подключение успешно устанавливается, инструмент появляется, но при получении значения середины спреда, _lkoh.BestBid оказывается Null и генерится ексепш.

Консольные примеры появились когда не было GUI примеров. Они уже израдно устарели. Учитесь по SampleSmart.

Посмотрел на пример SampleSmartConsole. В частности там ошибка:

trader.SecuritiesChanged += securities =>
{
	// если инструмент хоть раз изменился (по нему пришли актуальные данные)
	if (securities.Contains(_lkoh))
		waitHandle.Set();
};

Надо добавить видимо еще и проверку на наличие котировок, так как инструмент может обновится не всеми данными сразу.

Thanks:

alexan3010

Avatar
Date: 12/14/2013
Reply


Михаил, спасибо за ответ. По пунктам по 4.2.1.3:

  1. SampleSmartCandles не работает риал-тайм. Похоже просто на то, что перестало работать CandleManager.Processing - туда вообще ничего не поступает. Да и .NewCandles - исторические свечки закачивает на момент вызова, но при появлении новых исторических свечек в процессе работы программы они не поступают. Изменения инструментов происходят, стакан тоже, с этим все нормально, что то определенно с CandleManager случилось. В 4.1.19 процессинг худо бедно работал, NewCandles - не работал, вываливалось с ошибкой Неверное количество свечек. В 4.2.1.3 исторические свечки начал нормально подкачивать (на момент вызова), а процессинг сломался вообще.

  2. Очень долго "проявляются" инструменты после запуска экспорта по сравнению с 4.1.19. До 20 секунд против почти мгновенного появления. Это я так понимаю RegisterSecurity, RegisterTrades происходят очень долго, а также подписка на свечки. Можно проверить в вашем SampleSmart: после нажатия кнопок "Бид Оффер" или "Стакан..." стакан и бид/аски появятся через значительное время (10-15 секунд), тогда как в 4.1.19 почти мгновенно.

Это основные проблемы которые я нарыл и они очень ощутимы.

PS: SmartCom 3.0, API держу все начиная с 4.1.19, могу проверять в любом, могу разнести на разные сервера, могу на разных ОС. Спасибо за ваш проект, мне он нравится, постараюсь способствовать в бета-тестинге на Смарткоме.

Thanks:

Mikhail Sukhov

Avatar
Date: 12/14/2013
Reply


alexan3010: Это основные проблемы которые я нарыл и они очень ощутимы.

Вы написали, что у вас все примеры не работают. Примеры SampleSmart работает?

Thanks:

alexan3010

Avatar
Date: 12/14/2013
Reply


Я же во втором пункте написал про SampleSmart. Не могу сказать, что он совсем не работает. Просто работает не так, как в 4.1.19, высказал свои предположения. Очень не удобно что-то дебагить, когда каждый запуск программы проходит по полминуты, тогда как в 4.1.19 было гораздо быстрее.

Thanks:

Mikhail Sukhov

Avatar
Date: 12/14/2013
Reply


alexan3010: каждый запуск программы проходит по полминуты

SampleSmart запускается пол минуты?

Thanks:

alexan3010

Avatar
Date: 12/14/2013
Reply


Михаил, я не знаю как мне еще более подробно описать проблему, которую я дважды описал в этом топике, а также в отдельном тут: http://stocksharp.com/forum/4201/S--4-2-1-3-dolgho-otklikaietsia--NewSecurity/

SampleSmart запускается нормально. Но после нажатия кнопок "Бид Оффер" или "Стакан..." результаты выводятся в разы дольше, чем в 4.1.19. И не только в SampleSmart, и в своих программах, в SampleSmartCandle в тот момент, когда запускается RegisterSecurity, RegisterTrades или подписка на свечи - все происходит очень долго.

Я же говорю, просто на примере SampleSmart - нажмите "Стакан" в 4.2.1.3 и в 4.1.19 (и в соответствующих версиям примерах SampleSmart) - и посмотрите время появления этих данных в разных версиях API.

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

Thanks:
1 2  >

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

loading
clippy