怎么判断一个结论
是真的还是运气
量化里最容易生产的东西,是一条漂亮但没有意义的回测曲线。 下面五条纪律是这几套系统在开发过程中被数据反复打脸之后定下来的 —— 每一条都对应至少一次真实发生过的自欺,不是从教科书上抄来的。
五条验证纪律
① 必须和零假设基准比,不能只看绝对值
一个策略在牛市里胜率 60% 说明不了任何事 —— 也许对每根 K 棒无脑进场都有 60%。 所以每次评估都要构造一个零假设基准:对每一根 K 棒都做多也做空, 用与信号完全相同的进场、止损、目标机制,摩擦成本同等扣除。 只有信号减去基准的净差,才是形态识别真正提供的信息量。
实例:价格行为系统的基准样本有 13,804 笔,平均 −0.140 R。 引擎 −0.090 R 看着难看,但净差 +0.050 R 是实打实的 —— 而且这也暴露了另一件事: 那个进场动作本身的结构性成本,比形态带来的优势大得多。
② 任何正结果必须通过时间切分
把样本按时间对半切开,前后两段都为正才算数。只看全样本平均值,等于允许"最近这段行情"替整套系统背书。
③ 前视偏差要主动测出来,不能假设不存在
信号挂在某根 K 线上,但那根 K 线当时并不知道自己是信号 —— 要等右侧 K 线走完才确认。 直接拿信号价入场就是前视偏差。正确做法是前推重算: 对每个信号从它那根 K 线往后逐根重跑,找到它第一次以确认态出现的那一根,用那里的价格入场。
④ 同一标的的信号高度相关,必须整群重采样
把同一只票上的 30 个信号当成 30 个独立样本,会把置信区间算得过窄, 于是所有结论看起来都比实际显著。正确做法是按标的整群自助重采样, 并且多空分开统计 —— 单边行情里买入信号和卖出信号根本不可比。
⑤ 试过几种口径,就要说几种
换个目标倍数、换个持有期、换个进场方式、换个周期 —— 一直换下去总能试出一个正的, 那是运气不是边际。价格行为系统在排查过程中试过 17 种口径 + 3 个周期, 这个数字被明写在文档和站点上,因为它决定了任何单个正结果该被打多大折扣。
规矩
在多重比较之下,唯一还能采信的是 ② 时间切分:前后两段都为正。 达不到就记为噪声,不写进系统,也不拿去宣传。
已经踩过的自欺路径
这些不是假想的风险,是真实发生过、并且被数据纠正过的判断。
| 当时的设计 / 判断 | 实测 | 处理 |
|---|---|---|
| 「止损越宽越差」→ 给宽止损罚分 | 止损较宽的样本在两个集上期望都显著为正 | 改成加分,并设为硬门槛 |
| Always-In 翻转追突破是好形态 | 训练 −0.179 / 验证 −0.122,两边都负 | 默认停用 |
| 高级别周期一致 → 加 8 分 | 小样本 +0.07 / −0.04,大样本 −0.02 / +0.02,正负翻转 | 判为噪声,不计入评分,只展示 |
| 缺失字段被当成 0 并判为"健康" | 某公司真实资产负债率约 72%,报告里显示 0% 并写进加分理由 | 改为显示"无数据",并计入未通过项 |
| 每日 2 单上限,两单互不相关 | 两张单合起来是个仅 0.32σ 宽的铁鹰,单腿都过门槛、组合负期望 | 加"不拥挤"闸;没有简单地把上限降到 1 |
一次"实测与理论冲突"的处理过程
调试中途出现过一个与 Brooks 体系直接冲突的结果:顺势样本期望为负,逆势为正。 当时的判断是"这更可能说明本系统的 Always-In 判定过于灵敏 —— 它在单根强棒之后就翻转,于是『顺势』常常等于『在冲高末端追进去』", 所以没有按实测结果反向重仓押注。
停用"追突破"那个形态之后,顺势转正,矛盾消失,也验证了上面的判断。
当实测与理论冲突时,先怀疑自己的实现,再怀疑理论。 直接按数据反向调参就会错得很离谱。
口径纪律
数据本身没错,但口径错了同样会骗人 —— 而且更难被发现。
- "数据日"必须取自 K 线最后一根,不许用运行日冒充。 一份周一早上跑出来、却标着周一日期的报告,实际上说的是上周五的事。
- 未收盘的 K 线只能产生预警,不能产生确认信号。 它的最高价、最低价、收盘价都还会变,据此确认的一切都会在下一个 tick 翻转 —— 那是未来函数。
- "峰值"是空间,不是可实现收益。 盘中最高点相对信号价的比例,没有人能保证在最高点成交。系统内所有统计用同一个口径,不做两套账。
- 失效价是一等字段,不是注释。 被击穿的信号在图上画成虚线空心、在卡片上标 VOID —— 不标失效,图就是在用现在时说一件已经不成立的事。
- 相对分位要说明相对于谁。 扫描器的 RS 分位是池内分位,不是全市场分位。池子换了,分位就变了。
- 打分与战法必须自洽。 战法说"回避 / 只减不加 / 不参与"的票,不能出现在固定名单里。
- 不把一套市场的口径套到另一套市场上。 美股没有涨跌停和公开龙虎榜席位,所以扫描器的分数是动量/情绪分,不是席位分; 深度分析里的 A 股专属维度已整段移除,而不是留着报"无数据"。
我们刻意不做的事
不做参数自动寻优
样本量根本撑不住。按胜率在几十个样本上调参数,调的是噪音 —— 会让指标在这批标的上变好看、在别的标的上变差。 质量护栏工具只报不调,也不提供寻优。
不承诺收益率
本站不展示任何账户收益曲线、不承诺胜率、不做业绩宣传。 页面上出现的所有数字都是回测或样本统计,并标明样本量与时间切分结果。
不喊单、不带单、不代客操作
所有输出都是程序按公开数据机械计算的结果。 最终判断、仓位与责任全部在你自己。
不用沉默制造"什么都算过了"的错觉
任何"这套系统看不到的东西"(财报内容、估值、增发、做空、期权钉价)都必须在输出里写明。 每套系统的页面都有一节「它管不住什么」,就是为此。
术语表
站内和频道里反复出现的词。
| 术语 | 含义 |
|---|---|
| R | 以「初始止损距离」为 1 个单位的收益计量。赚到止损距离的 2 倍 = +2R。用 R 而不是百分比,是为了让不同止损宽度的交易可比。 |
| 平均 R / 期望 | 每笔交易的平均 R。正数代表这套规则长期下来是赚的,负数代表长期是亏的。 |
| 零假设基准 | 对每根 K 棒都无脑进场的对照组,用完全相同的进场/止损/目标机制。信号只有跑赢它才算有信息量。 |
| 时间切分 | 把样本按时间对半切,分别统计。前后两段结论一致才可采信。 |
| GEX | Gamma 暴露。标的每变动 1%,做市商需要对冲的美元 Gamma 规模。基于公开持仓与朴素做市商假设估算。 |
| Zero-Gamma | 总 Gamma 符号翻转的价位。现价在其上方通常是低波均值回归区制,下方是高波趋势区制。 |
| Call 墙 / Put 墙 | Gamma 暴露的正/负极值所在行权价,通常表现为强阻力/强支撑。 |
| POP | Probability of Profit,盈利概率。本站出现时均为正态近似的保守口径。 |
| 0DTE | Zero Days To Expiration,当日到期的期权。 |
| 中枢 / 背驰 | 缠论术语。中枢是连续几笔重叠出的价格区间;背驰是价格创新高/新低但动能没跟上。 |
| 失效价 | 信号成立的前提价位。跌破(买点)或涨过(卖点)它,这个信号就不再成立。不是止损位。 |
| RS 分位 | 相对强度在本轮候选池内的百分位排名。不是全市场分位。 |
| 双引擎共振 | 反转与动量两个独立引擎在同一标的同一方向同时给出信号。分 GOLD / SILVER / WEAK 三档。 |
| 市场温度 | 用广度指标合成的 0–100 市场环境评分,分主升 / 健康 / 分歧 / 退潮 / 冰点五档。 |