实盘跟踪
第 6 轮把因子组合变成每天能跑的东西:记录月末信号、按可执行价格建一个纸面组合、逐月核对纸面与回测的差额来自哪里。这里最重要的一行是结论,不是净值:回测曲线在信号日收盘成交,纸面账户在次一交易日收盘买入,这一个交易日的差别,几乎就是两者全部的距离。全部数字来自 results.json 的 live 段。
- 跟踪组合
- 低波动 + 非流动性 + 反转
- 信号日
- 2026-10-30
- 建仓日
- 2026-11-02
- 当前持仓
- 276 只
- 数据截至
- 2026-11-06
01 / 当前持仓
这个月买什么
每月最后一个交易日收盘后算分,次一交易日收盘按等权买入。下面是综合分最高的 20 只;完整名单、权重与建仓价在 results.json 的 live.current 段。
持仓与当月表现
5 个交易日- 纸面组合 MTD
- +1.7%
- 模型 MTD
- +3.8%
- 创业板指 MTD
- +2.1%
- 票池
- 1384 只
| 代码 | 综合分 | 权重 | 建仓收盘价 | 20 日成交额中位 |
|---|---|---|---|---|
| 300091 | 0.8245 | 0.36% | 28.85 | 818 万 |
| 301581 | 0.8241 | 0.36% | 31.47 | 2013 万 |
| 301283 | 0.8176 | 0.36% | 35.00 | 2145 万 |
| 301173 | 0.8144 | 0.36% | 28.48 | 2203 万 |
| 300800 | 0.8091 | 0.36% | 26.89 | 3161 万 |
| 301613 | 0.8072 | 0.36% | 45.90 | 2539 万 |
| 301113 | 0.8009 | 0.36% | 26.93 | 2457 万 |
| 301203 | 0.7993 | 0.36% | 33.96 | 1723 万 |
| 301049 | 0.7947 | 0.36% | 16.62 | 2227 万 |
| 301170 | 0.7937 | 0.36% | 20.57 | 2058 万 |
| 301272 | 0.7937 | 0.36% | 31.22 | 2545 万 |
| 300899 | 0.7875 | 0.36% | 25.69 | 3094 万 |
| 300126 | 0.7853 | 0.36% | 21.45 | 3045 万 |
| 301353 | 0.7853 | 0.36% | 28.94 | 3507 万 |
| 300837 | 0.7834 | 0.36% | 20.17 | 3154 万 |
| 300205 | 0.7831 | 0.36% | 27.40 | 761 万 |
| 301288 | 0.7817 | 0.36% | 14.02 | 2098 万 |
| 300958 | 0.7812 | 0.36% | 10.57 | 3079 万 |
| 301505 | 0.7807 | 0.36% | 19.63 | 3309 万 |
| 301105 | 0.7805 | 0.36% | 40.70 | 2684 万 |
纸面组合买入的是股数,权重会随价格漂移;回测每天把持仓拉回等权并且不收再平衡成本。这个差别在归因里单列为「再平衡口径」,每月只有几个基点。
02 / 每日监控
信号会不会天天变
每天用当天收盘重新算一次分,看前 21 个交易日里目标持仓与当前组合的重合度和隐含换手。它回答的是「这个月还没到调仓日,信号有没有已经翻脸」,而不是交易建议。
最近 21 个交易日
最新重合 227 / 276| 日期 | 票池 | 目标持仓 | 与当前重合 | 隐含换手 | 月末 |
|---|---|---|---|---|---|
| 2026-10-09 | 1,379 | 275 | 182 | 33.8% | — |
| 2026-10-12 | 1,379 | 275 | 184 | 33.1% | — |
| 2026-10-13 | 1,379 | 275 | 183 | 33.5% | — |
| 2026-10-14 | 1,379 | 275 | 191 | 30.5% | — |
| 2026-10-15 | 1,379 | 275 | 194 | 29.5% | — |
| 2026-10-16 | 1,379 | 275 | 188 | 31.6% | — |
| 2026-10-19 | 1,381 | 276 | 192 | 30.4% | — |
| 2026-10-20 | 1,382 | 276 | 193 | 30.1% | — |
| 2026-10-21 | 1,382 | 276 | 201 | 27.2% | — |
| 2026-10-22 | 1,383 | 276 | 207 | 25.0% | — |
| 2026-10-23 | 1,383 | 276 | 214 | 22.5% | — |
| 2026-10-26 | 1,384 | 276 | 216 | 21.7% | — |
| 2026-10-27 | 1,384 | 276 | 229 | 17.0% | — |
| 2026-10-28 | 1,383 | 276 | 235 | 14.9% | — |
| 2026-10-29 | 1,383 | 276 | 247 | 10.5% | — |
| 2026-10-30 | 1,384 | 276 | 276 | 0.0% | 是 |
| 2026-11-02 | 1,384 | 276 | 252 | 8.7% | — |
| 2026-11-03 | 1,384 | 276 | 245 | 11.2% | — |
| 2026-11-04 | 1,384 | 276 | 241 | 12.7% | — |
| 2026-11-05 | 1,383 | 276 | 233 | 15.6% | — |
| 2026-11-06 | 1,384 | 276 | 227 | 17.8% | — |
重合度在月中波动属正常:低波动与非流动性因子每天都在变,反转因子更是逐日翻。回测只认月末收盘那一次,中间的漂移不计入收益,也不产生成本——这是「月度调仓」的代价,不做事后择时。
03 / 回测与纸面
同一条策略,两种成交假说
模型曲线沿用前几轮的回测口径:在信号日收盘成交。纸面曲线按真正可执行的规则:次一交易日收盘买入、按股数持有、跳过当天没有成交的股票。两条曲线的差就是「知易行难」的价格。
逐月重放:模型 vs 纸面
2011-06–2026-09- 模型 · 信号日收盘成交
- 纸面 · 次一交易日收盘成交
两条线用同样的选股、同样的成本假设,只差一天成交。纸面曲线低于模型,是因为模型把「信号日收盘 → 次日收盘」这一段算进了当月,而按次日收盘买入的账户吃不到。
| 区间 | 月数 | 模型年化 | 纸面年化 | 累计差 | 建仓时点 | 再平衡口径 | 可成交性 | 残差 |
|---|---|---|---|---|---|---|---|---|
| 全区间 | 184 | +23.4% | +15.9% | -96.03 pp | -48.2 | -3.6 | -0.4 | 0.0 |
| 样本外 2022 起 | 57 | +16.0% | +4.9% | -47.86 pp | -76.6 | -6.2 | -1.2 | 0.0 |
样本外模型年化 +16.0%,可执行的纸面只有 +4.9%;累计差 -47.86 pp,其中建仓时点一项就是 -76.6 bp/月。也就是说,之前几轮公布的个股组合收益,主要依赖一个现实中拿不到的成交价。本站不修改历史数字,但从此把模型口径与可执行口径并列公布;只有纸面口径才配叫「策略收益」。
04 / 归因明细
差额逐月拆开
对数收益按恒等式拆分:纸面 − 模型 = 建仓时点 + 再平衡口径 + 可成交性 + 残差。残差在日频加总口径下应当为零,不为零就是记账错了。
最近 12 个月
单位:% 与 bp| 月份 | 模型 | 纸面 | 建仓时点 | 再平衡 | 可成交性 | 残差 |
|---|---|---|---|---|---|---|
| 2025-10 | +1.70 | +0.47 | -117.1 | -4.7 | 0.0 | 0.0 |
| 2025-11 | -0.45 | -0.99 | -55.3 | +3.0 | -1.6 | 0.0 |
| 2025-12 | +8.93 | +6.57 | -213.6 | -6.0 | 0.0 | 0.0 |
| 2026-01 | +4.69 | +6.18 | +138.6 | +1.9 | 0.0 | 0.0 |
| 2026-02 | -8.56 | -5.64 | +318.6 | -4.8 | 0.0 | 0.0 |
| 2026-03 | +7.08 | +5.26 | -179.4 | +8.0 | 0.0 | 0.0 |
| 2026-04 | -8.26 | -8.92 | -65.4 | -7.0 | 0.0 | 0.0 |
| 2026-05 | -9.45 | -11.78 | -267.7 | +7.6 | 0.0 | 0.0 |
| 2026-06 | +3.02 | -0.05 | -289.4 | -12.4 | 0.0 | 0.0 |
| 2026-07 | +12.32 | +9.00 | -290.5 | -9.4 | 0.0 | 0.0 |
| 2026-08 | -0.19 | -1.20 | -95.2 | -6.5 | 0.0 | 0.0 |
| 2026-09 | -11.82 | -11.42 | +47.8 | -2.1 | -0.0 | 0.0 |
「可成交性」指信号日之后第一个交易日没有成交、买不进的股票;它很小(0.16% 的目标名次中出现过 41 次)。
05 / 建仓次日
差的那一天到底值多少
把每个月「信号日收盘 → 次一交易日收盘」这一天的收益单独拎出来,再和创业板指在同一批交易日的涨跌对比:如果指数也涨,那说明它是月末月初的市场共性,而不是策略独有的 alpha。
建仓次日的收益与显著性
均值 · t 值| 对象 | 月数 / 天数 | 均值 bp | 中位 bp | t | 正收益占比 |
|---|---|---|---|---|---|
| 策略 · 建仓次日(全区间) | 184 | +51.4 | +85.2 | 2.84 | 69.0% |
| 策略 · 建仓次日(样本外) | 57 | +78.6 | +86.7 | 3.17 | 73.7% |
| 创业板指 · 同批交易日(全区间) | 184 | +42.9 | +42.4 | 2.26 | 59.2% |
| 创业板指 · 同批交易日(样本外) | 57 | +40.1 | +28.1 | 1.09 | 54.4% |
| 创业板指 · 样本外全部交易日 | 1172 | -0.2 | — | -0.04 | — |
样本外策略在这一天平均 +78.6 bp(t=3.17),同期指数是 +40.1 bp(t=1.09);指数在样本外全部交易日的均值只有 -0.2 bp。所以这里一半是月末月初的普涨,一半是选股,但没有一部分是次日收盘才下单的账户能拿到的。这一天占模型样本外对数收益的 57.9%。
| 年份 | 月数 | 均值 bp | 中位 bp | t | 正收益占比 |
|---|---|---|---|---|---|
| 2011 | 7 | +13.0 | +83.7 | 0.22 | 57.1% |
| 2012 | 12 | +52.3 | +95.0 | 1.18 | 66.7% |
| 2013 | 12 | +63.5 | +133.6 | 0.71 | 75.0% |
| 2014 | 12 | +94.8 | +150.7 | 2.26 | 66.7% |
| 2015 | 12 | -123.5 | +40.0 | -0.77 | 50.0% |
| 2016 | 12 | +90.4 | +64.3 | 2.07 | 58.3% |
| 2017 | 12 | +26.8 | +61.2 | 0.59 | 83.3% |
| 2018 | 12 | -44.6 | -26.7 | -0.71 | 41.7% |
| 2019 | 12 | +55.4 | +69.6 | 0.67 | 75.0% |
| 2020 | 12 | +82.7 | +154.3 | 0.86 | 83.3% |
| 2021 | 12 | +109.8 | +123.1 | 2.77 | 75.0% |
| 2022 | 12 | +79.5 | +92.1 | 2.07 | 75.0% |
| 2023 | 12 | +52.3 | +56.0 | 2.60 | 83.3% |
| 2024 | 12 | +60.8 | +42.4 | 0.62 | 50.0% |
| 2025 | 12 | +121.9 | +107.4 | 5.61 | 91.7% |
| 2026 | 9 | +78.1 | +95.6 | 1.11 | 66.7% |
建仓次日收益 = 信号日收盘到次一交易日收盘的收益,回测把它算进当月,而次日收盘才买入的账户吃不到。它是「建仓时点」归因的来源,本身也是一种会反转的市场暴露(2015、2018 为负)。 2015、2018 年为负,说明它不是可以无条件依赖的固定收益。
06 / 台账与自检
记录先写、收益后算
台账是 append-only 的:每次运行只追加新的信号日,不改写历史。已结算月份的收益用当时记录的开仓价与当前行情价计算,因此后复权价被修订时会以「修订 bp」的形式暴露出来,而不是悄悄改掉历史。
纸面台账
0 条已结算 · 1 条持有中| 信号日 | 建仓日 | 平仓日 | 只数 | 状态 | 收益 |
|---|---|---|---|---|---|
| 2026-10-30 | 2026-11-02 | 持有中 | 276 | 未平仓 | +1.73 |
自检:184 个月的最大绝对残差 0.00 bp,平均 0.00 bp,判定 通过。残差是纸面收益与回测收益之差减去三项归因后的余数;日收益加总口径下它应当为零,大于 1bp 说明记账有误,而不是市场有异常。
入选条件:信号日之前 20 个交易日成交额中位数 ≥ 500 万元;每月最后一个交易日收盘形成信号,次一交易日收盘买入。
框架的局限
都会让纸面看起来更好- 回测口径按信号日收盘成交计算收益;纸面记账按可执行的次一交易日收盘买入。两者之间差一天,这一天的收益在归因里单列为“建仓时点”。
- 纸面组合按买入股数持有,权重随价格漂移;回测每日恢复等权且不收再平衡成本。两者之差单列为“再平衡口径”。
- 纸面组合只买信号日之后第一个交易日有成交的股票;无成交的标的不计入,差额单列为“可成交性”。
- 台账条目只写一次:后续运行不会改写历史信号,只追加新信号日。已结算月份的收益用当时记录的开仓价与当前行情价计算,因此能暴露后复权价修订的影响。
- 本框架不产生实盘委托,也不接入券商;纸面收益是收盘价上的模拟,不含税费、滑点与排队。