Skip to main content
Glama
peppaboar95

workbuddy-qmt-bridge

by peppaboar95

WorkBuddy-QMT Bridge

Собственный мост между WorkBuddy/MCP и встроенным Python в QMT, работающий по принципу «отказ при сбое» (fail-closed).

Важное предупреждение о рисках

Данный проект способен отправлять заявки на симуляционный или реальный торговый счёт и не является инвестиционной рекомендацией, а также не гарантирует прибыль. Режим по умолчанию — OBSERVE_ONLY. Любое развёртывание на реальные средства должно сначала пройти приёмочные испытания на целевой версии QMT, у брокерского шлюза, по полям счетов, отчётам об исполнении заявок, отмене заявок и процедурам восстановления. Примеры сопоставлений в репозитории нельзя использовать напрямую на реальном рынке.

Текущая версия

  • Версия: 0.3.0

  • Этап: завершена программная панель управления P1 LIMITED_AUTO

  • Инструменты MCP: 29

  • Python: для Worker требуется версия 3.10 или выше

  • Адаптер QMT: совместим со встроенной средой Python 3.6 в QMT

  • Границы выполнения: привязка только к 127.0.0.1, зависимость от xtquant отсутствует

Домашняя страница проекта: https://github.com/peppaboar95/workbuddy-qmt-bridge

«Завершение P1» означает лишь, что структурная авторизация, резервирование лимитов, конечный автомат, автоматический выключатель и повторная проверка адаптера реализованы на стороне ПО и прошли локальные тесты. Это не означает, что какой-либо реальный денежный шлюз прошёл приёмку.

Related MCP server: lighter-mcp

Четыре режима

Режим

Возможен ли вызов отправки заявок в QMT

Требования к авторизации

OBSERVE_ONLY

Нет

Нет; безопасный режим по умолчанию

SIM_SIGNAL

Да, только на подтверждённый вручную симуляционный шлюз

Переключение режима на локальной машине, подпись сопоставления и прохождение контроля рисков

MANUAL_LIVE

Да

Переключение режима на локальной машине; утверждение каждой заявки или временная авторизация счёта на 1–60 минут

LIMITED_AUTO

Да, повторная отправка заявок в пределах разрешённого периода

Переключение режима на локальной машине; структурная лицензия стратегии P1 на тот же торговый день

SIM_SIGNAL — это не «только генерация сигналов без отправки заявок». При ошибочном подключении к реальному денежному шлюзу он всё равно может вызвать passorder, поэтому необходимо вручную проверять счёт и шлюз.

Безопасность конструкции

  • Двухэтапная фиксация preview_trade и submit_trade_intent;

  • При отправке повторно выполняются все жёсткие проверки рисков и сравнивается отпечаток решения о рисках;

  • Двусторонняя проверка Worker и адаптера QMT: счёт, режим, подпись, TTL и поколение авторизации;

  • Лицензия LIMITED_AUTO привязана к счёту, инструменту, действию, версии стратегии/правил, торговому окну, типу заявки и многоуровневым лимитам;

  • Атомарное резервирование лимитов: ограничение на одну заявку, совокупную сумму, количество заявок, частоту, параллелизм, позиционный риск, просадку и последовательные сбои;

  • Состояния PRE_SUBMIT или SUBMIT_CALLED не отправляются повторно автоматически; при неизвестном результате остаётся SUBMIT_UNKNOWN;

  • После срабатывания автоматического выключателя восстановление возможно только на локальной машине, с безопасным возвратом в OBSERVE_ONLY;

  • Автоматическая торговля с кредитным плечом по умолчанию отключена; новые кредитные обязательства требуют дополнительного явного разрешения и приёмочных испытаний на месте.

Установка

Обычным пользователям рекомендуется сначала загрузить установочный ZIP, отдельный хэш ZIP и общий список хэшей из GitHub Releases:

  • workbuddy-qmt-bridge-0.3.0.zip

  • workbuddy-qmt-bridge-0.3.0.zip.sha256

  • SHA256SUMS.txt

После проверки хэшей распакуйте ZIP и дважды щёлкните «首次安装与配置.cmd». При необходимости ручной установки wheel загрузите:

  • workbuddy_qmt_bridge-0.3.0-py3-none-any.whl

Windows PowerShell:

python -m pip install .\workbuddy_qmt_bridge-0.3.0-py3-none-any.whl
workbuddy-qmt setup

Разработка и установка из исходного кода:

git clone https://github.com/peppaboar95/workbuddy-qmt-bridge.git
cd workbuddy-qmt-bridge
python -m pip install -e .

