第七部分 · 路线、复盘与检查清单 · 第 32 章
附录:每次研究前先读这张纸
最后给你一张可以反复看的纸。每次你想做一个策略、买一个产品、写一个模型、跑一次回测,或者把模拟盘推向实盘之前,先把这一章读一遍。它不提供新概念,只帮你把手刹拉住几分钟——很多亏损不是因为不懂高深理论,而是因为忘了最基本的问题:问题是否足够小、数据是否可信、成本是否算够、风险是否扛得住。
读完这一章,你会明白
- 每次研究前先缩小问题,每次交易前先想最坏情况。
- 每次回测前先检查可见性和成本,每次实盘前先写停止规则。
本图从“研究前先问问题是否足够小”走到“每次回测前先检查可见性和成本,每次实盘前先写停止规则。”,用于先看第 32 章的关键路径,再回到正文补细节。
1. 研究前先问问题是否足够小
不要一开始就问能不能预测股市。这个问题太大,大到无法检查。把它缩小成某个市场、某个频率、某个资产、某个信号、某个基准。比如在沪深 300 成分股内,低估值因子在月频调仓下是否有超额收益。
问题越小,越容易知道数据需要什么、回测如何写、结果如何解释。大问题容易让人用大词掩盖细节,小问题会逼你面对口径。
如果一句话说不清自己的研究问题,先不要写代码。
| 研究问题一句话 | 我想检验: ________ 在 ________ 股票池/资产中,以 ________ 频率是否能带来 ________。 |
|---|---|
| 基准 | 我要比较的基准是: ________。 |
| 成功标准 | 通过标准是: 超额收益 ________, 最大回撤 ________, 成本后仍为 ________。 |
把这三行填不出来,说明问题还没有缩小到可研究状态。不要用“试试看”替代研究问题。
2. 交易前先问最坏情况
任何交易前都问最坏情况。不是问最可能赚多少,而是问如果错了会怎样。会亏多少钱,能不能卖出,会不会追加保证金,会不会影响生活,会不会触发强平。
最坏情况不是为了吓自己,而是为了决定仓位。如果最坏情况不能承受,说明仓位太大或工具不适合。
很多人不是因为方向判断错一次就毁掉,而是因为没有为错误留下空间。
| 最大可亏金额 | 本项目最多允许亏: ________ 元。 |
|---|---|
| 最坏成交情景 | 如果跌停/停牌/流动性枯竭,我预计退出需要: ________ 天。 |
| 仓位上限 | 单策略仓位不超过总资产: ________%。 |
这张表不是形式。只要最大可亏金额写出来你就心慌,仓位就太大。
3. 回测前先问当时是否可见
每个数据字段都要过这一关: 在交易决策那一刻,它是否已经可见。价格、财报、公告、指数成分、宏观数据、分析师预测,都要按真实发布时间处理。
如果你不知道一个字段什么时候可见,就先不要把它放进模型。未知口径的数据,可能正在给你制造未来函数。
这条规则看起来简单,但能挡住大量假回测。
| 字段 | 数据日期 | 可见日期 | 用于哪天决策 |
|---|---|---|---|
| 价格/成交量 | ________ | ________ | ________ |
| 财报/公告 | ________ | ________ | ________ |
| 指数成分 | ________ | ________ | ________ |
可见日期必须早于决策日期。填表时发现说不清,就先不要把这个字段放进模型。
交易成本是策略的一部分,不是最后补的小数。佣金、印花税、滑点、冲击、基差、融资成本、融券成本,都会把毛收益变成净收益。
如果一个策略只有在低成本假设下赚钱,就不能说它有稳定优势。成本敏感性要和收益曲线一起看。
真正好的策略,应该能解释扣成本后为什么还剩收益。
| 买入成本假设 | 佣金 ________ + 滑点 ________ + 冲击 ________。 |
|---|---|
| 卖出成本假设 | 佣金 ________ + 印花税 ________ + 滑点 ________ + 冲击 ________。 |
| 敏感性 | 我要测试 0 倍、1 倍、2 倍、3 倍成本后的结果。 |
如果成本假设没有写进报告,这个策略就还停留在毛收益想象里。
4. 实盘前先问能否停止
上线前必须知道什么时候停止。数据坏了停,对账错了停,订单异常停,亏损超限停,模型指标长期反向停。没有停止规则,自动化会把错误持续放大。
停止不是失败。停止是系统保护自己。真正失败的是明明异常还继续交易,最后用真钱证明自己没有风控。
如果你不知道怎么停,就还不应该开始。
| 触发条件 | 动作 | 恢复条件 |
|---|---|---|
| 数据缺失/异常超过 ________ | 停止生成新单 | 数据检查连续 ________ 次通过 |
| 对账不一致 | 暂停交易 | 差异解释并修复 |
| 回撤超过 ________ | 降仓/停用 | 完成复盘并人工确认 |
停止规则必须在赚钱和亏钱之前写好。等亏损发生后再写,你写下的往往是情绪。
5. 最后问自己是否能复盘
一个研究或交易结束后,你能不能解释发生了什么? 数据是什么版本,模型是什么版本,参数是什么,订单如何成交,成本多少,收益来自哪里,亏损来自哪里。
如果不能复盘,就不能进步。不能复盘的盈利是运气,不能复盘的亏损是学费白交。
金融市场不会因为你认真就奖励你,但认真复盘能让你少重复同样的错误。
| 复盘材料路径 | 配置: ________; 数据版本: ________; 交易记录: ________; 报告: ________。 |
|---|---|
| 收益来源 | 市场/行业/风格/选股/基差/执行: ________。 |
| 下一步 | 继续/降权/停用/重做数据/重做模型: ________。 |
复盘材料路径要真实存在。找不到配置、数据和交易记录,就说明这次实验不能被审计。
6. 这张纸怎么用
真正使用这张纸时,不要只在心里回答。把空格填到研究笔记或项目 README 里,并且在每次改策略后更新。问题、数据、成本、停止规则只要变了,旧答案就不能继续代表新策略。
如果你是读别人的报告,也可以用同一张纸反向检查。报告有没有一句话研究问题,有没有写决策时点,有没有成本假设,有没有停止规则,有没有复盘材料。缺一项,可信度就要下降一档。
这张纸的价值不是让研究变慢,而是让你少在错误方向上跑很远。每次开始前花十分钟填表,可能帮你省掉几个月的错误回测,也可能帮你避免一次不该发生的实盘亏损。
读完第 32 章后,至少要能复述“每次研究前先缩小问题,每次交易前先想最坏情况”这一条判断,再用另外两张卡片检查自己是否真的理解。
小结
这一章的正文不是让你记住几个孤立名词,而是要把它们放回同一条因果链里。读完后,先用自己的话复述下面几条判断,再顺着“小节回看”检查是否能解释每一步。
- 每次研究前先缩小问题,每次交易前先想最坏情况。
- 每次回测前先检查可见性和成本,每次实盘前先写停止规则。
小节回看
- 1. 研究前先问问题是否足够小
- 2. 交易前先问最坏情况
- 3. 回测前先问当时是否可见
- 4. 实盘前先问能否停止
- 5. 最后问自己是否能复盘
- 6. 这张纸怎么用
自测
为什么研究问题要小?
小问题边界清楚,更容易检查数据、交易规则和结果解释。
为什么实盘前要先知道怎么停?
因为异常状态下继续交易会放大错误,停止规则是保护系统和本金。