使用说明
项目简介
本项目 'QMT-MCP-Server' 是一个 MCP (Model Context Protocol) 服务器的实现,旨在为大型语言模型 (LLM) 提供股票交易的后端支持。它通过对接迅投 QMT 交易系统,将股票交易的核心功能以标准化的 MCP 协议暴露出来,使得 LLM 客户端能够安全、便捷地调用这些功能,从而实现自动化交易或辅助交易等应用场景。 请注意,本项目仅供学习交流使用,实盘交易需谨慎评估风险。
主要功能点
- 账户信息查询: 支持查询股票账户的资产总览,包括可用资金、持仓市值等。
- 持仓信息查询: 能够获取当前账户的股票持仓明细,包括持仓数量、成本价、盈亏等信息。
- 股票下单: 允许通过指定股票代码、价格和数量进行买入或卖出操作。
- 订单撤销: 支持根据订单编号撤销未成交的委托订单。
安装步骤
- 安装 uv 包管理器: 按照 uv 官方文档 的指引,安装 Python 包管理工具 'uv'。
- 克隆仓库: 将 'qmt-mcp-server' 仓库克隆到本地:
git clone https://github.com/nnquant/qmt-mcp-server - 安装依赖: 在项目根目录下,使用 'uv' 安装项目依赖:
uv sync - 运行服务器: 在项目根目录下,使用 'uv' 运行 'main.py' 启动 MCP 服务器:
首次运行时,服务器会提示您输入 MiniQMT 所在路径和资金账户,配置信息将会保存到 'xttrader.yaml' 文件中。uv run main.py
服务器配置
MCP 服务器启动后,LLM 客户端需要配置连接信息才能与之通信。以下是 MCP 客户端(例如 Cursor)所需的服务器配置 JSON 示例:
{ "mcpServers": { "qmt-mcp-server": { // 服务器名称,客户端用于识别和引用 "url": "http://localhost:8001/sse" // MCP 服务器的 SSE 接口地址,默认端口为 8001 } } }
配置说明:
- 'serverName': 自定义的服务器名称,例如 'qmt-mcp-server',在客户端中用于引用此服务器。
- 'url': MCP 服务器提供的 SSE (Server-Sent Events) 接口地址。默认情况下,'qmt-mcp-server' 运行在 'http://localhost:8001/sse'。
请将以上 JSON 配置添加到您的 MCP 客户端配置文件中,确保 'serverName' 和 'url' 与实际运行的 'qmt-mcp-server' 服务器一致。
基本使用方法
配置完成后,您可以在 MCP 客户端中使用自然语言指令调用服务器提供的交易功能。以下是一些指令示例:
- 查询账户资产:'请帮我查询我的账户资产'
- 查询持仓信息:'请帮我查询我的账户持仓'
- 买入股票:'以10元的价格购买100股600000.SH股票'
- 卖出股票:'以11元的价格卖出100股平安银行股票'
- 撤销订单:'请撤销委托编号为123456的订单'
注意事项:
- 确保已安装并启动迅投 MiniQMT 客户端,并开通交易权限。
- 股票代码需要包含交易所后缀,如 '.SH' 或 '.SZ'。
- 使用股票名称下单时,请注意部分大模型可能无法正确转换为股票代码,建议使用股票代码下单。
- 实盘交易前务必仔细核对账户信息和交易指令,谨慎操作。
信息
分类
商业系统