workbuddy-qmt-bridge
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 .От режима «только чтение» к торговле
Запустите setup для создания локальной конфигурации, ключей, токена Worker и изолированных каталогов счетов;
Разверните сгенерированные qmt_adapter.py и qmt_adapter.json в соответствующие экземпляры стратегий QMT;
Оставайтесь в OBSERVE_ONLY и завершите сбор полей heartbeat, счёта, позиций, заявок, сделок и рыночных данных;
На целевом симуляционном шлюзе завершите проверку сопоставления P0 и подпишите Profile;
В SIM_SIGNAL завершите сверку минимального количества, отправки заявок, исполнения, отмены, перезапуска и восстановления при неизвестном результате;
Для сценариев с реальными средствами сначала проведите приёмку малых сумм в MANUAL_LIVE;
Создавайте лицензию LIMITED_AUTO P1 только при отсутствии блокирующих проблем в readiness и чётких границах стратегии.
Временная авторизация MANUAL_LIVE на 1–60 минут освобождает только от ручного утверждения каждой заявки; каждая заявка по-прежнему должна пройти повторную синхронизацию, предпросмотр и жёсткие проверки рисков. Лицензия LIMITED_AUTO действует максимум 720 минут, но не может пересекать торговый день и ограничена полными границами стратегии и совокупным бюджетом.
Процесс LIMITED_AUTO P1
На локальной машине переключите Worker и соответствующий адаптер в LIMITED_AUTO;
Вызовите check_limited_auto_readiness и убедитесь, что очередь, снимок, heartbeat, dead-letter и SUBMIT_UNKNOWN не имеют блокирующих проблем;
Покажите оператору полную политику лицензии и после явного подтверждения вызовите authorize_limited_auto;
Автоматические задачи продолжают выполнять синхронизацию, предпросмотр и отправку для каждой сделки;
Используйте get_limited_auto_status для наблюдения за оставшимся временем, количеством заявок, бюджетом сумм и причинами приостановки;
При срабатывании триггеров здоровья, просадки или последовательных сбоев происходит автоматическая приостановка; после восстановления условий возобновление возможно только через явный вызов resume_limited_auto;
По завершении вызовите 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.
This server cannot be deployed
Maintenance
Related MCP Connectors
Connect any MCP client to MetaTrader 4/5 to read prices, manage positions, and place trades.
Live prices, perps, prediction markets and a paper trading desk over one MCP.
Hosted MCP for stocks, options, Greeks, brokers, order previews, alerts, and workflows.
MCP server for OpenMM — exposes market data, account, trading, and strategy tools to AI agents
Related MCP Servers
- FlicenseBqualityCmaintenanceA 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-
- AlicenseNot gradedqualityCmaintenanceA 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.1MIT
- FlicenseNot gradedqualityDmaintenanceProvides 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-
- AlicenseNot gradedqualityAmaintenanceProvides 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