源文件:research/quant_digests/2026-03-19_0525_fib-trend-strength-admission-layer.md
这次看的是 Khattak et al. (2024) 的论文《Profitability trend prediction in crypto financial markets using Fibonacci technical indicator and hybrid CNN model》。它表面上是在做 BTC 1m 的深度学习分类,但对我们更有价值的不是 CNN 本身,而是一个很适合 desk 侧偷出来单测的旁支:Fibonacci 不一定只该回答“有没有回到位”,也可以回答“这次回到位以后,后续延续的强弱该分几档”。
touch 0.618 = 开火 的二元开关。这篇最直接服务的是当前的 Fibonacci confirmation / retest_hold 收口线。
我们最近已经反复补了 0.618 hold / 0.5 fail、VWAP reclaim、volume、structure reclaim 这些“有没有守住”的确认模块,但还比较少认真问:守住以后,这次 continuation 到底是弱修复、中等 continuation,还是值得给更高预算的强 continuation?
这篇论文给的启发,不是让我们把 15m Fib retest_hold 改成 ML 分类器,而是提醒:
Fib 负责回答位置;trend-strength bucket 负责回答这次守住后的延续质量;deny / half-size / full-size。换句话说,它比继续再补一个普通 veto 更值得做,因为它正好能把当前 Fib 线从“是否成立”推进到“成立以后配多大”。
研究假设: 对 BTC / ETH / SOL 的 15m perpetual,Fib retest_hold 若改成“位置 + 强度分档”而不是二元确认,能在不过度砍样本的前提下改善 post-cost expectancy,并减少把弱 bounce 误判成可重仓 continuation。
最小可计算定义: 先保留现有 base event:impulse leg -> 回踩 0.5/0.618 -> 0.618 未收破。然后把 admission 分成三档:
weak:触及 0.618 后,只是守住,但确认 bar 收盘仍在 0.5 下方;medium:触及 0.618 后,确认 bar 收盘重新站回 0.5 上方;strong:在 medium 基础上,再额外满足 收回 0.382 或 突破 retest bar high。最小回测切口:
BTC / ETH / SOL perpetual15m180 ~ 365 天base_binary:现有 hold / fail 二元版本strength_filter:只做 medium + strongstrength_sizing:weak=0、medium=0.5x、strong=1.0x最该先看 2 个指标:
2~4 bar fail rate:分档后,弱 bounce 是否被更诚实地剔掉;post-cost expectancy:medium/strong 或分档 sizing 是否比 binary 更稳。如果第一轮就看到 weak 桶的 fail rate 显著更高,而 medium/strong 保住了大部分有效样本,这条线就值得升成 Fib retest_hold 的正式 admission / sizing layer。若三档之间没有可分性,就说明论文里的“strength”更依赖 1m + ML 表达,在我们 15m 规则化框架里未必可迁移。
0.5 / 0.618 / 0.382 组合必胜。strong 桶可能改善胜率却损失 R multiple;所以必须看 post-cost,不能只看 hit rate。10.1186/s40537-024-00908-7https://journalofbigdata.springeropen.com/articles/10.1186/s40537-024-00908-7https://link.springer.com/content/pdf/10.1186/s40537-024-00908-7.pdf