人为因素压力测试:你犯错时,防护盾会崩吗?
发布日期: 2026-08-10
模拟结果 — 未使用真实资金。以下每一项数据均由回测根据历史价格数据计算得出。未投入任何资金,也未下过任何订单。回测是在完全知晓该时段结果的前提下把策略套用于过去,且数据不包含滑点与流动性影响,但会对每次再平衡、DCA 买入和资金重新部署收取 0.1% 的模拟交易所手续费。模拟表现与过往表现不能可靠地预示未来结果。AQMath 是软件,不是投资建议。
日期: 2026-08-10 · 更新: 2026-08-12(测试 2c:冻结权重 + 滞后拐点)
引擎: Aegis(v14)去杠杆防护盾 — 与生产环境完全相同的代码,未做任何改动
状态: 测试 1 ✅ 通过 5/5(定投抖动)· 测试 2 ⚠️ 3/4(恒定滞后未通过夏普门槛)· 测试 2b ❌ 0/4 — 在生产 KKT 60/40 堆栈上,所有执行误差场景都未通过最大回撤门槛 · 测试 2c ❌ 冻结权重并不能修复问题,且不存在滞后拐点 — 连 1 天滞后都未通过最大回撤门槛 · 每场景 30 个随机种子
60 秒速览
- 我们故意弄坏系统的人这一环:迟交定投、晚几天才执行交易、 整天漏掉。
- 弄砸定投几乎不影响保护:最坏只削弱 0.5 个百分点。
- 晚执行引擎的信号影响很大:在真实生产配置下,每一种拖延 都会打破回撤保护。
- 规则:信号到达的当天就执行。偶尔漏一天,远比习惯性迟到 便宜。
- 读者挑战(“也许脆弱的是 180 天再拟合,不是误差”):已在测试 2c 中检验 — 冻结权重后仍有 4 个场景中的 3 个失败。脆弱性跟随 晚执行,而不是再优化循环。
- 不存在舒适的滞后拐点:持续 1 天的滞后就已经打破回撤门槛。要么 当天执行,要么没有保护。
下文用到的词: MaxDD(最大回撤) — 组合从最高点跌下去多远, 也就是你实际承受的跌幅。夏普(Sharpe) — 每承担一份风险赚到 的收益,越高越好。波动尖峰 — 相对近期明显异常剧烈的日子。
1. 目标
迄今发布的每一个回测都假设了一份完美的定投计划:每 30 天投入 $100, 准时准点,一次不差。没有人是这样交易的。人会忘记,会迟交,金额也会 变动。如果防护盾的保护在定投计划一变得马虎时就垮掉,整个设计就是 实验室玩具。
本研究要问的是:如果你把定投搞砸了 — 迟交、金额不定、漏掉某个月 — 防护盾还撑得住吗?
防护盾以最大回撤(MaxDD)与夏普比率(Sharpe)评分,而不是以跑赢 买入持有评分。本研究测量的正是这一点:在人为误差下,保护能力的衰减 程度。
未改动任何参数。每一次运行都使用生产默认配置。
2. 设计
五个场景,每个场景以不同随机种子运行 30 次。使用已发布的篮子 (ADA、BNB、ETH、XRP、SOL),$1,000 起步、每 30 天 $100,覆盖完整 6.2 年窗口(2020-04-10 至 2026-07-04)。
| 场景 | 定投 | 延迟 | 金额 | 说明 |
|---|---|---|---|---|
| A — 完美 | $100 / 30 天 | 无 | 固定 | 基准参照 |
| B — 延迟 | $100 / 30 天 | 随机 0–5 天 | 固定 | 现实 — 人会迟交 |
| C — 金额噪声 | $100 / 30 天 | 无 | 随机 ±20% | 有的月份多些,有的少些 |
| D — 跳过 | $100 / 30 天 | 无 | 固定,每第 4 次跳过 | 忘了一个月 |
| E — 叠加 | $100 / 30 天 | 0–5 天 + ±20% + 跳第 4 次 | 全扰动 | 最现实的糟糕情形 |
定投抖动以完全相同的方式施加在调制器与买入持有参照上,两个策略看到 的是同一份不完美的现金流。比较是公平的:我们测量的是防护盾的保护 是否在不完美定投下衰减,而不是不完美定投本身是否更差。
3. 结果
3a. 最大回撤 — 全部五个场景(30 次运行的中位数)
| 场景 | 调制器 | 买入持有 | 相对基准的 Δ | 防护盾仍然有效? |
|---|---|---|---|---|
| A — 完美 | 34.2% | 81.5% | — | ✅ 基准 |
| B — 延迟 2–5 天 | 34.1% | 81.6% | −0.1 pp | ✅ |
| C — 金额 ±20% | 34.2% | 81.5% | +0.0 pp | ✅ |
| D — 每第 4 次跳过 | 34.7% | 81.6% | +0.5 pp | ✅ |
| E — 叠加 | 34.7% | 81.6% | +0.5 pp | ✅ |
最大回撤的最差衰减只有 0.5 个百分点。防护盾的回撤保护基本不受 定投计划影响 — 即使你同时迟交、变动金额并漏掉月份。
3b. 风险调整收益 — 夏普与卡玛比率
| 场景 | 调制器 Sharpe | Δ Sharpe | 调制器 Calmar | Δ Calmar |
|---|---|---|---|---|
| A — 完美 | 0.493 | — | 0.659 | — |
| B — 延迟 2–5 天 | 0.490 | −0.003 | 0.658 | −0.001 |
| C — 金额 ±20% | 0.494 | +0.001 | 0.660 | +0.001 |
| D — 每第 4 次跳过 | 0.544 | +0.051 | 0.703 | +0.044 |
| E — 叠加 | 0.544 | +0.051 | 0.702 | +0.043 |
延迟与金额噪声下,Sharpe 与基准的偏差在 0.003 以内 — 实际上为 零。漏掉月份(D 与 E)反而抬高了 Sharpe,因为投入的总资金更少,而在 上涨的市场中,前期更少的资金意味着已投入部分的百分比回报更高。这是 指标的怪癖,不是缺陷 — 关键在于防护盾在任何抖动下都没有损失风险 调整收益。
3c. 净值曲线 — 基准 vs 最坏情形
完美计划(A)与叠加最坏计划(E)的净值曲线几乎无法区分:
水下(回撤)曲线讲同一个故事 — 完美定投与最坏定投之间,回撤的深度 与时间完全一致:
4. 这证明了什么
1. 防护盾并不脆弱。定投时机错误、金额变动与漏月最多让最大回撤 衰减 0.5 个百分点 — 远低于表明存在真实问题的 3 个百分点阈值。
2. 防护盾的保护是结构性的,不是运气。连续调制器由回撤深度与下行 波动率驱动,而不是由现金流入的精确时机驱动。只要资金最终进入篮子, 防护盾就以同样的方式保护它。
3. 你可以像个普通人。防护盾不要求机器人式的精确。无论你定投得完美 还是马虎,它都保护这个组合。
5. 诚实的局限:这个测试本不可能失败
一篇对本研究的外部评审(读者评论,2026-08-11)提出了一个值得完整发表 的观点,因为它是对的:
时间表 — 所以打乱现金到账的时间根本碰不到它。你们证明了两者解耦,
这值得知道,但这也意味着测试其实不可能失败。
这重新框定了 §4 实际证明的东西:定投抖动测试的是一项设计属性 (入金时机与风险引擎解耦),而不是一个脆弱的边界。一个不可能失败的 测试只能验证稳健性 — 它发现不了弱点。我们测试了引擎周围的一切,唯独 没测引擎真正响应的东西。
能失败的版本:延迟去杠杆,而不是延迟定投。如果防护盾信号触发后 你晚 3 天才行动 — 或者因为睡着了干脆跳过再平衡 — 这种马虎才会亏钱。 而且它在波动率飙升时亏得最多,所以损害集中在最糟糕的几周,而不是 均匀摊开。
评审还点破了一个区分:滞后不是噪声。如果你总是晚同样的时间,那是 滞后,滞后有方向。随机延迟会在种子之间相互抵消;持续迟到不会。任何 后续测试都必须把两者分开跑,否则种子平均会把损害藏起来。
测试 2 已经完成。设计、数字,以及本系列第一次真正的失败:§6。
6. 测试 2 — 信号执行滞后:结果
按 §5 提出的后续方案实施并运行:同样的篮子、同样的窗口、同样的生产 配置、每场景 30 个种子 — 但这一次,误差打在引擎真正响应的东西上: 防护盾信号。所有场景的定投都是完美的,执行误差是唯一的扰动。
| 场景 | 执行误差 | 模型 |
|---|---|---|
| A — 基准 | 无 | 每个信号当日执行(生产行为) |
| N — 随机延迟 | 每个信号晚 0–3 天 | 噪声 — 预期会被平均掉 |
| L — 恒定滞后 | 每个信号恰好晚 3 天 | 有方向 — 不会被平均掉 |
| M — 漏掉再平衡 | 约 29% 的时间在睡觉,每次约 4 天 | 睡着时信号被无视 |
| W — 只在最坏周 | 波动尖峰时触发的信号晚 3 天 | 钱真正所在的地方 |
机制(可复现性说明):理想目标路径只计算一次 — 它只依赖收益率,不 依赖操作者做什么 — 每个场景从中构造自己的执行时间表。被更新信号超越 的延迟信号会被丢弃:操作者真正行动时,执行的是最新的指令。波动尖峰 定义为滚动 7 日实现波动率处于窗口顶部十分位的日子(占 10.0% 的天数)。 醒着就意味着总是行动,睡着就意味着从不行动。
6a. 核心数字(30 个种子的中位数)
| 场景 | MaxDD | Δ pp | Sharpe | Δ Sharpe | Calmar | 最终 | 损害 |
|---|---|---|---|---|---|---|---|
| A — 基准 | 34.2% | — | 0.493 | — | 0.659 | $30,121 | — |
| N — 随机 0–3 天 | 32.0% | −2.1 | 0.470 | −0.022 | 0.673 | $29,322 | +$965 |
| L — 恒定滞后 3 天 | 35.3% | +1.2 | 0.388 | −0.105 | 0.537 | $25,063 | +$5,058 |
| M — 睡着 | 33.2% | −0.9 | 0.480 | −0.013 | 0.667 | $29,449 | +$675 |
| W — 只在最坏周 | 35.6% | +1.4 | 0.468 | −0.025 | 0.626 | $29,734 | +$387 |
通过标准与测试 1 相同:最大回撤恶化低于 3 个百分点,且夏普损失低于 0.10。买入持有被略去,因为它不执行任何信号 — 五次运行中它完全相同 (MaxDD 81.5%)。
结论:4 项中 3 项通过,1 项失败 — 而且失败的正是评审预测的那一项。 持续晚 3 天(L)在 $30k 的最终权益上损失 $5,058(16.8%),把年化收益 从 22.5% 拖到 19.0%,并打破夏普门槛(−0.105 对 −0.10 的限制)。回撤 保护本身在所有场景中都守住了 — 最坏的 MaxDD 恶化只有 +1.4 个百分点 — 所以滞后漏掉的是收益,不是保护。
6b. 滞后不是噪声
§5 的评审提出了这个区分;数字残酷地证实了它。相对基准的最终权益损害, 跨 30 个种子:
| 场景 | 损害 p5 | 损害中位数 | 损害 p95 |
|---|---|---|---|
| N — 随机 | −$1,172 | +$965 | +$4,194 |
| L — 恒定 | +$5,058 | +$5,058 | +$5,058 |
| M — 睡着 | −$2,888 | +$675 | +$4,265 |
随机延迟的分布很宽,某些种子上迟到反而帮了忙(p5 为负)— 噪声会被 平均掉。恒定滞后的方差为零:每个种子都吃下完全相同的 $5,058。 滞后有方向,再多的种子平均也藏不住它。如果我们只测随机延迟,就会再 发表一个不可能失败的测试。
6c. 损害落在哪里
波动尖峰日占窗口的 10.0%。执行总损害中落在这些日子上的份额:
| 场景 | 尖峰日上的损害 | 基准率 | 集中度 |
|---|---|---|---|
| N — 随机 | 17.9% | 10.0% | 1.8× |
| L — 恒定 | 15.7% | 10.0% | 1.6× |
| M — 睡着 | 17.1% | 10.0% | 1.7× |
| W — 最坏周 | 40.1% | 10.0% | 4.0× |
即使均匀的误差也会集中在最糟糕的几周 — 而当误差被限制在尖峰时段 (W),集中度翻到四倍。损害恰好落在引擎最需要你的地方。
6d. 净值曲线
6e. 这在操作上意味着什么
1. 防护盾容忍马虎,不容忍惯例。随机延迟、漏掉几天、甚至睡过约 29% 的时间 — 都通过。系统性地每个信号晚 3 天,才是会失败的那一种。 2. 睡着比迟到便宜。漏掉约 29% 的天数只花约 $675,因为信号是连续的: 操作者醒来时执行最新指令,缺口就愈合了。恒定滞后没有愈合机制 — 每一天都从 3 天前的过期状态开始。 3. 实用规则:不要优化准时,要优化掉系统性延迟。看到信号就执行; 漏掉一天,远比习惯性拖延便宜。
测试 2b 把这一切在真实生产堆栈上重跑了一遍 — KKT 权重、60/40 结构、180 天再优化。结论更加严厉:§7。
7. 测试 2b — 生产堆栈:同样的误差代价更高
测试 2 跑在 100% 风险资产的等权篮子上。生产环境不同:
- KKT 风险平价权重 — 按每个代币贡献的风险分配权重,单币上限 40%,风险仓位最高 60%
- 结构性 40% USDC 仓位
- 权重每 180 天冻结并重新优化,期间随价格漂移(不做漂移交易)
- 防护盾读取完整组合权益(风险资产 + 停泊的 USDC)
测试 2b 重放这个完整堆栈 — 原样使用真实的生产权重优化器与风险 防护盾,代码未改动 — 并重新运行同样的 A/N/L/M/W 执行误差场景。 生产中唯一的人为环节就是执行每日买卖信号(权重优化与防护盾完全 由服务器自动完成),所以场景扰动的正是这一点。首次再优化发生在 第 180 天,因为在此之前价格历史还不够长;在此之前组合停泊在 USDC。
7a. 核心数字(30 个种子的中位数)
| 场景 | MaxDD | Δ pp | Sharpe | Δ Sharpe | Calmar | 最终 | 损害 |
|---|---|---|---|---|---|---|---|
| A — 基准 | 29.1% | — | 0.453 | — | 0.833 | $32,793 | — |
| N — 随机 0–3 天 | 33.8% | +4.7 | 0.425 | −0.028 | 0.668 | $30,488 | +$2,372 |
| L — 恒定滞后 3 天 | 40.3% | +11.3 | 0.336 | −0.117 | 0.513 | $27,422 | +$5,371 |
| M — 睡着约 29% | 33.8% | +4.7 | 0.421 | −0.032 | 0.724 | $31,404 | +$1,587 |
| W — 只在最坏周 | 40.3% | +11.3 | 0.396 | −0.057 | 0.585 | $31,760 | +$1,033 |
通过标准与之前相同:最大回撤恶化低于 3 个百分点,且夏普损失低于 0.10。
结论:0/4。在生产堆栈上,每一个执行误差场景都未通过最大回撤门槛, 恒定滞后(L)两个门槛都未通过。测试 2 的结论 — 滞后漏掉收益但保护 守得住 — 在生产结构面前站不住了。
7b. 为什么生产中保护会漏
在等权篮子上,防护盾的爬坡能把 3 天执行滞后吸收在最多 +1.4 个百分点 的额外回撤内。在 KKT 60/40 堆栈上,同样的滞后带来 +4.7 到 +11.3 个 百分点。60/40 组合上防护盾的爬坡更平缓、更慢;执行迟到时,组合会以 满仓暴露更深地骑进崩盘,去杠杆才落地。产品的核心承诺 — 回撤保护 — 恰恰是被打破的那个。
7c. 从测试 2 幸存下来的结论
1. 滞后仍然不是噪声。L 的种子方差为零(p5 = p95 = +$5,371);W 同样是确定性的(+$1,033)。随机场景仍有迟到反而帮了忙的种子 (N 损害 p5 = −$1,854,M p5 = −$3,202)。 2. 损害仍然集中。W 把 42.0% 的损害集中在波动尖峰日,而尖峰日在 生产序列上只占窗口的 9.2%(4.6 倍于基准率)。 3. 睡着仍然比迟到便宜 — $1,587 对 $5,371 — 但在生产中两者都 不通过。 4. W 仍是最尖锐的案例:总损害只有 $1,033,MaxDD 却恶化 +11.3 个 百分点。掐在最坏几周上的误差几乎不动最终权益,却摧毁了保护。
7d. 操作结论
生产堆栈比等权测试所暗示的更不能容忍人为误差:连随机 0–3 天的 延迟都打破了最大回撤门槛。唯一能通过的执行标准是在信号到达的 当天行动。任何“过两天再做”的做法,都会让防护盾本来要提供的回撤 保护失效。
8. 测试 2c — 读者挑战:冻结权重,找出拐点
对测试 2b 的外部评审(读者评论,2026-08-12)提出了比第一次评审更 尖锐的主张:测试 1 的 0.5 个百分点反映的是配置,不是保护,而 测试 2b 的脆弱性在于 180 天再优化 — 因此判别性实验是冻结权重并 重跑同样的误差场景:“如果冻结权重能存活而再优化权重会崩,那么 脆弱的是再拟合,不是误差。”它还要求给出操作拐点:跑 1–5 天的恒定 滞后,把损害画成滞后长度的函数。
两者都跑了。先做一个更正:所提出的机制 — 糟糕的成交进入下一次 再拟合学习所用的数据 — 在本系统中并不存在。再拟合只读取最近的 市场价格,成交从不进入它的数据。但判别性测试本身依然成立。
8a. 冻结权重:脆弱性依然存在
两个变体,同样的 A/N/L/M/W 场景,各 30 个种子:
- 恒定权重(FC):第一次成功再优化(2020-10-07)的权重在每个 180 天边界被重复使用。与测试 2b 堆栈完全一致,只是再拟合永远 不适应新数据 — 对“再拟合”的干净对照。
- 永不再平衡(FN):权重在第 180 天设定一次,之后永远漂移、 不再重置,组合混合比例按日归一化。
恒定权重在最大回撤门槛上有 4 个场景中的 3 个失败(只有睡觉 场景通过)。冻结权重并不能修复问题。
冻结真正的代价:恒定权重基准的夏普为 0.314,再优化堆栈为 0.453, 最终权益 $23,634 对 $32,793。再拟合是收益的来源;滞后脆弱性并 不是再拟合特有的代价 — 无论堆栈持有什么权重,它都是晚执行的 去杠杆斜坡的代价。永不再平衡变体在每个维度上都更差(夏普 0.160, 最终 $15,366),同样有 3/4 失败。读者的假设预测的是相反的结果; 数据否定了它。
8b. 滞后拐点:不存在
在生产堆栈上以 1–5 天恒定滞后运行,各 30 个种子(确定性:零种子 散布,与 §6b 一致):
- 1 天滞后:最大回撤 +3.3 个百分点 — 已经在 3 个百分点门槛之外
- 2 天滞后:最大回撤 +8.5 个百分点,夏普门槛也被打破(−0.114)
- 3–5 天:最大回撤 +7.6 至 +11.9 个百分点,夏普衰减加深至 −0.165
损害随滞后大致单调上升($4,650 → $7,320),但存在相位效应 — 3 天比 2 天便宜,5 天对回撤的伤害小于 4 天 — 因为固定滞后落在 崩盘日期上的方式不同。但门槛结论没有拐点:第一天就已失败。这场 扫描本来要给出的操作数字是:可接受的滞后为零天。当日执行不是 严格与否的偏好,它就是容错预算本身。
9. 测试细节
- 篮子: ADA、BNB、ETH、XRP、SOL(等权重)
- 窗口: 2020-04-10 至 2026-07-04(2,275 天,6.2 年)
- 起始资金: $1,000
- 定投: 每 30 天 $100(共 75 次计划投入)
- 每场景种子数: 30
- 引擎: 生产模拟器,未改动
- 手续费: 每笔交易 0.1%
- 全部参数: 生产默认配置,未改动
定投抖动以预计算的逐日计划实现:在每个计划定投日,施加随机延迟 (0–5 天)、金额噪声(±20%)与可选跳过(每第 4 次)。同一份计划 同时喂给调制器与买入持有参照,因此比较是公平的。
测试 2 参数:滞后 3 天(L、W)与均匀 0–3 天(N);睡眠模型 P(入睡) = 每个清醒日 0.10,P(醒来) = 每个睡眠日 0.25(约 29% 的时间 在睡觉,每次约 4 天);波动尖峰 = 滚动 7 日实现波动率处于窗口顶部 十分位。执行误差只改变操作者何时行动;引擎的信号本身从未被 改动。
测试 2b 参数:生产 KKT 权重每 180 天基于最近 180 天的价格重算, 权重在两次再优化之间随价格漂移,防护盾监控包括停泊 USDC 在内的 完整组合价值。重放使用与生产完全一致的记账;已自检一个完美操作 者能精确复现生产基准。
测试 2c 参数:FC 在每个 180 天边界重复使用第 180 天的权重 (ADA 10.7%、BNB 14.0%、ETH 12.2%、XRP 17.1%、SOL 6.0%);FN 只 应用一次并永远漂移,风险/USDC 混合比例按日归一化。滞后扫描在 测试 2b 堆栈上以 1–5 天恒定滞后运行;每个滞后都是确定性的,因此 30 个种子完全重合。
10. 可复现性
全部测试都在同一段 6.2 年的日线数据上运行未改动的生产引擎,每 场景 30 次独立运行。测试脚本、图表生成器与原始结果数据保存在 引擎的内部研究工具中;本文每个数字都是这 30 次运行的中位数。
这是 Aegis(v14)去杠杆防护盾五项计划压力测试中的第一项。 按 §5 的批评,测试 2 从定投抖动转向信号执行滞后 — 本系列中第一个 真正可能失败的测试 — 而它交出了第一次失败:持续 3 天的信号滞后打破 夏普门槛。测试 2b 随后在生产 KKT 60/40 堆栈上重跑了同样的误差, 那里每一个误差场景都打破最大回撤门槛。测试 2c 运行了读者提出的 冻结权重对照与滞后扫描:冻结权重后仍有 3/4 场景失败,连 1 天滞后 都打破最大回撤门槛 — 当日执行信号依然是唯一能通过的做法。 查看完整测试计划了解其余四项。