Вопрос по коннектору для interactive brokers

Вопрос по коннектору для interactive brokers
Atom
25.06.2020
LevNNN


Адаптирую свой торговый робот для работы с interactive brokers. Подключиться удалось. Пытаюсь выставить ордер и получаю ошибку:
Error validating request:-'bN' : cause - Missing order exchange Number 1 Code 321
По всей видимости interactive brokers работает с несколькими биржами и ордеру надо как - то сообщить о бирже, на которой я хочу разместить ордер .
Что я должен сделать для устранения этой ошибки. Спасибо!

.



Спасибо:


LevNNN

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


Сам продвинулся немного вперед в решении этой задачи. Оказывается в коннекторе для interactive brokers для одной и той же акции есть две записи Boad. Так для например акций Apple есть записи - @NASDAQ и @IBRK. Сначала я выбирал вторую при подаче ордера и получал вышеуказанную ошибку. Стал выбирать - @NASDAQ, вышеуказанная ошибка прошла, но появилась новая:

Error:No security definition has been found for the request Number 1 Code 200
Что - то опять там не хватает. Схожий вопрос обсуждается вот здесь -
https://stackoverflow.co...n-has-been-found-for-th
Вопрос остается - что я должен сделать для устранения этой ошибки. Спасибо!

Спасибо:

Support

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


Добрый день

1) Необходимо сделать запрос мета-данных с такими параметрами

41864797be6be639067b777a140e4137.png

2) Далее, вам необходимо работать с инструментом, площадка у которого ISLAND. Это и есть NASDAQ.
Спасибо:

LevNNN

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


Спасибо за ответ. В своем ответе Вы показываете пример из тестовой программы SampleConnection.
К сожалению в моем случае вкладка Security пустая, никаких акций в ней нет. Наверное в этом причина моих проблем. Хотя вкладка Portfolios показывает истинные значения, т.е. показывает баланс и открытые позиции по акциям.
В настройках коннектора тест на подключение проходит успешно.
Я использую версию TWS 978.2 с.
По всей видимости я что-то не настроил.
Кстати, в моей версии TWS вкладка настройки API более расширенная, по сравнению с тем что приведена на странице в документации - https://doc.stocksharp.r...-9989-4ae52d234703.htm.

Буду очень признателен за ответ!




Спасибо:

Support

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


LevNNN
Спасибо за ответ. В своем ответе Вы показываете пример из тестовой программы SampleConnection.
К сожалению в моем случае вкладка Security пустая, никаких акций в ней нет.


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

LevNNN

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


Спасибо за ответ, но к сожалению не все так просто. Конечно, я нажимал кнопку Find и ничего не находилось. Посмотрел логи от программы SampleConnection.
Из логов видно, что я делаю запрос на акции AAPL а в ответ от IB приходит - No security definition has been found for the request Number 54076266 Code 200
Лог от программы SampleConnection прикрепил.

Connector.txt 13 KB (296)
Спасибо:

Support

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


Вы искали через расширенные нестройки с приведенными параметрами как на картинке?

Все параметры должны быть как на картинке.
Спасибо:

LevNNN

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


Спасибо!!! С расширенными настройками сработало! Удалось получить Вашу картинку.
Буду дальше разбираться.


Спасибо:

LevNNN

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


Добрый день! В продолжение вопроса. А не могли бы Вы привести кусок кода, как программно сформировать поле msg для метода Connector.LookupSecurities(SecurityLookupMessage msg);
Какие поля должны быть обязательно заполнены и как их заполнить.

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

Заранее благодарен.

Спасибо:

LevNNN

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


Оказалось все довольно просто, нужно включить вот такой код

Security criteria = new Security { Code = "M2K", Currency = CurrencyTypes.USD, Type = SecurityTypes.Future };
Connector.LookupSecurities(criteria);

Может кому-то это будет полезно.

Спасибо:


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

loading
clippy