量化交易正在加速进入个人投资者的视野。然而,面对专业的量化平台
,许多人要么被高昂的开户门槛
挡在门外,要么被困在封闭的开发环境中难以施展拳脚。迅投(Thinktrader)推出的miniQMT——QMT量化交易系统
的极简轻量化版本——正是在这样的背景下应运而生,它为个人量化投资者提供了一个低门槛、高灵活度的Python程序化交易接口工具。
在了解miniQMT之前,有必要先认识一下QMT。QMT(迅投极速策略交易系统)是迅投科技为量化私募、个人高净值客户等活跃交易用户量身定制的专业策略交易平台
,集行情显示、投资研究、策略编写、极速交易、风险管理等功能于一体。而miniQMT就是QMT的“极简衍生版” ,它剥离了QMT的复杂冗余功能,核心保留的是自动化交易必需的接口,专为个人量化投资者设计。
用户只需在登录QMT客户端时勾选“极简模式”,即可一键切换至miniQMT模式。切换后,原本功能繁多的客户端界面会收缩为一个简洁的窗口——专注于做“交易网关”。其核心依赖XtQuant框架:这是一个基于miniQMT衍生的Python策略运行框架,以Python库的形式对外提供行情获取和交易执行所需的API接口,是连接外部策略与miniQMT交易终端的核心桥梁。
miniQMT通过XtQuant框架中的xtdata模块提供行情数据支持。用户可以使用download_history_data()接口主动获取分钟级历史K线,也能订阅实时行情数据,满足从分钟级中低频策略到Tick级高频交易的各类需求。涵盖的数据类型包括历史和实时的K线数据、分笔数据、财务数据、合约基础信息以及板块和行业分类信息等,全面支撑量化策略的数据需求。
交易执行依赖XtQuant框架的xttrade模块。该模块封装了下单、撤单、账户信息查询、委托查询、成交查询、持仓查询等完整的交易API接口,用户可以通过Python代码灵活控制交易行为。
这是miniQMT最具吸引力的亮点。它允许用户在外部环境中编写策略,支持使用PyCharm、VSCode等主流开发工具,而非局限于QMT软件内置的编辑器。开发者可以调用用户本地安装的Python环境(3.6–3.13版本),自由安装numpy、pandas、TA-Lib等第三方库。这意味着用户能够用Pandas处理数据,用PyTorch训练模型,甚至用Flask构建一个Web控制台——策略的自由度和扩展性得到了极大的释放。
架构创新:客户端与策略引擎分离
miniQMT的核心架构革新在于“客户端 算法引擎”的分离设计。当你运行Python脚本时,xtquant库通过共享内存或Socket与miniQMT客户端通信:策略脚本调用xtquant的API,xtquant将交易指令传递给miniQMT客户端,再由客户端将指令发送至券商柜台。这意味着,即使你的Python脚本意外崩溃,miniQMT客户端仍然保持在线;即使客户端断连,券商柜台端订单依然正常。模块的深度解耦带来了极高的系统安全性。
策略隔离运行
每个策略可以在独立的Python进程中运行,实现策略之间的完全隔离——一个策略的异常不会影响其他策略,这对需要同时部署多套策略的用户来说极为重要,大幅提升了系统的稳定性。
miniQMT支持智能算法交易,可将大单拆分为小单,减少市场冲击,并能根据行情波动动态调整报价以保证快速成交,帮助投资者在复杂市场环境中保持竞争优势。
相比标准版QMT,miniQMT的内存占用仅为30%左右,普通办公电脑即可流畅运行,无需高性能设备支持。
miniQMT最值得称道的特性就是其原生Python环境支持。与标准版QMT需要在软件内置编辑器中编写策略、只能安装官方白名单库不同,miniQMT支持在本地Python环境中自由安装任意第三方库,能对接PyCharm、VSCode等专业开发工具。
具体来说,这种模式带来了三大核心优势: