用途:通过 XtQuant 库在外部 Python 程序中连接 MiniQMT 客户端,获取 A 股/期货/期权行情并执行量化交易。若需在 QMT 客户端内编写内置策略(ContextInfo/passorder、#coding:gbk),应改用 qmt-strategy 技能。
主要能力:行情模块 xtdata 提供 K 线、分笔、实时行情订阅、财务数据、板块分类、ETF 信息、新股申购、交易日历;交易模块 xttrader 提供股票/期货/期权下单、撤单、查询资产/委托/持仓、资金划拨、信用交易、约券。
前置准备:需安装并启动迅投极速交易终端 MiniQMT(支持模拟/实盘),Python 库安装命令 pip install xtquant,xttrader 连接需使用安装目录下的 userdata_mini 路径。
使用方式:确定需求后选择模块,xtdata 用于行情、xttrader 用于交易,再调用脚本并解析返回 JSON。常用脚本如 python scripts/market_data.py snapshot --code 600519.SH、python scripts/market_data.py kline --code 600519.SH --period 1d --count 100、python scripts/trade.py order --code 600519.SH --type buy --volume 100 --price 1800.0、python scripts/trade.py positions。核心代码通过 xt_trader.start()、connect()、subscribe(acc) 建立连接,用 order_stock 下单,order_id 为 -1 表示失败。证券代码格式如 600000.SH、000001.SZ、rb2405.SF;周期支持 tick、1m 至 1d、1w、1mon、1q、1hy、1y;复权类型含 none、front、back、front_ratio、back_ratio。
适用场景:需要外部程序获取行情、做数据分析或执行下单的量化应用。
限制:xttrader 需 MiniQMT 客户端后台运行,userdata_mini 路径错误会导致连接失败;历史数据需先用 download_history_data2 下载;Level2 数据需终端相应权限;单股订阅建议不超过 50 只,较多时用全推数据;时间参数格式为 20240101 或 20240101000000;股票账号用资金账号字符串,期货账号需指定 FUTURE;委托数量单位股票为股、债券为张、期货为手;xttrader 支持多策略但需使用不同 session_id。