闲社服务运行正常AI智能体自动化平台
x

XtQuant量化SDK

技能标识:xtquant

XtQuant QMT Python SDK - 集成行情数据(xtdata)和交易接口(xttrade),支持A股、期货、期权等中国证券市场。

作者:admin | 来源记录:ClawHub
登记来源
ClawHub
版本
V 1.0.3
检测标记
后台标记通过
免费
免费获取
1
收藏
来源与检测标记为平台登记信息,并不代表已展示可复核的检测报告。使用前请核对版本、依赖和所需权限,建议先在隔离环境中运行。
概述
安装方式
版本历史

XtQuant量化SDK

XtQuant(迅投QMT Python SDK)

XtQuant是QMT/miniQMT量化交易平台的Python SDK,由迅投科技(ThinkTrader)开发。它包含两个核心模块:

  • - xtdata — 行情数据模块:实时行情、历史K线、Tick数据、Level2数据、财务数据、板块管理
  • xttrade — 交易模块:下单、持仓/订单查询、账户管理、融资融券、期货/期权、智能算法

⚠️ 需要在Windows上运行miniQMT或QMT客户端。XtQuant通过本地TCP连接到QMT进程。您需要券商开通QMT/miniQMT权限。

安装

bash
pip install xtquant

也可以从官网下载:http://dict.thinktrader.net/nativeApi/download_xtquant.html

架构概述

您的Python脚本(任意IDE,任意Python版本)
↓ (xtquant SDK, pip install)
├── xtdata → miniQMT(行情数据服务,TCP连接)
└── xttrade → miniQMT(交易服务,TCP连接)
↓
券商交易系统

核心模块参考

模块导入方式用途
xtdatafrom xtquant import xtdata行情数据:K线、Tick、Level2、财务、板块
xttrader
from xtquant.xttrader import XtQuantTrader | 交易:下单、查询、回调 | | xtconstant | from xtquant import xtconstant | 常量:订单类型、价格类型、市场代码 | | xttype | from xtquant.xttype import StockAccount | 账户类型:STOCK、CREDIT、FUTURE |

快速入门 — 行情数据

python
from xtquant import xtdata

连接到本地miniQMT(默认:localhost)

xtdata.connect()

下载历史K线数据(首次访问前必须下载到本地缓存)

xtdata.downloadhistorydata(000001.SZ, 1d, starttime=20240101, endtime=20240630)

获取本地K线数据(返回以股票代码为键的DataFrame字典)

