摘要: 中国期货和股票量化软件中,文华财经、交易开拓者、聚宽、米筐、迅投表现突出,覆盖从数据获取到策略执行全流程。

中国期货与股票量化软件的核心选择

量化交易在中国期货和股票市场快速普及,软件工具直接决定策略开发效率与执行质量。五款主流量化软件占据大部分专业用户群体。

文华财经WH8

文华财经WH8在期货量化领域拥有极高市场占有率。该软件提供麦语言编程环境,语法接近自然语言,适合从手动交易过渡到程序化交易的期货投资者。WH8支持Tick级回测、多品种套利、自动追单、条件单。内置数据覆盖国内四大期货交易所全部合约,支持夜盘连续交易。用户可编写趋势跟踪、均值回归、跨期套利策略。WH8的模组化设计允许将策略拆分为独立单元,每个模组可单独设置资金管理和风控参数。期货公司普遍支持WH8接口,实盘部署便捷。

中国最好的五大量化软件是哪些?


# WH8麦语言示例:简单均线交叉

MA5:MA(C,5);

MA20:MA(C,20);

CROSS(MA5,MA20),BK;

CROSS(MA20,MA5),SP;

文华财经的缺点在于股票量化功能较弱,主要聚焦期货市场。对于纯股票策略,WH8并非首选。

交易开拓者TB

交易开拓者TB是另一款期货量化主力软件。TB采用TBL语言,支持面向对象编程,策略代码可复用性高。TB提供多账户管理、算法交易、服务器托管。其回测引擎支持逐笔撮合,滑点模拟接近真实环境。TB的开拓者研究院提供大量策略源码,用户可学习或直接修改使用。TB支持期货、期权、股票,但股票数据质量与期货相比有差距。TB的自动交易功能稳定,适合中高频期货策略。TB的社区活跃,用户可分享策略和参数优化经验。

聚宽JoinQuant

聚宽是股票量化在线平台的代表。用户通过浏览器编写Python策略,平台提供A股、ETF、可转债、期货数据。聚宽的研究环境支持Jupyter Notebook,方便数据探索和因子分析。回测引擎支持日频、分钟频、Tick频,自动处理停牌、除权、涨跌停。聚宽的策略可实盘对接券商,支持模拟交易和实盘交易。社区策略数量庞大,涵盖多因子、机器学习、事件驱动。聚宽的缺点是实盘交易需要券商支持,部分小券商接口不稳定。对于期货量化,聚宽数据覆盖不如专业期货软件。


# 聚宽策略示例:双均线

def initialize(context):

    set_benchmark('000300.XSHG')

    g.security = '000001.XSHE'

    g.short, g.long = 5, 20

def handle_data(context, data):

    hist = attribute_history(g.security, g.long+1, '1d', ['close'])

    ma_short = hist['close'][-g.short:].mean()

    ma_long = hist['close'].mean()

    if ma_short > ma_long and g.security not in context.portfolio.positions:

        order_target_value(g.security, context.portfolio.total_value)

    elif ma_short < ma_long and g.security in context.portfolio.positions:

        order_target(g.security, 0)

米筐RiceQuant

米筐RiceQuant与聚宽定位相似,但更强调机构级服务。米筐提供Python SDK,支持本地化部署,数据可下载到本地。米筐的回测引擎支持多因子选股、组合优化、风险模型。米筐的期货数据覆盖国内商品期货和金融期货,支持跨品种套利。米筐的实盘交易支持CTP、中泰XTP、华泰等接口。米筐的缺点是对个人用户收费较高,免费版功能受限。机构用户更倾向米筐,因为其数据安全和合规性更好。

迅投QMT

迅投QMT是券商主推的量化交易终端。QMT支持Python和VBA,提供极速行情和交易接口。QMT的股票量化功能强大,支持算法交易、篮子交易、智能拆单。QMT的期货量化支持CTP接口,可交易国内所有期货合约。QMT的优点是券商集成度高,开户即可使用,无需额外付费。QMT的缺点是策略编写环境不如聚宽和米筐友好,回测速度一般。QMT适合已经使用券商交易终端的活跃交易者。


# QMT策略示例:获取行情并下单

def init(ContextInfo):

    ContextInfo.set_universe(['600000.SH'])

def handlebar(ContextInfo):

    close = ContextInfo.get_market_data(['close'], ['600000.SH'], 1, '1d')

    if close[-1] > close[-2]:

        order_shares('600000.SH', 100, ContextInfo, 'buy')

选择建议与横向对比

| 软件 | 主要市场 | 编程语言 | 回测速度 | 实盘支持 | 适合用户 |

|------|----------|----------|----------|----------|----------|

| 文华财经WH8 | 期货 | 麦语言 | 快 | 期货公司 | 期货手动转程序化 |

| 交易开拓者TB | 期货 | TBL | 快 | 期货公司 | 中高频期货策略 |

| 聚宽 | 股票 | Python | 中 | 券商 | 股票多因子研究 |

| 米筐 | 股票+期货 | Python | 中 | 券商+CTP | 机构量化 |

| 迅投QMT | 股票+期货 | Python/VBA | 快 | 券商 | 券商活跃交易者 |

期货量化优先考虑文华财经WH8和交易开拓者TB。股票量化优先考虑聚宽和米筐。需要券商一体化交易则选迅投QMT。五款软件各有侧重,实际使用中可组合搭配。文华财经和交易开拓者用于期货实盘,聚宽和米筐用于股票策略研发,迅投QMT用于券商账户执行。量化软件没有绝对最好,匹配交易品种和策略频率才是关键。