🚀 AI 一键生成 qmt 策略代码
立即体验
👉 AI 生成代码 👈

QMT 平台如何正确使用模拟交易功能?

qmt | 发布时间: 2026/6/2
以下内容由 EasyQuant 生成。

问题描述

怎么样才能用模拟交易?

我用的是券商版 QMT,想试用策略交易的模拟交易,用真实帐户登录了 QMT,用“运行模式”的中的“模拟交易”,触发了交易条件,还是没有进行交易,是这样用模拟交易的,如图,哪里出问题?

解决方案

在 QMT 平台中,要正确使用模拟交易功能并向模拟柜台发送真实的委托,需要注意“运行模式”的设置以及策略的运行环境。

根据 QMT API 文档,回测、运行两种模式的区别如下:

  1. 回测模式:指策略以历史行情为依据进行运算,投资者可观察该策略在历史行情所获得的年化收益率等指标表现。回测模式目前仅支持股票、期货、ETF期权三种业务。
  2. 运行模式:指策略根据实时行情信号进行运算,以主图行情开始时间到当前时间为运行区间,进行策略的模拟运行,但不进行真实的委托。运行模式可以支持股票、期货、ETF期权、两融、沪港通、深港通等业务品种。

为什么你的模拟交易没有触发真实委托?

你提到使用了“运行模式”中的“模拟交易”,触发了交易条件但没有进行交易。这是因为在 QMT 的策略编辑器中,点击“运行”按钮(即运行模式),策略只会根据实时行情信号进行运算和模拟运行,它不会向任何柜台(包括模拟柜台和实盘柜台)发送真实的委托指令。这主要用于在图表上观察信号的产生,而不会产生实际的交易动作。

如何正确向模拟柜台发送委托?

如果你希望策略在触发条件时,向你登录的模拟账户(或实盘账户)发送真实的委托指令,你需要按照以下步骤操作:

  1. 将策略加入到“模型交易”中:不要仅仅在策略编辑器中点击“运行”。你需要将编写好的策略添加到 QMT 平台的“模型交易”模块中。
  2. 切换为“实盘”模式:在“模型交易”模块中,将该策略的运行模式切换为**“实盘”模式**。

注意:这里的“实盘”模式是指策略会向你当前登录的资金账号发送真实的委托指令。如果你当前登录的是券商提供的模拟资金账号,那么策略就会向模拟柜台发送委托,从而实现真正的“模拟交易”。如果你登录的是真实的资金账号,那么就会进行真实的实盘交易。

总结

  • 策略编辑器中的“运行” = 仅在图表上模拟信号,不发委托。
  • 模型交易中的“实盘” + 登录模拟账号 = 真正的模拟交易(向模拟柜台发委托)。
  • 模型交易中的“实盘” + 登录真实账号 = 真正的实盘交易(向实盘柜台发委托)。

请确保你已经将策略加入到“模型交易”中,并且将模式设置为“实盘”,同时确认你当前登录的是模拟资金账号。此外,还需要确保在策略的 init 函数中正确使用了 ContextInfo.set_account('你的模拟账号') 来绑定交易账号。