一套趋势策略,十次里错七次。
你连着亏了七笔小的,第八笔赚了一个大的,账户是正的。
问题是——这七次亏损里,你能不能一次都不动摇地执行完? 这不是心态问题,是这类策略的结构决定的:它的收益必须长成这个形状,你没法在保留优点的同时把胜率提上去。
趋势交易是这份手册里少见的、可以事前定义、可以回测、可以证伪的方法。
这一点值得先强调,因为它把趋势跟随和第 7 篇里那些「事后可识别、事前不可证伪」的画线体系彻底区分开了:一套趋势规则可以写成代码,跑在历史上,给出确定的结果。能被检验,是它和形态命名之间最根本的差别。
但也正因为它可检验,它的问题也是明确的、可以量化的——而这些问题比大多数人想的更严重。
本系列仅用于记录与普及基础知识,不构成投资建议。本篇讲的是一类策略的结构与数学形状,不是一套可以照抄的规则,更不包含参数、标的或信号。
零、先说清楚这一篇的边界
全流程索引末尾写过:这份手册不包含策略层,因为公开的方向性规则写出来就开始衰减。
这一篇不违反那条原则,因为它不给规则,只拆结构:
| 属于策略层(本篇不写) | 属于结构层(本篇要写) |
|---|---|
| 用多长的均线、突破几日高点 | 为什么这类规则的收益必然是凸的 |
| 什么时候该进场 | 为什么胜率注定低、且不能单独提高 |
| 哪个品种适合做趋势 | 需要多少品种才可能得出统计结论 |
| 用哪个参数 | 为什么参数选哪个几乎不重要(第五节) |
⚠️ 第五节会列出几类公开的趋势定义。那是在说明「可计算的定义长什么样」,不是推荐——恰恰相反,那一节的结论是这些定义彼此高度相关,选哪个都差不多。
打个比方
策略层像一份菜谱(放多少盐、炒几分钟)——写出来发到网上,人人照做,这道菜就不稀奇了。
结构层像"盐会让菜变咸"这件事——它是这道菜的物理性质,你把它公开一万遍,它也不会失效。
⭐ 所以:结构不会因为被公开而衰减——它是恒等关系,不是优势。这一篇写的全是后一类,这也是它能被写进这份手册的原因。
一、先把两个「动量」分开
日常说的「做趋势」和学术里的「动量异象」经常被混为一谈,但它们的实现方式完全不同:
| 比较对象 | 典型实现 | 出处 | |
|---|---|---|---|
| 横截面动量Cross-sectional | 标的之间互相比(谁跑赢谁) | 几百只标的排序,多头买前 10%、空头卖后 10%,持有数年 | Jegadeesh & Titman (1993) |
| 时间序列动量 / 趋势跟随Time-series | 每个标的和自己的历史比 | 每个品种独立判断多空,各走各的,几十个品种并行 | Moskowitz, Ooi & Pedersen (2012) |
⚠️ 两者共有的一条警告:它们都是组合层面的统计规律。「买一只动量股」不是动量策略,「拿着一个涨得好的币」也不是趋势跟随。这个区别不是学究式的——它直接决定了后面第八节讲的样本量问题。
二、⭐ 它的数学本质:一个合成的期权多头
理解趋势交易,只需要这一步。
规则是「亏损截断、盈利放任」。那么这条规则产生的收益曲线必然是凸的——向下有界(止损距离),向上无界(跟踪止盈)。
这不是策略特性,是恒等关系。 你规定了下界、放开了上界,形状就已经确定了,和你用什么信号入场毫无关系。
Fung & Hsieh (2001) 把趋势跟随的收益结构建模为 lookback straddle(回望式跨式期权)多头。作为模型它是近似的,但它抓住了要害:
⭐ 你在买波动率。横盘时期的连续小亏,就是权利金。
这一句解释了趋势交易几乎全部的「反直觉」现象:
| 现象 | 通常的解释 | 结构性的解释 |
|---|---|---|
| 一年里大部分时间在小亏 | 「行情不好」「策略失效了」 | 在付权利金,这是设计的一部分 |
| 收益集中在极少数几笔 | 「运气好抓到大行情」 | 凸性收益必然集中在尾部 |
| 胜率只有三成多 | 「信号不准」 | 截断亏损这个动作本身在压低胜率 |
| 波动率上升时表现变好 | 「趋势更明显了」 | 多头期权的 vega 为正 |
⚠️ 反过来说,如果你的趋势系统没有表现出这些特征——胜率高、收益均匀、横盘期也赚钱——那它大概率已经不是趋势系统了,你实际上在做别的事情(很可能是在卖波动率,见第六节)。
一个容易被漏掉的镜像
第 12 篇讲过杠杆 ETF:在单边趋势中放大收益,在震荡中放大损耗。
那不是巧合。每日再平衡以维持固定杠杆,在数学上就是一个趋势跟随动作——涨了要加仓(买高),跌了要减仓(卖低)。所以杠杆 ETF 的收益形状和趋势跟随同源,只是它的「参数」被产品结构写死了,而且你不能选品种、不能选周期、不能停。
理解了这一点,第 12 篇那句「它在趋势中放大收益,在震荡中放大损耗,而市场大部分时间在震荡」就不再是经验之谈,而是凸性的必然推论。
三、胜率和盈亏比是同一个规格的两面
⚠️ 这一节是整篇最反直觉的地方,值得慢慢看。
正常的想法是:“胜率低是这套方法的缺点,要是能把胜率提上去就更好了。”这个想法本身是错的——不是做不到,是做到了就没有那个大赚的尾巴了。低胜率和大盈亏比是同一个东西的两面,你不能只留一面。
下面用算术把这句话说实。
很多人试图「提高趋势系统的胜率」。这做不到,因为两者由同一组参数同时决定。
期望值:
E = p × W − (1 − p) × L
p = 胜率 W = 平均盈利 L = 平均亏损
你能调的旋钮只有出场参数,而每一个旋钮同时推动两边:
| 你做的调整 | p(胜率) | W 或 L | 净效果 |
|---|---|---|---|
| 放宽止损 | ↑ 上升 | L 上升 | 不确定 |
| 收紧止盈 | ↑ 上升 | W 下降 | 通常变差 |
| 放开跟踪止盈 | ↓ 下降 | W 上升 | 趋势系统的标准选择 |
⭐ 结论:胜率不是一个可以独立优化的目标,它是出场规则的副产品。任何声称「高胜率的趋势策略」的东西,要么改了定义,要么在承担一个没被算进去的尾部风险。
这也回到第 6 篇里那个数字:40% 胜率下,500 笔交易中出现至少一次连亏 10 笔的概率约 70%。对趋势系统来说,连亏不是异常,是分布的正常区域。
四、引擎在出场,不在入场
这是趋势交易里最反常识、也最容易自己验证的一点:
收益分布的形状由出场规则决定;入场只决定你有没有上车。
因为凸性来自「下界固定、上界放开」,而这两句话都是出场规则写的。入场信号(均线交叉、突破 N 日高点、通道突破)影响的是进场时机的分布,改不了形状。
这可以直接测:固定出场规则不动,替换入场信号,看夏普和收益分布变化多少。多数人测完会发现,变化远小于他们花在入场信号上的时间所对应的预期。
⚠️ 有人拿这个现象演示「随机入场也能赚钱」。那类演示的样本、品种池和成本假设通常都不严谨,不要当成稳健证据。能站住的结论只有一条:形状归出场管——而不是「入场无所谓」。入场仍然影响期望值的大小,只是不影响分布的形状。
实务含义很直接:如果你要花时间做优化,优化出场和成本,而不是入场信号。 这和第 20 篇的归因顺序是一致的——先修成本和执行。
五、那「趋势状态」到底怎么定义
⚠️ 这一节最接近"菜谱",所以要先说清界线:下面列的几种定义是在说明"可计算的定义长什么样",不是推荐。 而这一节的结论恰恰是——它们彼此高度相关,选哪个都差不多,因为真正起作用的是结构,不是参数。
上一节说入场信号只是个开关。那这个开关该怎么设?
⭐ 先纠正提法
「这是不是趋势」听起来像在问一个客观事实,但它不是。同一段价格:
- 用 20 日窗口看 → 上升趋势
- 用 200 日窗口看 → 下跌趋势中的反弹
⭐ 两个都对,因为它们回答的是不同的问题。趋势不存在于价格里,它存在于你选的窗口里。
所以可用的提法只有一种:
| 提法 | 性质 | |
|---|---|---|
| ❌ | 「现在是不是趋势?」 | 事后总能给出答案,不可证伪 |
| ✅ | 「按我事前定义的规则,现在是不是多头状态?」 | 一个布尔值,谁来算都一样 |
这个区别不是文字游戏。前者是第 27 篇说的「事后可识别、事前不可证伪」的画线体系;后者才是本篇第零节讲的、可回测可证伪的机械规则。同样一句话,一个能检验,一个不能。
可计算的定义有哪几类
公开使用的定义大致四类,共同点是无歧义、可编码、事前确定:
| 类别 | 形式 |
|---|---|
| 突破 | 价格 > 过去 N 日最高价(Donchian 通道) |
| 均线关系 | 价格 vs 均线,或快慢均线的相对位置 |
| 回报符号 | 过去 N 个月累计收益 > 0 |
| 波动率归一化 | (现价 − N 日前价) ÷ (ATR × √N) |
最有信息量的事实是:这几类在长周期上的结果高度相关。
Moskowitz, Ooi & Pedersen (2012) 那项覆盖 58 个期货品种的研究,用的就是「过去 12 个月收益的符号」——没有比这更简单的定义了——结果和复杂得多的均线系统差不多。
由此得到一个不太受欢迎但很有用的结论:
定义方式不重要,重要的是有一个一致执行的定义。
这和上一节是同一件事的两种说法:形状归出场管,入场定义只是个开关。 花在「找更好的趋势指标」上的时间,收益极低。
滞后不是缺陷,是价格
任何可计算的趋势定义都必然滞后——你需要「已经走了一段」才能确认。
这不是指标做得不好,是定义的必然结果:趋势的起点只有事后才存在。
很多人的下一步是试图减少滞后(更短的窗口、更灵敏的指标)。但这是同一个旋钮的两端:
| 缩短确认窗口 | |
|---|---|
| 进场更早 | ✅ |
| 假信号变多 | ❌ |
| 每笔平均盈利 | ↓ |
| 交易笔数与成本 | ↑ |
⚠️ 这是在折中曲线上移动,不是改进。 你换到的是另一个折中点,不是更好的点——这和第三节讲的「胜率与盈亏比不能独立优化」是同一个结构。
而且缩短窗口 = 提高换手,直接撞上第 31 篇那张表:灵敏度是要用费率买的。
方向和仓位必须分开
这一条最实用,也最常被搞混。
很多人用「趋势强度」决定仓位——看起来强就多买点。这是把一个不可靠的量当成连续变量在用。
正确的拆法是两件事分开:
方向 ← 趋势定义给出 (布尔:多 / 空 / 空仓)
大小 ← 波动率给出 (连续:波动越大,仓位越小)
为什么这样分?因为第 19 篇说过:波动率聚集是整份手册里唯一能直接、安全使用的规律,而它服务的是第 6 篇的仓位,不是方向。
把可靠的量(波动率)用在仓位上,把不可靠的量(方向)压缩成一个布尔值。
不要让不可靠的东西同时影响两个维度。
这还有个必要的副作用:跨品种的风险贡献被拉平了,几十个品种的结果才有可比性——而这正是第八节说的「横向凑样本」的前提。方向和仓位不分开,样本就没法合并。
检验定义的四个办法
「怎么判断趋势」问不出好答案。「怎么知道我的定义是不是在拟合噪声」才能推进:
- 参数平原 —— 窗口从 50 改到 55 就崩了 ⇒ 拟合噪声(见第九节)
- 跨定义一致性 —— 换成上表里另一类定义,结果差很多 ⇒ 你测的是那个定义,不是趋势
- 跨品种一致性 —— 同一套定义跑几十个品种,只在少数几个上有效 ⇒ 幸存者偏差
- 事前锁定 —— 定义写死,样本外只用一次
⚠️ 第 2 条特别值得做,而且很少有人做。如果「趋势」是真的,不同的合理定义应该给出方向大体一致的结果;如果换个定义结论就翻转,那你捕捉到的不是趋势,是那个定义本身的伪影。
把一个定义写成完整、可回测的规格(输入 / 规则 / 离散输出 / 时点 / 出场),以及判断它的七道关卡,见第 32 篇。那一篇还给了一个量化判据:「加个过滤器」什么时候是改进,什么时候只是拟合。
六、镜像:均值回归是在卖同一个东西
把趋势跟随反过来做,就得到均值回归(抄底、网格、卖波动率类策略):
| 趋势跟随 | 均值回归 | |
|---|---|---|
| 期权头寸类比 | 买入波动率 | 卖出波动率 |
| 胜率 | 低 | 高 |
| 盈亏比 | 高 | 低 |
| 收益分布 | 左偏(平时小亏,偶尔巨赚) | 右偏(平时小赚,偶尔巨亏) |
| 亏损来源 | 横盘磨损,可预期 | 趋势行情,一次结清 |
| 心理难度 | 难在坚持 | 难在活下来 |
⚠️ 两者的危险性不对称。 趋势跟随的坏日子是慢性的、可见的、可以提前预算的;均值回归的坏日子是急性的、集中的,而且在它到来之前你的曲线会非常好看。
第 10 篇讲过:那种「平时稳定小赚、偶尔巨亏」的左偏形状,是所有「稳定年化」产品的共同特征。它们本质上都在卖波动率,只是包装不同。
⭐ 这给了一个很实用的识别方法:看到一条平滑上升的收益曲线,先假设它是在卖某种保险,然后去找赔付条款在哪里。
⚠️ 这张镜像表还有一个常见的化身:「左侧交易」就是这一列的均值回归,「右侧交易」就是趋势跟随——它们不是两种流派,是确认窗口这个旋钮的两端。展开见第 36 篇,那里还有一条本篇没讲的:左侧策略更容易做出「统计显著」的结果,而它的风险全在尾部——样本量足够 ≠ 见过它的坏情况。
七、三种死法
| 死法 | 机制 | 是不是失效 | 对照 |
|---|---|---|---|
| 🟡 横盘磨损 | 权利金持续支出 | 不是,是成本 | 本篇第二节 |
| 🔴 成本吃掉凸性 | 高换手 × 往返成本;周期越短越致命 | 是,且可事前算出 | 第 26 篇 |
| 🔴 动量崩溃 | 大跌后急速反弹,仓位方向同时全错 | 是已知的结构性缺陷 | 第 7 篇 |
关于第二种:成本是可以事前算的
第 26 篇的可交易比值直接适用:
可交易比值 = 期间预期波动 ÷ 往返成本
趋势系统的换手率由信号周期决定。周期越短,一年的往返次数越多,成本占预期收益的比例越高。而波动按 √T 缩放、成本按笔数线性累加——这两个速度不一样,所以短周期趋势系统的成本劣势是结构性的,不是「多找找就有便宜通道」能解决的。
⭐ 这解释了为什么真实的趋势跟随基金几乎全部跑在日线及以上周期。不是他们不想做短线,是数学不允许。
关于第三种:分散化在这里几乎没用
动量崩溃最麻烦的地方不是它幅度大,是趋势持仓天然高度相关——几十个品种的方向可能同时由同一波宏观流动性驱动(第 13 篇)。
所以崩溃时是一次性打击全部仓位。按第 19 篇第 ⑤ 步的说法:这些看起来不同的持仓,其实是同一个赌注。
八、⭐ 最尖锐的问题:你可能永远拿不到统计显著性
这一节是我认为整篇最重要的部分,而它几乎从不被提起。
t = (平均每笔 R ÷ 每笔 R 的标准差) × √N
趋势系统的每笔 R 标准差特别大——这正是凸性的代价:绝大多数交易在 −1R 附近,极少数在 +10R 以上。分母大,就需要更大的 N 才能把 t 推上去。
而一个日线级趋势系统,一个品种一年可能只有 10–20 笔信号。
假设需要 256 笔才能得到有意义的 t 值: 单品种 ≈ 十几年到二十几年。你的一生可能不够长到证明你的系统有效。
这不是劝退,是定位。它推出一个非常具体的结论:
⭐ 趋势交易的信心来源只能是横向的,不可能是纵向的。
- ❌ 纵向:在一个品种上跑很多年 → 时间不够,且期间市场结构已经变了
- ✅ 横向:同一套规则同时跑几十个品种,把 N 凑出来
这也解释了一个长期被误读的现象:真实的趋势跟随基金持有几十上百个品种,主要不是为了分散风险(上一节说了,分散在崩溃时几乎无效),而是为了在有生之年凑够样本量。
⚠️ 由此得到一条硬判据:
如果你只在一两个品种上做趋势,你没有、也不可能有统计意义上的证据。
这不代表你一定会亏,但它意味着你分不清自己是有优势还是运气好——而按第 20 篇,分不清的时候应该假设是后者。
⭐ 另一个方向的镜像在第 41 篇:网格把这两项同时反过来(盈利截断 + 亏损放任),于是收益曲线是凹的——高胜率、长期平稳、偶尔一次性回吐。同一个恒等式,两个方向。
九、回测里最容易骗自己的三个地方
1. ⚠️ K 线内的顺序问题
第 27 篇讲过:K 线是有损压缩,你无法知道当根 K 线里最高价和最低价谁先出现。
趋势系统对这个特别敏感,因为它同时挂着止损和跟踪止盈。当一根 K 线既触及止损又创出新高时,回测引擎怎么假设,结果差异巨大——而默认假设几乎总是偏乐观。
处理方式:用比信号周期更细一级的数据回放,或者直接强制假设最坏顺序。两个结果的差距,就是这个偏差的量级。
2. ⚠️ 参数敏感性本身是检验项
不要只看「最优参数」的表现,要看参数平原:
- 回看窗口从 50 天改到 55 天,结果崩了 → 它拟合的是噪声
- 在一片连续的参数区间里表现都还行 → 至少不是纯拟合
⭐ 一个只在特定参数上成立的趋势系统,等于没有系统。 因为凸性来自结构,结构不应该对 ±10% 的参数变化敏感。
3. 幸存的品种池
在「今天还在交易的品种」上回测趋势策略,会系统性高估收益——退市的、归零的、被下架的代币都不在池子里。加密市场尤其严重。
这就是第 26 篇讲的 point-in-time 标的池:你需要的是「当时那一天真实存在的可交易集合」,不是今天的列表。
⭐ 还有一个:你看到的最大回撤偏小
趋势系统的仓位通常是按回测里那个最大回撤反推的。但那个数字是在你选参数的那条路径上取的一个样本,第 38 篇第五节的分块 bootstrap 会显示:回撤分布的中位数通常明显大于它。
对一个本来就靠少数几笔赚钱、回撤又深又长的策略来说,这个偏差直接落在杠杆上。
十、这套方法能回答和不能回答什么
| 问题 | 能不能回答 |
|---|---|
| 这个品种现在处于我定义的趋势状态吗 | ✅ 能,规则是机械的 |
| 我的止损应该放在哪 | ✅ 能,这是第 7 篇说的技术分析最扎实的用途 |
| 这套规则在历史上的收益分布是什么形状 | ✅ 能,前提是处理了第九节那三个偏差 |
| 我需要多少品种、多少年才能验证它 | ✅ 能,第八节的式子直接算 |
| 我的定义滞后多少 | ✅ 能,回测直接给 |
| 换一类定义结论会不会翻转 | ✅ 能,而且必须测(第五节) |
| 我该下多大仓位 | ✅ 能,波动率给,不是趋势强度给 |
| 现在「是不是趋势」 | ❌ 问题本身不可证伪,见第五节 |
| 现在趋势有多强 | ❌ 这个量不可靠,别拿它做决策 |
| 这个趋势会持续多久 | ❌ 不能 |
| 现在是不是趋势的起点 | ❌ 不能,只有事后才知道 |
| 这次会不会是假突破 | ❌ 不能,假突破的比例就是低胜率本身 |
| 我这一笔会不会赚 | ❌ 不能,也不需要知道 |
最后两行是关键:趋势交易不需要单笔正确率,它需要的是你把所有信号都执行完。 漏掉的那几笔,很可能就是全年收益的来源。
十一、这一篇的结论
- 趋势交易和「动量异象」是两件事。 时间序列动量(每个品种和自己比)≠ 横截面动量(品种之间排序)。两者的共同前提是组合层面,「买一只涨得好的」两个都不是。
- ⭐ 数学本质:亏损截断 + 盈利放任 ⇒ 收益曲线必然是凸的。 这是恒等关系,不是策略特性。Fung & Hsieh (2001) 把它建模为回望式跨式期权多头。
- ⭐ 一句话:你在买波动率,横盘时期的连续小亏就是权利金。 它不是策略失灵,是你在付你买的东西的钱。
- 胜率和盈亏比由同一组出场参数决定,不能独立优化。 截断亏损这个动作本身在压低胜率。「高胜率的趋势策略」要么改了定义,要么藏了尾部风险。
- 引擎在出场不在入场。 形状由出场规则决定,入场只决定有没有上车。要优化就优化出场和成本——这和第 20 篇的归因顺序一致。
- 「这是不是趋势」是个不可证伪的问题,因为趋势不存在于价格里,它存在于你选的窗口里——同一段价格用 20 日和 200 日看,结论相反而且两个都对。唯一可用的提法是「按我事前定义的规则,现在是不是多头状态」,输出一个布尔值。
- 可计算的定义有四类(突破 / 均线关系 / 回报符号 / 波动率归一化),而它们在长周期上高度相关——58 个期货品种那项研究用的是最简单的「过去 12 个月收益符号」,结果和复杂系统差不多。定义方式不重要,有一个一致执行的定义才重要。
- 滞后不是缺陷,是价格。 趋势的起点只有事后才存在。缩短确认窗口 = 更早进场 + 更多假信号 + 更高换手,这是在折中曲线上移动,不是改进——灵敏度要用费率买(第 31 篇)。
- 方向和仓位必须分开:方向由趋势定义给(布尔),大小由波动率给(连续)。把可靠的量用在仓位上,把不可靠的量压缩成布尔值。 用「趋势强度」定仓位,是把一个不可靠的量当连续变量使。这也是跨品种合并样本的前提。
- 检验定义的四个办法:参数平原 / 跨定义一致性(换一类定义结论就翻转 ⇒ 你测的是定义不是趋势)/ 跨品种一致性 / 事前锁定。
- 均值回归是它的镜像:卖波动率。 高胜率、右偏、坏日子急性发作。看到平滑上升的曲线,先假设它在卖保险,然后去找赔付条款。
- 三种死法:🟡 横盘磨损(是成本不是失效)/ 🔴 成本吃掉凸性(周期越短越致命,可事前算)/ 🔴 动量崩溃(持仓天然同向,分散化在这里几乎无效)。
- 最尖锐的问题:单品种上你永远拿不到统计显著性。 每笔 R 的标准差极大 + 一年十几笔 ⇒ 单品种需要十几二十年。所以信心只能来自横向——几十个品种并行跑同一套规则。真实趋势基金持有上百个品种,主要不是为了分散,是为了凑样本量。
- ⚠️ 只在一两个品种上做趋势的人,没有统计意义上的证据。 不代表会亏,代表你分不清优势和运气——而分不清时应该假设是运气。
- 回测三个坑:K 线内高低点顺序不可知(趋势系统对此极敏感)/ 参数敏感就是拟合噪声 / 幸存品种池(加密尤其严重)。
- 真正的门槛不是信号,也不只是纪律,是样本量。 大多数人放弃在连续小亏阶段,而那个阶段在数学上是必然会出现、且会反复出现的。
- 和第 31 篇的镜像关系:趋势的死穴是样本太少,短线的死穴是成本太高;而两者的优点恰好是对方的缺点。 这不是巧合,是同一个 √T 关系从两端看的结果——本篇第七节的「周期越短成本越致命」,在那一篇里被算成了具体的表格。