Автоматизация маршрутизации и передачи торговых поручений (заявок), сформированных в соответствии с параметрами, заданными лицензиатом (торговые алгоритмы, лимиты, риск-параметры).
Платформа «QAnt»
Система автоматизации формирования и передачи торговых поручений на финансовых рынках по заданным алгоритмам или в ручном режиме
- Инвестиционным брокерам
- Частным компаниям
- Брокерским компаниям
- Частным лицам

Возможности QAnt
Автоматизация
Больше бирж
Масштабирование на различные биржи, предоставляющие API, для охвата большего количества подключений и учётных записей.
Умный рост
Увеличение количества учётных записей, счетов и торговых логик без привлечения дополнительных сотрудников для обеспечения процессов формирования, передачи и сопровождения торговых поручений (заявок).
Функциональные характеристики
-
Автоматизированное формирование, маршрутизация и передача торговых поручений (заявок) на финансовых рынках, включая подключение к торговым площадкам, предоставляющим API.
-
Добавление подключений по API с использованием учётных данных и параметров доступа, предоставляемых торговой площадкой или брокером.
-
Автоматическое восстановление после разрыва связи (переподключение).
-
Журналирование событий и операций. Сохранение истории статусов торговых поручений (заявок), балансов и позиций в базе данных.
-
Подключение учётных записей/счетов к наборам параметров торговых алгоритмов с различными характеристиками в зависимости от выбранных параметров риска и торговой площадки.
-
Добавление и обновление наборов параметров торговых алгоритмов, включая изменение технических параметров их работы.
-
Переназначение учётной записи/счёта на другой набор параметров торговых алгоритмов. Приостановка формирования и передачи торговых поручений (заявок) по выбранной учётной записи/счёту.
-
Ведение справочных показателей по портфелю или учётной записи за выбранный период (в т.ч. HWM)
-
Система автоматического мониторинга инцидентов, включая обрывы связи, отклонения от расчётного поведения алгоритмов, резкое изменение балансов.
-
Система риск-контроля в различных модулях для приостановки формирования и передачи торговых поручений (заявок) торговыми алгоритмами.
Технические средства QAnt
Исключение ошибок
написан на языке программирования Python.
СУБД PostgreSQL
Хранение информации с бирж, настройки портфелей и данные системы.
Место хранения
— сервера в Дата-центре.
Компиляция программы – не требуется
выполняется в режиме интерпретатора.
Физический адрес нахождения
технических средств хранения кода и данных программы: GitHub (код), Дата-центры.
Архитектура системы
Программное обеспечение включает в себя графическую оболочку (терминал) для удобства администрирования учётных записей и счетов, сопровождения заявок, управления параметрами алгоритмов, а также обширную внутреннюю часть:
- Модули обработки данных от бирж и преобразования внутренних команд.
- Модули работы с базой данных.
- Распределенную систему мониторинга инцидентов.
- Модуль оповещения об инцидентах и состояниях счетов.
- Библиотеку торговых роботов.
Для возможности гибкого развития системы путём добавления новых модулей, а также из-за ограничений Python на использование CPU было принято решение использовать модульную (микросервисную) архитектуру с обменом данными между модулями с помощью сокетов ZeroMQ.
qant_terminal — графический интерфейс для администрирования счетов и учётных записей, сопровождения заявок и портфелей алгоритмов, а также отображения статусов системы и результатов исполнения поручений, написан на языке программирования Python.
qant_lib — общая библиотека для всех модулей и их совместного взаимодействия, написана на языке программирования Python.
qant_connector — ядро всей системы (далее “коннектор”), содержит модули взаимодействия с бэкендами бирж (feeds — обработка публичных данных, executors — обработка приватных данных), которые приводят все данные к стандартизированному виду системы QAnt, а также модуль order_manager, который обеспечивает корректное взаимодействие роботов (трейдеров) с соответствующими feeds и executors, написано на языке программирования Python.
qant_managers — модули управления роботами, предоставления информации о состояниях роботов и подключений, балансах, позициях, заявках из коннектора в терминал и другие модули, написаны на языке программирования Python.
qant_telegram_bot — модуль рассылки информации об инцидентах, состояний счетов и учётных записей пользователей в чаты мессенджеров Telegram и Slack, написан на языке программирования Python.
qant_bots — библиотека с примерами торговых роботов и индикаторов, написана на языке программирования Python.
Для удобства использования подключение различных бирж выполнено в виде подключаемых модулей. Таким образом, отсутствует необходимости загружать сразу все модули.
Все модули выполняют похожие функции — получение публичных рыночных данных (потоки обезличенных ордеров, данные о совершённых биржевых операциях, транзакциях, свечные данные), данных биржевого аккаунта (состояние счетов, ордера/заявки, результаты исполнения/статусы) и других данных, которые можно получить посредством запросов к API биржи.
Зависимости
Платформа обменивается сообщениями с API бирж и зависит от них.
Также она генерирует сообщения об ошибках при их возникновении и включает в себя систему риск-менеджмента, поэтому использует сервис рассылки сообщений.
Кроме того, осуществляется связь с торговыми ботами при помощи передачи сообщений.
И наконец, платформа связана с аппаратной частью, на которой выполняются вычисления, хранятся и передаются данные.
qant_api_ib — клиент API для подключения к международным брокерам, поддерживающим протокол FIX/TWS-API.
qant_api_cgate — клиент для подключения к Московской бирже по протоколу подключения Plaza II, написан на языке программирования Python. Пройдена регистрация ПО в соответствии с требованиями ММВБ, добавлено в реестр программных продуктов, разрешенных к использованию на Московской бирже.
qant_api_freedom — клиент для подключения к брокерам, использующим аналогичный протокол.
Требования к эксплуатации системы
Установка и эксплуатация системы
ПО (терминал) для администрирования учётных записей и сопровождения торговых поручений системы QAnt — Скачать
Запуск:
- переместить директорию .ssh в домашнюю директорию пользователя
- исправить путь до приватного ключа SSH в файле settings.ini (key_file)
- запустить qterminal
- ввести логин и пароль
Подробнее описано в файле — Требования к эксплуатации системы
Минимальные системные требования
- Экран: Разрешение 1024х768 px
- Процессор: Intel/AMD-совместимый x64, с частотой 2 ГГц
- Видеокарта: 512 Мб
- ОЗУ: 75 Мб
- Объем программы (место на диске) – 130 МБ
Резервное копирование данных
Ежедневное резервное копирование данных включает в себя:
- Создание резервной копии файлов Системы
- Создание резервных копий БД
Настройка регулярного резервного копирования БД выполняется с использованием специализированных утилит СУБД и инструментов ОС.
Жизненный цикл ПО
Поддержание жизненного цикла Системы обеспечивается за счет её сопровождения и проведения обновлений в соответствии с собственным планом разработки.
Поддержка и сопровождение
- Актуализацию (обновление) версии ПО
- Обработку запросов от пользователей и устранение замечаний, связанных с некорректной работой ПО
- Консультации по работе с ПО (консультации сотрудников и администраторов по вопросам, связанным с функциональными возможностями ПО, эффективным использованием ПО, обслуживанием и администрированием ПО и т.д.)
- Актуализацию пользовательской документации ПО
Устранение неисправностей
Неисправности, выявленные в ходе эксплуатации Системы, могут быть исправлены следующим образом:
- предоставление пользователю архива с файлами обновлённой системы (Терминал) посредством электронной почты, либо других средств цифровой коммуникации
Процесс разработки
- Разработка новых модулей и функций
- Развитие и оптимизация текущих модулей и функций
- Комплексное тестирование (Unit-тестирование, интеграционное, регрессионное и нагрузочное тестирование)
- Исправление найденных ошибок
- Разработка документации и инструкций
Модернизация/обновление ПО
Выпуск новых версий осуществляется в соответствии с собственным планом разработки, а также в случае выявленных проблем в ходе эксплуатации программного обеспечения у конечных потребителей
Правила лицензирования системы
Программное обеспечение
Поставляется в виде архива с исполняемым файлом. Для запуска требуется верификация ключей доступа с администратором.
Лицензионная политика
Определяет права заказчика по использованию функционала системы и осуществляется путём администрации ключей.
Стоимость лицензий
Стоимость лицензий рассчитывается индивидуально и предоставляется по запросу на почту info@qhill.store
Руководство пользователя
Описание интерфейса, основных разделов и функций системы.