Skip to content

robot-aquila/wquik

Repository files navigation

Проект JWQuik является частью проекта Aquila (автоматизация биржевой торговли).

Актуальный продукт выражен в двух библиотеках: JQTrans И jddesvr. Все необходимые компоненты собираются автоматически. Данные проекты содержат реализацию низкоуровневых функций и java-адаптеров, необходимых для взаимодействия с терминалом QUIK. 

PREREQUISITES:
* Microsoft Visual C++ Express 2010
* java 1.6+
* apache ant 1.8+
* swig 2.0+

Для компиляции необходимо обеспечить выполнение MSBuild.exe без указания полного пути. Утилита MSBuild.exe располагается в каталоге C:\Program Files (x86)\MSBuild\12.0\Bin или в похожем каталоге, в зависимости от установленной версии Visual Studio. Добавьте путь к этому каталогу в переменную окружения PATH перед началом сборки.

Для сборки проекта необходимо выкачать его из репозитория, зайти в корневой каталог проекта и в консоли выполнить команду ant. После успешной сборки проекта, необходимые для сборки драйвера терминала QUIK артефакты будут размещены в локальном репозитории maven.

Сборка отладочной версии не предусмотрена.


Описание компонентов

Проект jddesvr - реализация DDE-сервера для использования из java програм с приемом данных в Xlt-формате. DDE-сервер используется для организации приема данных из таблиц QUIK. Выходные файлы:

jddesvr.dll, jddesvr.jar - файлы исполняемого кода
jddesvr-javadoc.jar - документация к пакету jddesvr


Проект JQTrans - реализация механизма взаимодействия с QUIK посредством транзакций через QUIK API. Позволяет создавать подключения к любому количеству терминалов QUIK из программ на java (без ограничений по количеству инстансов и ограничений в связи с одноименным модулем DLL). Кроме транзакций, позволяет наблюдать изменения статуса подключения к терминалу QUIK и его подключение к серверу. Выходные файлы:

JQTrans.dll, JQTrans.jar - файлы исполняемого кода
JQTrans-javadoc.jar - документация к пакету JQTrans





--------------------------------------------------------------------------------
ВНИМАНИЕ: На момент 2013-01-28 подпроекты СWQuik, CWQuik.ManualTest, CWQuik.Tests, JWQuik, JWQuik.Tests, QuikCallback не предназначены для практического использования. Порядок сборки JWQuik приводится в качестве исторической справки.

Порядок сборки JWQuik:

1. Собрать JWQuik/java и экспортировать в build/JWQuik.jar 
2. В MSVC открыть WQuik.sln и скомпилировать проект в Release конфигурации!!!
3. Зайти в build и запустить из консоли тесты

CWQuik.Test
JWQuik.Tests
core.Tests
dde.Tests
ddesvr.Tests
xltable.Tests

Результирующие файлы в build:

JWQuik.dll - JNI библиотека
JWQuik.jar - Java-классы библиотеки
QuikCallback.dll - библиотека хендлера обратного вызова для TRANS2QUIK.dll
TRANS2QUIK.dll - DLL интерфейс к QUIK-у

ddesvrcb.dll - библиотека хендлера обратного вызова для jddesvr
jddesvr.dll - JNI библиотека интерфейса DDE сервиса
jddesvr.jar - Java-обертка интерфейса DDE сервиса


--------------------------------------------------------------------------------
Tips:

Увеличить частоту выгрузки стакана по DDE можно прописав в info.ini
[excel]
price-timeout=333
где 333 время в мс от 10 до 10000


В корне репа в tools лежит прога, которой можно посмотреть функции, экспортируемые DLL.

Если не линкуются проекты с gtest, то надо убедиться, что и в тестируемом и в проекте тестов на вкладке Configuration Properties -> C/C++ ->Code Generation выбрано Runtime Library Multi-Threaded (/MT)


Что бы оперативнее получать изменение в таблице текущих параметров, нужно уменьшить период опроса через меню Настройки -> Основные -> Получение данных -> Интервал обновления данных с текущим состоянием


Fast Table Format (XlTable)

Market Depth - биржевой стакан

При импорте стакана из квика необходимо выбрать вид стакана: слева-сверху предложения, снизу-справа спрос. Иначе не получится определить где биды а где аски. 

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages