作 者:老余捞鱼
原创不易,转载请标明出处及原作者。

文中示例仅用于技术讨论,不构成任何操作建议。
量化策略开发应以学习和技术交流为目的。
本号不荐股、不卖课、不承诺收益。
市场有风险,请合法合规投资。
本文约 2700 字 | 阅读预计需 6-8 分钟,后有代码下载,建议先收藏。
· · ·
塔勒布2007年写了本《黑天鹅》,书中给交易员描述了那种平时看不见、一来就要命的情况。2008 金融危机、2020 年 3 月疫情崩盘,都属于该情况。
塔勒布关心的从来不是躲风险,他要的是把仓位控好,让混乱替你干活,而不是砸在你头上。
这个思路催生了整整一类交易系统。这类系统不预测崩盘何时来,它依靠一台机器,崩盘真来了就按规矩反应,不带情绪,也不给恐慌劫持你的判断。
我今天就把这台机器用Python写出来,然后在同一段五年窗口里,分别跑在五家完全不同的公司上,谷歌、亚马逊、摩根大通、宝洁、雪佛龙。

五只黑天鹅,对应五只被测试的股票
一台只会接货、永不卖出的机器
先说这台机器怎么认”黑天鹅”。剥掉哲学,黑天鹅大跌其实就是价格相对近期高点快速掉了一大截。策略就按这个定义来,盯着资产到过的最高价,量当前价从那个峰值掉了多少,掉过一条固定线(这里设 20%)就算信号。
实现上有个细节,大多数回测都做错,它用了两个独立的峰值追踪器。
一个是全程最高价,只用来在图上标”大回撤期开始了”。另一个是动态峰值,每次接完货就重置,用来判断下一次能不能再触发。
重置很关键。把参考峰值拨回接货那一刻的价格,策略就能把一轮长熊里的第二脚杀跌,当成一次全新的黑天鹅来接。
还有两道护栏防止对同一次崩盘反复出手。
第一道是冷却期,14 个自然日。跌 20% 这个条件在你买完那一刻并不会立刻变假,价格颠簸,所以触发后第二天往往还挂在阈值外。没这道闸,策略会对同一次崩盘反复开火。14 天停顿逼着新信号必须等够时间才算数。
第二道是每次固定投入,初始资金的 20%。策略不纠结这次崩盘有多大,只守一条纪律,不在第一脚杀跌里一把梭。
最关键的一点,被测试的这个版本它选择了不卖,每次触发的接货,都是加仓。
信号只是候选,不是命令
价格掉20%,说的是情绪崩了,不是说生意坏了。股价跌两成,告诉你人气散了,可它没说营收还在不在涨、资产负债表扛不扛得住一轮萧条,也没说这波跌是暂时的恐慌,还是市场在正确重定价一家结构性坏掉的公司。
所以回撤探测器该产出的是候选名单,不是下单指令。在黑天鹅信号拿到钱之前,它得先过一道简短的基本面清单:
营收和利润还在往对的方向走吗,还是崩盘刚好撞上真恶化?资产负债表够不够硬,能熬过一轮长萧条?这波回撤是宏观、全行业一起卖(真黑天鹅),还是这家公司自己有没解决的麻烦?

Detect ≠ Decide:算法只负责检测信号,基本面做最终终审
下面这五只股票的测试,正好演示了为什么这道过滤比触发本身更重要。
五只股票,五张成绩单
同一套代码,同一道 20% 门槛,每次触发投入20%本金,同样14天冷却,同样一万美元起步,同样五年窗口(2021年8月到2026年8月),分别跑在五家基本面故事完全不同的公司上。
| 代码 | 投入本金 | 剩余现金 | 策略终值 | 一直持有终值 | 相对一直持有 |
|---|---|---|---|---|---|
| AMZN | $8,008 | $1,992 | $20,735 | $16,427 | +26.23% |
| GOOGL | $8,008 | $1,992 | $28,523 | $26,107 | +9.25% |
| PG | $4,004 | $5,996 | $10,662 | $11,659 | -8.56% |
| JPM | $6,006 | $3,994 | $20,359 | $25,753 | -20.94% |
| CVX | $8,008 | $1,992 | $13,141 | $22,847 | -42.48% |
把这张表摊开,差距大到离谱。最好的亚马逊比一直持有多赚 26%,最差的雪佛龙比一直持有少赚 42%。同样一万美元起步,同样 20% 的接货纪律,结局能差出快 70 个点,我们往下逐个看一下。
AMZN +26.23%,全场最好,理由和谷歌一样,只是被放大了。 亚马逊的图跟谷歌是同一个形状,但 2022 年从 170 多跌到 90 以下的过程中,触发了多次。后面是这组里最猛的一轮多年反弹。这是策略最爽的状态。

AMZN:策略净值 vs 一直持有,红点为接货信号
GOOGL +9.25%,正合策略胃口。 谷歌五年图就是这策略生来要抓的那种,2022 年一路磨、两脚熊市。钱在好几个不同的恐慌里接在了便宜的位置。

GOOGL:策略净值 vs 一直持有,红点为接货信号
PG -8.56%,触发太少,啥也没发生。 五年里只触发两次,投出去 4004 美元,剩下 5996 美元,也就是六成起步资金,全程趴在现金里。

PG:触发极少,大半资金闲置在现金里
JPM -20.94%,触发三次。 摩根大通的图显示三次触发都挤在 2022 年那轮回撤附近。因为策略永不卖、也不在合格回撤之外加仓,账户里接近四成资金在最该涨的几年里闲置,而一直持有把整段行情吃满了。

JPM:三次触发挤在 2022,近四成资金闲置
CVX -42.48%,投出去的钱和赢家一样多,却是全场最差。 对比谷歌和亚马逊,那两家 2022 年真有一轮多年下跌,参考峰值跟着价格一起被拖下来,所以触发点越接越低,贴近了真实周期底部。雪佛龙从没这种跌幅。

CVX:策略在上升通道里反复接贵,跑输一直持有
策略擅长在下行途中接一把下落的刀,但如果一只股票大部分时间在慢涨、只有浅浅回踩,它就结构上接不到多年低点,而雪佛龙正好是这个形状。
这堂课,跑输拿着不动有两种姿势
把五只结果排一排,掉出来的规律跟哪个行业表现最好无关。跑输一直持有,其实有两种完全不同的姿势。
第一种,现金闲置拖累(PG、JPM)。 这些股票根本没怎么崩,触发少。宝洁让六成资金闲置,摩根让四成闲置。然后它们眼睁睁看着自己的股票猛涨,那笔闲钱啥也没挣。这是直觉里最容易想到的失败模式,黑天鹅太少,钱全在边上看戏。
第二种,接贵了拖累(CVX),这个不直观,也更致命。 雪佛龙投出去的 8008 美元跟赢家一样多,资金利用率不是问题。问题是雪佛龙这五年大部分时间在爬坡,所以每次”从近期高点跌 20%”的触发,都发生在比股票起点高得多的价格上。在一条上升的基准线上接 dips,跟在绝对低位接便宜货不是一回事。一直持有吃满了从真正底部起来的整段行情,而策略在 120 到 165 美元之间摊平接货,远高于 80 美元的起步价。再把闲置现金叠上去,策略只吃到了一直持有整段行情里的一小片。
满仓、深度多波次崩盘(AMZN、GOOGL),这才是赢家共有的 setup。 赢家共享一个具体形态,一轮真实、多波的下跌,把触发点连续重置了好几次,把进场价拉向真实周期底部,接着来一轮够强的反弹,奖励了在那一截接货的人。
一句话收口,触发点接到的那个价格,代表的是真便宜,还是只是贵趋势里一个浅浅的 dips,这才是决定成败的东西。
你可以自己跑一遍
我把完整回测代码做成了可直接运行的 Colab 笔记本,换上你自己的标的,调一下回撤门槛和投入比例就行。
Colab地址:
https://colab.research.google.com/drive/1yN9IwX34uPfJbCPS1ohdcrVN4uhQAVfr
代码下载地址:
http://www.laoyulaoyu.com/code/blackswanevents.zip
但请大家记住上面那张表。代码是死的,20%的纪律是铁的,可五家公司给出五种结局。决定你落在哪一格的从来不是信号本身,是信号之外你对那家公司懂多少。
#黑天鹅 #塔勒布 #量化回测 #机械策略 #急跌接货 #美股 #亚马逊 #谷歌 #雪佛龙 #买入持有 #波动率 #仓位管理
Be First to Comment