Q-CodeQ-Code 打开工作台

盈利质量选股

因子选股A股风险 中高级更新 2026-09-24#盈利质量#应计异象#财务因子

基于应计异象,剔除靠应计利润支撑盈利的公司,选择经营现金流扎实、盈利质量高的股票构建年度组合。

策略目标

应计异象是会计学与金融学交叉最著名的发现之一:利润表中由应计项目(应收、存货、预付等非现金流部分)支撑的盈利,持续性显著更差,而市场倾向于高估其持续性,随后产生负向修正 [1]。相反,经营现金流扎实(低应计)的公司,盈利质量更高。本策略在截面剔除高应计个股,持有盈利由现金流支撑的公司。

数据需求(财务)

数据 字段 来源报表 用途
现金流 经营活动产生的现金流量净额 现金流量表 应计分子
利润 归母净利润 利润表 应计分子
资产 总资产 资产负债表 应计分母
盈利 净资产收益率(ROE) 衍生指标 盈利底线过滤
状态 行业分类、ST 标记、披露日期 基础信息 过滤与时滞纪律

QMT 端通过平台财务数据接口获取报表字段,字段缺失或口径异常的标的直接跳过,不做估算填充。

总应计比率

Acci=NetProfiti−CFOiTotalAssetsiAcc_{i} = \frac{NetProfit_{i} - CFO_{i}}{TotalAssets_{i}}

AccAcc 越高说明利润中非现金部分占比越大,盈利质量越低。截面剔除 AccAcc 最高的 30%,再要求 ROE>0ROE > 0。

组合构建与披露纪律

以年报为主调仓节点(可扩展季频)。两条铁律:一是只用已披露的最新报告期数据,公告披露后满 5 个交易日才允许纳入组合,杜绝前视偏差;二是金融行业剔除——金融业的应计结构与非金融企业不可比,混在一起会污染截面。持有 40 只等权,ROE 转负或应计大幅恶化时提前剔除。

风险与失效场景

  • 造假不设防:现金流也能被配合真实交易伪造,应计因子无法识别系统性造假,需要其他风控兜底;
  • 行业差异:不同商业模式应计水平系统性不同,跨行业直接比较会误伤,可做行业内标准化(增加复杂度);
  • 单次调仓暴露:年报频率意味着组合全年不更新,中途暴雷只能靠提前剔除规则处理;
  • 披露时滞错配:A 股年报集中在 1-4 月披露,不同标的的信号时点不同,统一调仓日与各自披露日之间的信息差需要接受或改为滚动纳入;
  • 因子拥挤:应计异象发表已近三十年,衰减需持续监控。

验证状态

待验证。需要完成:应计分组收益单调性检验;年报与季报频率的对照;行业内标准化与全市场直接排名的对比;披露时滞纪律严格执行前后的差异(前视检验)。本文不提供任何未实测的收益或回撤数字。

参考文献与延伸

[1] Sloan, R. G. (1996). Do Stock Prices Fully Reflect Information in Accruals and Cash Flows About Future Earnings? The Accounting Review, 71(3).(应计异象的奠基论文)

[2] Q-Code 量化策略工作台

策略逻辑结构

  1. 财报数据 — 现金流、净利润、总资产、披露日期
  2. 披露时滞纪律 — 披露满 5 个交易日才可用
  3. 应计比率 — (净利润 - 经营现金流) / 总资产
  4. 范围过滤 — 剔除金融行业与 ST 标的
  5. 低应计组合 — 应计最低且 ROE 为正 40 只
  6. 年度再平衡 — 年报节点调仓与恶化剔除

AI 生成提示词

复制以下提示词,打开 Q-Code 工作台粘贴到 AI 对话框,即可自动生成该策略的 QMT 策略代码(单个完整 .py 文件,支持 QMT 回测与实盘)。

请生成一个 QMT 兼容的 A 股盈利质量截面选股策略。通过平台财务数据接口获取经营活动现金流净额、归母净利润与总资产,计算总应计比率 = (净利润 - 经营现金流净额) / 总资产;剔除金融行业与 ST 标的,在剩余池中剔除应计比率最高的 30%,选择 ROE 为正且应计比率最低的 40 只等权持有。财务数据只用已披露的最新报告期,公告披露后满 5 个交易日才允许纳入组合,避免前视。年度调仓(可扩展季频),参数内联在 init,兼容回测与实盘,输出单个完整 Python 文件并包含详细日志。
用自然语言,生成你的 QMT 策略
注册即赠 200 积分,约可生成 5 次 · 支持 Kimi / GLM / DeepSeek
打开 Q-Code 工作台