Блог им. _Konstantin_

Коннектор QUIK на С++

Господа алготрейдеры, подскажите кто реализовывал коннектор к QUIK на С++.
Примерную схему коннектора понимаю как реализовать, но нет навыка в LUA, а время терять не хочется, может кто проконсультирует. В идеале нужна консультация под ОС Linux, но можно и под Windows, главное на С++.
★4
26 комментариев
Press, посмотрел на обоих ресурсах, не нашел там ни чего ((
avatar
я настроил таблицу инструментов и выгрузку их по dde в простенький сервис который пишет в локальную базу. а уже прога которая занимается какими-то рассчетами отдельная просто дергает данные из базёнки раз в 15 минут. можно на линухе поднять какую-нибудь базу. настроить из таблички с инструментами выгрузку в эту базу через odbc. а в линухе уже дергать данные из базёнки. тут я не знаю есть ли там триггеры. тут тебе надо эксперта искать кто проделывал подобный фокус
avatar
есть, DDE не хочется использовать, нужно LUA
avatar
Константин, самое первое что нагуглил github.com/keplerproject/luasql принцип тот же. на каждое изменение отловленное через lua (тут подробней quikluacsharp.ru/quik-qlua/poluchenie-dannyh-iz-tablits-quik-v-qlua-lua/) отправляешь всё в базу. а уже к базе у тебя анализатор подключен.
avatar
есть, спасибо ))
avatar
Константин, не за что. но я так не делал. стараюсь не заморачиваться. уж если будет выхлоп то заморочусь или вообще куплю fix/fast и можно будет с линуха и принимать данные и отправлять заявки.
avatar
есть, fix/fast вещь интересная, но пока не хочется тратить на это денег, нужно сперва коннектор к QUIK сделать ))
avatar
Константин, возможно здесь найдете что-то интересное для себя:http://www.bot4sale.ru/download-categories/2012-06-13-15-10-36.html
avatar
Сергей Миллер, спс, обязательно посмотрю, сейчас занят пока Linux интерфейсом
avatar
возможно поможет библиотека trans2quik.dll
сам не юзал, что и как не знаю, но скорее всего почитать стоит
avatar
Андрей К, она для торговых транзакций, данные по ней не получить
avatar
Константин, появился квик под Linux?
avatar
yurikon, нет, но его там можно использовать в wine
avatar
Константин, спасибо, буду знать теперь
avatar
подумайте нужно ли оно вам именно на ++-ах. если таки нужно, то нужно ли оно для Квика или может под фикс или плазу…
avatar
Изя Квикович, Plaza2 только для срочного рынка, не совсем то, по FIX/FAST позже к этому вернусь ))
avatar
 я кстати в свое время из lua кидал данные в приложение по сокету. Я думаю, в вашем примере, это одно из решений, здесь хоть какая то кроссплатформенность будет. То есть будет гораздо легче сразу стартануть и под Linux. Остальные возможные методы обмена информации привязываются все таки к Windows
avatar
стоит почитать про Lua
у неё есть возможность загружать dll
в dll соответственно можно работать с объектами, классами и функциями lua как с обычными С.
более того, можно в  этой C-dll написать callback для всех Lua событий и зарегать его «как родной» lua, получив выигрыш в скорости. т.к. lua в quik — интерпретируемый язык, увы.

по своей структуре — Lua — это машинка по работе со стеком, автомат. в стек грузятся аргументы, даже названия функций.
в случае с объектами, туда же грузятся указатели «self»

для обмена данными IPC quik — робот, можно использовать pipe, он (pipe) используется и внутри trans2quik.dll.
при этом, даже если quik будет под linux, он будет использовать Win32API, т.е. и dll'ка будет обычной Win32API, та, которая загружается в quik.

стоит ли эта овчинка выделки — решать вам самим, т.к. задержка на получение данных через квик порядка 200мсек, примерно столько же идёт регистрация заявки на бирже.
это задержки самого квика, уменьшить которые не получится (только расположив его ближе к серверу брокера, и подключив к другому серверу брокера)
avatar

ПBМ, насчет библиотек в Linux все просто, исходник компилируется в winelib, а дальше обычная работа как с библиотеками в Linux

Вот насчет скорости не совсем понял, если расположить QUIK терминал на коло брокера, который в свою очередь находится на коло биржи, то задержки все равно будут более 200 мс? Мне в техподдержке Открытие сказали совершенно другие цифры, при этом пообещали тестовый доступ для пробы.

avatar
Константин, задержки что я привёл — это обычный доступ через интернет. в колокации должно быть конечно сильно быстрее.
avatar
Константин, интересно насколько большой overhead при работе с квиком через wine
и вообще посравнивать квик под вин и под wine
дело в том что меня тут расстроили после перехода на Windows 10 — официальную OEM Proffessional лицензию нельзя использовать на «сервере» — т.е. машине, к которой только удалённый коннект. Бред какой-то, но так в лицензии написано.
На майкрософтовском форуме меня оскорбили прямо в лучших чувствах, назвав пиратом, за такое вот использование купленной Windows.
После чего захотелось перевести сервер на Linux. И может быть получить деньги обратно.
avatar
www.finam.ru/howtotrade/tconnector/ в разы проще и удобнее мучений с квиком. и бесплатно.
avatar
kapodes, не у всех есть финам =). Тем более Константин уже написал, что с Открытием разговаривает.
avatar
Андрей К, я сказал удобную альтернативу. Дальше уже топикстартеру решать.
avatar

теги блога Константин

....все тэги



UPDONW
Новый дизайн