От режима «только чтение» к торговле

  1. Запустите setup для создания локальной конфигурации, ключей, токена Worker и изолированных каталогов счетов;

  2. Разверните сгенерированные qmt_adapter.py и qmt_adapter.json в соответствующие экземпляры стратегий QMT;

  3. Оставайтесь в OBSERVE_ONLY и завершите сбор полей heartbeat, счёта, позиций, заявок, сделок и рыночных данных;

  4. На целевом симуляционном шлюзе завершите проверку сопоставления P0 и подпишите Profile;

  5. В SIM_SIGNAL завершите сверку минимального количества, отправки заявок, исполнения, отмены, перезапуска и восстановления при неизвестном результате;

  6. Для сценариев с реальными средствами сначала проведите приёмку малых сумм в MANUAL_LIVE;

  7. Создавайте лицензию LIMITED_AUTO P1 только при отсутствии блокирующих проблем в readiness и чётких границах стратегии.

Временная авторизация MANUAL_LIVE на 1–60 минут освобождает только от ручного утверждения каждой заявки; каждая заявка по-прежнему должна пройти повторную синхронизацию, предпросмотр и жёсткие проверки рисков. Лицензия LIMITED_AUTO действует максимум 720 минут, но не может пересекать торговый день и ограничена полными границами стратегии и совокупным бюджетом.

Процесс LIMITED_AUTO P1

  1. На локальной машине переключите Worker и соответствующий адаптер в LIMITED_AUTO;

  2. Вызовите check_limited_auto_readiness и убедитесь, что очередь, снимок, heartbeat, dead-letter и SUBMIT_UNKNOWN не имеют блокирующих проблем;

  3. Покажите оператору полную политику лицензии и после явного подтверждения вызовите authorize_limited_auto;

  4. Автоматические задачи продолжают выполнять синхронизацию, предпросмотр и отправку для каждой сделки;

  5. Используйте get_limited_auto_status для наблюдения за оставшимся временем, количеством заявок, бюджетом сумм и причинами приостановки;

  6. При срабатывании триггеров здоровья, просадки или последовательных сбоев происходит автоматическая приостановка; после восстановления условий возобновление возможно только через явный вызов resume_limited_auto;

  7. По завершении вызовите revoke_limited_auto. Отзыв лицензии не отменяет автоматически уже отправленные на брокерской стороне заявки.

Проверено и не проверено

Локальные инкрементальные тесты данной версии охватывают:

  • миграцию схемы с v1 на v2;

  • структурную лицензию P1;

  • предпросмотр, отправку и атомарное занятие лимитов;

  • привязку версии стратегии;

  • приостановку, возобновление и ротацию поколений авторизации;

  • повторную проверку защиты адаптера от подделки.

Всё ещё требуется выполнить в целевой среде:

  • матрицу возможностей реального QMT и брокера;

  • отчёты об исполнении заявок, сделках, примечаниях и отмене на реальном денежном шлюзе;

  • отработку Windows ACL, резервного копирования, восстановления и SUBMIT_UNKNOWN;

  • шесть типов действий по кредитному счёту, размерности полей, квалификацию, лимиты и правила обязательств;

  • приёмочные испытания малых сумм вручную на реальном рынке.

Данные и конфиденциальность

runtime, база данных, WAL/SHM, журналы, очереди, журналы исполнения, подписанные Profile, ключи, токены Worker, номера счетов и локальная конфигурация MCP не должны загружаться в репозиторий или прикрепляться к Issue. Диагностические материалы должны быть предварительно деидентифицированы.

Документация

  • Релиз и установка: docs/README-RELEASE.zh-CN.md

  • Описание проверки P1: docs/P1-VALIDATION.zh-CN.md

  • Примеры конфигурации: examples/README.md

  • Политика безопасности: SECURITY.md

Лицензия

Данный проект распространяется под лицензией MIT License, подробности см. в LICENSE.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    B
    quality
    C
    maintenance
    A production-grade MCP server for FIX protocol trading operations that enables order management, session repair, and algorithmic execution. It provides specialized tools for monitoring session health, managing ticker reference data, and executing complex trading scenarios.
    22
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    A portable MCP server that exposes Lighter trading to any MCP-capable agent with safety-first features like mode-based gating, two-step confirmations, and audit logging.
    1
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides an MCP server for Interactive Brokers trading operations, managing an IBKR Gateway Docker container and exposing trading functionality through REST API and MCP endpoints.
    6
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Provides read-only MCP tools for market snapshots, position risk, order reconciliation, and daily report previews with deterministic financial calculations, evidence chains, and audit trails.
    MIT