·服务中心 开户宝

QMT的策略回测结果里,换手率指标一直显示为0是怎么回事?是不是哪里没配置对?

找经理问一问,专业解答少走弯路

立即追问
QMT的策略回测结果里,换手率指标一直显示为0是怎么回事?是不是哪里没配置对?
叩富问财 · 576浏览 · 1个回答

专业王经理 财经达人

帮助6497行业top

身份认证 入驻1年 1小时前收到北京用户预约咨询
首发回答
换手率显示为0的核心原因是回测期间未触发任何有效交易信号/未执行买卖操作,大概率是策略逻辑、回测配置或代码细节出了问题,给你梳理几个常见排查方向和步骤:

一、策略逻辑与信号触发问题
1. 条件阈值过于苛刻:比如设置了“股价连续10天涨停才买入”“PE低于5才建仓”等极端条件,回测区间内没有标的满足,自然无交易。
→ 排查:单独提取回测区间的标的数据,手动验证是否存在符合策略条件的场景;或者在策略中加入日志打印(如`print("生成买入信号:", context.now)`),回测后查看日志是否有信号输出。
2. 时间周期不匹配:比如策略是基于日线数据写的,但回测时选择了分钟线周期,导致均线、MACD等指标计算逻辑混乱,无法触发正确信号。
→ 排查:确认策略代码的时间周期与回测设置的周期一致(QMT回测时在「回测设置-周期」中选择对应周期)。

二、回测参数配置问题
1. 标的选择错误:比如选了长期停牌的股票、仅选了指数但未配置成分股调仓逻辑,或误选了不可交易的品种(如未上市标的)。
→ 排查:替换为活跃度高的ETF或股票重试(比如沪深300ETF 510300),先验证回测框架是否正常。
2. 仓位/限制:比如在回测配置中误将「初始仓位」设为0,或勾选了「禁止开仓」选项。
→ 排查:进入QMT回测界面的「配置」页,确认「初始仓位」为100%(或合理比例),且未勾选限制交易的选项。

三、策略代码细节问题
1. 下单函数未正确调用:比如仅计算了信号,但没有执行`order_target_percent`、`order_shares`等下单函数;或者下单时仓位比例设为0。
→ 排查:检查代码末尾是否有信号触发后的下单逻辑,比如:
```python
if buy_signal:
order_target_percent(context.symbol, 0.8) # 确保仓位比例>0
```
2. 逻辑判断错误:比如将“大于”写成“小于”、信号变量被错误赋值为`False`(恒不触发)。
→ 排查:逐行检查条件判断语句,用小样本数据手动运行代码验证逻辑。

新手易踩的坑
很多人会忽略回测标的的流动性设置:如果在回测配置中开启了「流动性过滤」且阈值设置过高(比如要求单日成交额超10亿),可能导致即使有信号也无法成交,表现为换手率为0。建议先暂时关闭流动性过滤重试。

如果按照以上步骤还是找不到问题,可能是代码或配置的细节疏漏,微信搜索关注"叩富问财"服务号,输入"量化工具"就能找到我,我可以1对1帮你排查代码和配置细节,手把手解决这类实操问题。

发布于2026-6-26 16:40 南宁 举报

问财App下载
同城推荐
相关问题
大家都在搜
找经理开户佣金和经理直接谈
在线

华泰证券经理 证券经理

帮助10万+人 好评4.1万+

从业认证 执业编号:S0570623080026
联系TA
自助开户>
在线

国泰海通证券经理 证券经理

帮助9.3万+人 好评3万+

从业认证 执业编号:S0880625080060
联系TA
自助开户>
在线

广发证券经理 证券经理

帮助9.4万+人 好评3.1万+

从业认证 执业编号:S0260615090011
联系TA
自助开户>
查看全部经理
相关资讯
搜索更多相关资讯
首页>30秒问财 >QMT的策略回测结果里,换手率指标一直显示为0是怎么回事?是不是哪里没配置对?