
国内程序化交易与量化交易的主流框架和工具
做股票、期货的程序化交易,第一步是选对工具。国内量化圈里,vn.py 是很多个人和私募的首选。它开源、Python 编写,支持期货 CTP、股票中泰 XTP、华鑫奇点等接口,回测和实盘用同一套代码。想跑期货高频或者股票中低频,vn.py 都能扛。装上它,接上券商或者期货公司的交易接口,就能把策略挂上去自动下单。
Backtrader 是另一个重量级选手。它的回测引擎非常灵活,支持多品种、多周期,股票、期货、外汇、数字货币通吃。国内不少量化爱好者用它做策略验证,再通过自定义接口对接实盘。Backtrader 的代码结构清晰,适合想自己掌控每个环节的人。
在线平台:聚宽、米筐、掘金
不想折腾本地环境,直接用在线平台。聚宽(JoinQuant)提供股票、期货、基金的回测和模拟交易,研究环境免费,数据齐全。你在线写策略,一键回测,跑好了可以申请实盘。它的社区活跃,很多现成策略能直接改。
米筐(RiceQuant)类似,但更偏向机构。它的期货回测支持 tick 级,股票支持分钟级,风控模块做得细。米筐的实盘接口对接了国内多家券商和期货公司,资金容量大。

掘金(MyQuant)是国泰君安旗下的,主打期货和股票。它的仿真交易环境很逼真,适合新手练手。掘金支持 Python 和 C++,策略跑在云端,省去服务器维护。
期货专用:文华财经、交易开拓者
做期货程序化,文华财经的麦语言门槛最低。你不需要会 Python,写几句类似自然语言的代码就能跑趋势策略。文华财经的实盘接口覆盖国内绝大多数期货公司,稳定性好。缺点是灵活性差,复杂策略难实现。
交易开拓者(TB)用 TBQuant 语言,也是期货圈老牌工具。它的回测速度快,支持多品种组合,适合做 CTA 策略。TB 的实盘交易稳定,很多期货私募用它跑产品。
高频与低延迟:C++ 框架
对速度有极致要求,比如期货 tick 级套利,就得用 C++ 框架。像 QuantBox、Kungfu 这类开源项目,直接对接 CTP 的 API,延迟能压到微秒级。Kungfu 还带行情回放和交易回测,适合团队协作。
如何选
个人散户,先玩聚宽或者掘金,免费、上手快。想深入定制,用 vn.py 或者 Backtrader。期货 CTA,文华财经和 TB 足够。高频交易,直接上 C++ 框架。股票量化,注意接口是否支持你的券商。
代码演示:用 vn.py 跑一个简单期货策略
from vnpy.app.cta_strategy import CtaTemplate, BarGenerator, ArrayManager
class DoubleMaStrategy(CtaTemplate):
author = "量化小兵"
fast_window = 10
slow_window = 30
def __init__(self, cta_engine, strategy_name, vt_symbol, setting):
super().__init__(cta_engine, strategy_name, vt_symbol, setting)
self.bg = BarGenerator(self.on_bar)
self.am = ArrayManager()
def on_bar(self, bar):
am = self.am
am.update_bar(bar)
if not am.inited:
return
fast_ma = am.sma(self.fast_window, array=True)
slow_ma = am.sma(self.slow_window, array=True)
if fast_ma[-1] > slow_ma[-1] and fast_ma[-2] <= slow_ma[-2]:
self.buy(bar.close_price, 1)
elif fast_ma[-1] < slow_ma[-1] and fast_ma[-2] >= slow_ma[-2]:
self.short(bar.close_price, 1)
这段代码是双均线策略,10 周期均线上穿 30 周期做多,下穿做空。vn.py 里直接加载就能回测,接上 CTP 接口就能实盘。
避坑指南
回测漂亮不等于实盘赚钱。滑点、手续费、网络延迟都得在回测里模拟。
期货程序化注意交易所限制,比如日内开仓次数、报单频率。
股票量化注意接口是否支持你的资金量,有些券商接口有最小资金门槛。
在线平台的数据精度可能不如本地,高频策略慎用。
选对工具,量化交易就成功了一半。剩下的,靠策略逻辑和风控。