data = xtdata.getmarketdata_ex( [], # field_list,空列表表示所有字段 [000001.SZ], # stock_list,股票代码列表 period=1d, start_time=20240101, end_time=20240630, dividendtype=front # 复权类型:none(不复权)、front(前复权)、back(后复权)、frontratio(等比前复权)、back_ratio(等比后复权) ) print(data[000001.SZ])

实时行情订阅

python
def on_data(datas):
行情数据回调函数,接收推送的实时数据
for stock_code, data in datas.items():
print(stock_code, data)

订阅单只股票的Tick数据

xtdata.subscribequote(000001.SZ, period=tick, callback=ondata)

订阅全市场行情推送

xtdata.subscribewholequote([SH, SZ], callback=on_data)

xtdata.run() # 阻塞当前线程,持续接收回调数据

财务数据

python

首先下载财务数据到本地缓存


xtdata.downloadfinancialdata([000001.SZ])

然后从本地缓存获取财务数据


data = xtdata.getfinancialdata([000001.SZ])

可用的财务报表:Balance(资产负债表)、Income(利润表)、CashFlow(现金流量表)、


PershareIndex(每股指标)、CapitalStructure(资本结构)、TOP10HOLDER(十大股东)、


TOP10FLOWHOLDER(十大流通股东)、SHAREHOLDER(股东人数)

合约信息与板块

python

获取详细的合约信息(名称、涨跌停板、最小变动价位等)


info = xtdata.getinstrumentdetail(000001.SZ)

获取证券类型(股票/指数/基金/债券等)


itype = xtdata.getinstrumenttype(000001.SZ)

获取板块中的股票列表


stocks = xtdata.getstocklistinsector(沪深A股)

获取交易日列表


days = xtdata.gettradingdates(SH, starttime=20240101, endtime=20240630)


快速入门 — 交易

python
from xtquant import xtconstant
from xtquant.xttrader import XtQuantTrader, XtQuantTraderCallback
from xtquant.xttype import StockAccount

创建交易器实例(路径指向miniQMT的userdata_mini目录)

path = rD:\国金证券QMT交易端\userdata_mini sessionid = 123456 # 每个策略必须使用唯一的sessionid xttrader = XtQuantTrader(path, sessionid)

注册回调类以接收实时推送通知

class MyCallback(XtQuantTraderCallback): def on_disconnected(self): print(连接断开) def onstockorder(self, order): print(f订单更新:{order.stockcode} 状态={order.orderstatus}) def onstocktrade(self, trade): print(f成交更新:{trade.stockcode} {trade.tradedvolume}@{trade.traded_price}) def onordererror(self, order_error): print(f下单错误:{ordererror.errormsg}) def onorderstockasyncresponse(self, response): print(f异步下单响应:orderid={response.orderid})

xttrader.registercallback(MyCallback())
xt_trader.start()
connectresult = xttrader.connect() # 连接成功返回0

创建账户对象并订阅推送

account = StockAccount(youraccountid) xt_trader.subscribe(account) # 启用该账户的推送通知

下单:限价买入600000.SH,1000股,价格10.5

orderid = xttrader.order_stock( account, 600000.SH, xtconstant.STOCK_BUY, 1000, xtconstant.FIXPRICE, 10.5, strategy1, testorder )

成功返回order_id > 0,失败返回-1

查询持仓

positions = xttrader.querystock_positions(account) for pos in positions: print(pos.stockcode, pos.volume, pos.canusevolume, pos.marketvalue)

查询订单

orders = xttrader.querystock_orders(account)

查询资产

asset = xttrader.querystock_asset(account) print(f可用资金:{asset.cash},总资产:{asset.total_asset})

撤单

xttrader.cancelorderstock(account, orderid)

阻塞主线程,等待回调

xttrader.runforever()

股票代码格式

市场格式示例
上海A股XXXXXX.SH600000.SH
深圳A股
XXXXXX.SZ | 000001.SZ | | 北京证券交易所 | XXXXXX.BJ | 430047.BJ | | 上海指数 | XXXXXX.SH | 000001.SH(上证综指) | | 深圳指数 | XXXXXX.SZ | 399001.SZ(深证成指) | | 中金所期货 | XXXX.IF | IF2401.IF(沪深300期货) | | 上期所期货 | XXXX.SF | ag2407.SF(白银期货) | | 大商所期货 | XXXX.DF | m2405.DF(豆粕期货) | | 郑商所期货 | XXXX.ZF | CF405.ZF(棉花期货) | | 能源中心期货 | XXXX.INE | sc2407.INE(原油期货) | | 上海期权 | XXXXXXXX.SHO | 10004358.SHO | | 深圳期权 | XXXXXXXX.SZO | 90000001.SZO | | ETF | XXXXXX.SH/SZ | 510300.SH | | 可转债 | XXXXXX.SH/SZ | 113050.SH |

数据周期

tick、1m、5m、15m、30m、1h、1d、1w、1mon

支持的资产类型

资产行情数据(xtdata)交易(xttrade)
A股(沪深)
✅

标签

skill ai

通过对话安装

以下为平台配置的接入选项,并非逐项实测通过。能否安装取决于客户端支持、技能来源和运行环境:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 xtquant-1776130142 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 xtquant-1776130142 技能

通过命令行安装

skillhub install xtquant-1776130142

下载

⬇ 下载 xtquant v1.0.3(免费)

文件大小: 50.95 KB | 发布时间: 2026-4-15 15:05

v1.0.3 最新 2026-4-15 15:05
xtquant 1.0.3

- Added a demo_project directory with sample usage (README.md and demo.py).
- Updated documentation files (README.md, SKILL.md) for clarifications and improvements.
- Updated internal metadata files.
返回顶部