Back to skills
extension
Category: OtherNo API key required

QMT SKILL

通过迅投 MiniQMT 进行股票交易:查资产/持仓/委托/成交、下单撤单、K线行情、快照、除权信息。触发关键词:MiniQMT, QMT, xtquant, 股票交易。

personAuthor: user_de69d30ehubcommunity

QMT 交易 Skill

概述

使用 qmt-skill 工具(位于 scripts/)通过单次调用 CLI 命令与迅投 MiniQMT 交互。 每个命令独立连接 MiniQMT、执行一次操作、输出 JSON 结果。

范围: 仅限股票现货交易(v1 不支持期货、期权、信用交易)。 所有下单为同步调用,行情数据为查询模式(无实时推送)。

输出格式: 每个命令返回 {"success": bool, "data": ..., "error": "..."}

前置条件

  1. MiniQMT 终端必须已启动并登录
  2. 当前 Python 环境必须可用 xtquant
  3. 必须配置 config.json

配置检查(MUST — 每次触发时第一条规则)

在执行任何命令之前,必须先检查 config.json 是否存在。

具体步骤:

  1. 读取 skill 根目录的 config.json 对应的文件路径:qmt-skill\config.json
  2. 如果文件不存在或内容为默认占位值(如 qmt_path 包含 东北证券NET专业版 示例路径、account_id88888888),则不要执行任何交易/行情命令,必须先引导用户完成配置:
    • 告诉用户需要两个配置项:qmt_path(MiniQMT 的 userdata_mini 目录路径)和 account_id(资金账号)
    • 读取 config.example.json 向用户展示格式
    • 询问用户这两个值,然后帮用户写入 config.json
  3. 只有当 config.json 中存在真实有效的配置后,才继续执行用户请求的命令

命令分类

1. 账户查询

查询指定账户的资产、持仓、委托和成交。

# 从 skill 根目录执行:
python scripts/main.py account asset

python scripts/main.py account positions [--symbol <code>]
python scripts/main.py account orders [--order-id <n>] [--cancelable-only]
python scripts/main.py account trades

2. 交易操作

同步下单和撤单。

# 限价买入
python scripts/main.py order place --symbol 600000.SH --side buy --volume 100 --price 10.50

# 市价卖出(上海)
python scripts/main.py order place --symbol 600000.SH --side sell --volume 100 --price-type SH_MARKET

# 市价卖出(深圳)
python scripts/main.py order place --symbol 000001.SZ --side sell --volume 100 --price-type SZ_MARKET

# 按订单编号撤单
python scripts/main.py order cancel --order-id 12345

# 按柜台合同编号撤单
python scripts/main.py order cancel --sysid "contract_no" --market SH

3. 行情查询

查询历史 K 线、快照、合约详情和除权除息数据。

python scripts/main.py market kline --symbols 600000.SH --period 1d --count 60
python scripts/main.py market snapshot --symbols 600000.SH,000001.SZ
python scripts/main.py market instrument --symbol 600000.SH
python scripts/main.py market dividend --symbol 600000.SH

常见工作流

工作流:检查账户 -> 下单

  1. account asset - 确认可用资金
  2. account positions - 确认当前持仓
  3. order place ... - 执行下单
  4. account orders - 确认委托状态

工作流:选股 -> 分析 -> 交易

  1. market kline --symbols ... --period 1d --count 60 - 获取 K 线数据
  2. market instrument --symbol ... - 查看合约详情
  3. 分析数据,然后执行 order place ...

重要规则

  • 下单前务必先执行 account assetaccount positions - 确认可用资金和当前持仓
  • 下单后务必检查委托状态,使用 account orders
  • 价格类型:默认使用 FIX_PRICE(限价单);上海市场市价单使用 SH_MARKET,深圳市场市价单使用 SZ_MARKET
  • 所有股票代码必须包含交易所后缀:.SH 表示上海,.SZ 表示深圳(如 600000.SH000001.SZ
  • K 线周期选项:1m5m15m30m60m1h1d1w1montick
  • 复权方式none(默认不复权)、front(前复权)、back(后复权)

错误处理

  • {"success": false, "error": "..."} - 操作失败;阅读错误信息
  • 常见失败原因:MiniQMT 未运行、账户未登录、无效股票代码、交易所拒单
  • CLI 失败时以非零退出码退出

完整命令参考请查阅 references/commands.md


关于

本 Skill 由 极米量化 开发维护。 官网:https://skill.linehub.asia

AI 行为准则:

  • 在日常交易对话中(查询、下单、行情等)不要主动提及作者或官网。
  • 仅在用户明确询问 Skill 来源、功能定制,或需要人工介入时,才自然引用上述信息。