Не получается подключиться к Interactive Brokers
Atom Ответить
14.09.2018


Добрый день.

Использую StockSharp 4.4.13, пытаюсь подключиться к Interactive Brokers (через составной коннектор), в логах вижу следующее:

00:00:00.000| |Connector |Connect
17:51:28.490| |BasketMessageAdapter|Connecting 'Interactive Brokers: Адрес = 10.110.77.119:4001'.
17:51:28.665| |BasketMessageAdapter|Connected to 'Interactive Brokers: Адрес = 10.110.77.119:4001'.
17:51:28.705|Debug |IBSocket |Msg: ManagedAccounts
17:51:28.708| |Connector |Создан новый портфель U1656518.
17:51:28.710| |Connector |Создан новый портфель U1904738.
17:51:28.710| |Connector |Создан новый портфель U2035683.
17:51:28.710| |Connector |Создан новый портфель U2157419.
17:51:28.710| |Connector |Создан новый портфель U2485265.
17:51:28.710|Debug |IBSocket |Msg: NextOrderId
17:51:28.710|Debug |IBSocket |Msg: ErrorMessage
17:51:28.710|Error |Connector |System.InvalidOperationException: Сообщение 'Portfolio,T(L)=2018/09/14 17:51:28.710,Name=' привело к ошибке обработки. ---> System.ArgumentNullException: Значение не может быть неопределенным.
Имя параметра: name
в StockSharp.Algo.Connector.GetPortfolio(String name, Func`2 changePortfolio)
в StockSharp.Algo.Connector.OnProcessMessage(Message message)
--- Конец трассировки внутреннего стека исключений ---
17:51:28.713| |IBSocket |Market data farm connection is OK:cashfarm
17:51:28.713|Debug |IBSocket |Msg: ErrorMessage
17:51:28.713| |IBSocket |Market data farm connection is OK:usfarm
17:51:28.713|Debug |IBSocket |Msg: ErrorMessage
17:51:28.713| |IBSocket |HMDS data farm connection is OK:ilhmds
17:51:28.713|Debug |IBSocket |Msg: ErrorMessage
17:51:28.713| |IBSocket |HMDS data farm connection is inactive but should be available upon demand.euhmds
17:51:28.713|Debug |IBSocket |Msg: ErrorMessage
17:51:28.713| |IBSocket |HMDS data farm connection is OK:ushmds
17:51:28.713|Debug |IBSocket |Msg: NewsProviders
17:51:28.713|Debug |IBSocket |Msg: FamilyCodes
17:51:28.714|Debug |IBSocket |Msg: MktDepthExchanges
17:51:28.715|Debug |IBSocket |Msg: CurrentTime
17:51:28.730| |Connector |Disconnect
17:51:28.737| |BasketMessageAdapter|Disconnecting 'Interactive Brokers: Адрес = 10.110.77.119:4001'.
17:51:28.740| |BasketMessageAdapter|Disconnected from 'Interactive Brokers: Адрес = 10.110.77.119:4001'.

После этого невозможно отправлять приказы и получать информацию по инструментам (очевидно).

Использую IB Gateway, Build 963.3m, Dec 20, 2017 10:15:55 AM.

Как это можно исправить?



Спасибо:




7 Ответов
Support

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


Добрый день

Пожалуйста проверьте наличие ошибки на ночной сборке https://yadi.sk/d/VcRO8bj83a4YWK
Спасибо:

Николай Кривенко

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


Support Перейти
Добрый день

Пожалуйста проверьте наличие ошибки на ночной сборке http://yadi.sk/d/VcRO8bj83a4YWK


Добрый день, проверил.

Теперь подключается, но на LookupSecurity все еще никак не реагирует (событие LookupSecuritiesResult не вызывается).

Еще в логах заметил вот что:
14:09:49.121|Error |Connector |System.InvalidOperationException: Неизвестный тип трейдера 0.
в #=zlDmaKW5ClIzB8hXkjI2SKHqpz5B4RqzFtrzi6H0=.#=zenvKbBo=(#=zK_2OqbPtF0VkzkbB3KRamPzgw1YnsKta2w== #=zaIhkHVE=)
в StockSharp.InteractiveBrokers.InteractiveBrokersMessageAdapter.#=zMNRF2QweZK9Y(#=zK_2OqbPtF0VkzkbB3KRamPzgw1YnsKta2w== #=zaIhkHVE=)
в StockSharp.InteractiveBrokers.InteractiveBrokersMessageAdapter.#=z9BACIog=(#=zK_2OqbPtF0VkzkbB3KRamPzgw1YnsKta2w== #=zaIhkHVE=, #=zlBGq5YRROZwyZ7RiXJgGOk60CDxqTBX8dA== #=zWex0Lso=)
в StockSharp.InteractiveBrokers.InteractiveBrokersMessageAdapter.#=zILxpl22CIQHqiW8C5G62uJg=()
Автор топика
Спасибо:

Support

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


Данная ошибка не влияет на получение инструментов.

Пожалуйста установите логирования коннектора на уровень Verbose и пришлите файл. Возможно вы не заполняете необходимые поля для запроса поиска.
Спасибо:

Николай Кривенко

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


Высылаю логи.
Автор топика
Спасибо:

Support

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


Добрый день

Пожалуйста возьмите обновление ещё раз. Исправлены предупреждения у заявок.

Скорее всего вы не получаете информацию об инструментах потому что ваш запрос уходит в Квик. В лог файлах нет информации о поиске инструментов. Попробуйте удалить Квик подключение или же в методе LookupSecurities передайте адаптер ИБ.
Спасибо:

Николай Кривенко

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


Добрый день,

На этот раз получилось, когда я удалил Quik-подключение. Проблема в том, что мне нужны и Quik-подключения, и IB. Я попробовал передать в LookupSecurities вторым параметром адаптер IB, но у меня опять не вызвался LookupSecuritiesResult. Вызываю вот так:

Код

var ibAdapter = ((Connector) Trader).Adapter.InnerAdapters.First(x => x.Name == "Interactive Brokers");
Trader.LookupSecurities(filterSec, ibAdapter);


Логи в приложении.
Автор топика
Спасибо:

Support

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


А вы обновили файлы? В логах присутствуют все те же ошибки.

Могли бы вы прислать так же код создания фильтра? Какие параметры заполняются?
Спасибо:


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

loading
clippy