前言
我做过从图表、条件单迁到 Python 的项目,也见过团队长期两头并行:交易员在文华改公式,程序员在天勤写执行,最后信号对不上、复盘扯皮。这类衔接问题在期货量化里很常见——图形侧半年参数若没交接清楚,脚本侧很难接。结合我用过的天勤、文华、MultiCharts、TB、QMT 等产品的实际分工,下面分产品说明图形化与脚本化各自擅长什么、衔接时要冻结和移交哪些东西,都是落地时踩过坑才总结出来的。
一、天勤量化(TqSdk)
天勤不提供拖拽式策略编辑器,衔接含义通常是:把图形/公式阶段确定的合约、周期、开平规则、参数整理成文档,在 Python 里用get_kline_serial和信号逻辑重写,用TqSim对照验证。
优势是衔接后只有一套代码资产,回测、模拟、实盘路径清晰。可把图形阶段当“规格说明”,Python 当“正式实现”。
局限是几乎没有自动从文华公式一键转 Python 的捷径,重写工作量要实打实估。
适合已决定以 Python 为正式载体的团队,图形工具只作原型。
二、文华财经 WH8
文华把公式、条件单、图表、预警放在同一终端,对习惯看盘面的人,从画线到出信号到下单路径很短,若不打算迁 Python,就不存在“衔接”问题,只有公式维护、换月改合约、参数版本管理等日常问题。
一旦决定迁 Python,文华侧要整理成书面交接包:每个品种的合约代码、K 线或 tick 周期、开平条件(是否平今)、交易时段过滤、参数表及最后冻结日期。信号时点必须写明用收盘价还是盘中突破,否则 Python 复现会对不上。文华很少提供一键导出完整逻辑,手抄与截图要经第二人复核。
优势是本土表达贴近交易语言,原型快。局限是外迁几乎必须重写,双轨并行时易出现双重下单。
适合长期以文华为主、Python 仅作辅助分析的用户。
三、MultiCharts
MultiCharts 在图表上定义入场出场、止损止盈,买卖箭头直观,适合验证形态、通道、时间类思路。与 Python 衔接时,通常把 MC 当作研究结论展示:哪些条件触发、在什么周期,再由程序员在天勤或 vn.py 里用代码实现,并用历史数据对照一周信号是否一致。
国内期货还要单独核对:数据馈送是否覆盖目标交易所、经纪通道是否支持你的期货公司、夜盘是否连续。衔接成本不仅是“翻译公式”,还包括通道与合约代码映射。
优势是图表语言国际化、形态类策略表达自然。局限是国内期货落地案例相对少,执行层往往要另建。
适合图表驱动、愿意人工确认下单、或愿投入通道配置的用户。
四、TradeBlazer(TB)
TB 规则比文华结构化,有明确的条件、动作和参数,程序员阅读 TB 逻辑后转写 Python,通常比读口头策略或截图更快。团队可规定流程:TB 上回测与仿真通过 → 冻结规则版本 → Python 实现 → 用同一区间对照信号。
TB 与 Python 并行运行时,必须统一主力/具体合约、手续费、是否用已收盘 K 线,每周对账信号差异日志。不要两边同时改参数。
优势是规则可读性好、国内期货案例多。局限是仍非自动代码生成,双轨有维护成本。
适合愿用 TB 验证、用 Python 生产的团队。
五、迅投 QMT
QMT 可在终端内写策略脚本,也可由外部 Python 定时写出信号文件(CSV、JSON 等),再由 QMT 读取下单——具体能力因券商而异。衔接要定义清楚:文件字段(时间、合约、方向、手数)、编码、路径、信号有效期;Python 侧写文件与 QMT 侧读文件的时钟是否都用北京时间。
交易员在终端改单、撤单时,要约定是否自动暂停外部信号写入,避免“文件说买、人又卖”的冲突。回测若在 Python、执行在 QMT,手续费和合约规则要两份文档对齐。
优势是执行在熟悉终端、人工干预方便。局限是衔接靠约定与文件,规范不好易乱。
适合执行锚定在 QMT、研究可在外部的券商用户。
六、衔接要点对照
| 维度 | 天勤(Python) | 文华 WH8 | MultiCharts | TradeBlazer | 迅投 QMT |
|---|---|---|---|---|---|
| 图形化程度 | 低(代码) | 高 | 高(图表) | 中高 | 中(终端) |
| 迁到 Python | 目标载体 | 需重写 | 需重写 | 过渡友好 | 脚本/文件对接 |
| 需交接文档 | 规格+参数 | 公式+参数 | 规则说明 | 规则+参数 | 信号格式 |
| 并行风险 | 低(单轨) | 低(单轨) | 中 | 中 | 中高 |
总结
图形化与 Python 衔接的本质,是把规则、参数、时点、合约交接清楚,而不是指望自动转换。文华和 MC 适合长期停在图形侧;TB 适合作中间验证;以 Python 为正式落地时,天勤常接在图形规格之后,用TqSim验证到实盘切换写在同一套代码里,图形侧仍可作策略说明书;QMT 适合执行仍主要在终端的团队。建议设冻结日:图形侧参数冻结后,Python 侧只认该版本,对接期在拟定的 Python 主平台上用模拟盘对照一周信号差异,确认一致后再切实盘,比两边同时改参数更稳。
FAQ
1)能否文华出信号、天勤下单?
可以,但要统一时点和合约,并防止双重下单。
2)Excel 参数表怎么接 Python?
用配置文件读取,不要硬编码在两边各改一次。
3)图形策略还要回测吗?
Python 重写后必须重新回测,不能直接沿用图形回测数字。
4)个人只有文华要不要学 Python?
策略简单可不必;要多品种、要无人值守,迟早要评估 Python。
风险提示
本文用于期货量化软件选型讨论,不构成任何投资建议。双轨运行会增加执行风险,请充分测试。