以比特币 2021 年双顶结构为例:谈什么是「未来数据泄漏」

当我们回测一套策略、检视一组指标时,是否真的站在当下?本文从「未来数据泄漏」与「过度拟合」两大陷阱切入,剖析 2021 年双顶对链上分析的致命考验。 (前情提要:续命行情:以链上数据剖析最诡异的 2021 年双顶 ) (背景补充:链上数据学堂(一):你知道全市场的 BTC 平均成本是多少吗? ) Key Points: 谈「未来数据泄漏(Look-ahead bias)」的概念 谈交易领域中的命门:过度拟合(Overfitting) 2021 年双顶:对于刻舟求剑而言最大的考验 三个指标与一个模型的战绩回顾 未来数据泄漏(Look-ahead bias) 试想一个情境: 「假设我开发了一个交易策略,并将这个策略严谨的回测过去 50 年,回测时间是 1975 ~ 2024,并且得到很不错的回测绩效。于是,我便决定在 2025 年启用这一套策略。」 各位读者对于以上描述,有人看出哪里有毛病吗? 如果真的只做 1975 ~ 2024 的回测,其实就很容易陷入「未来数据泄漏」的陷阱之中。因为我们单纯只用了「至今为止」所有的数据来做回测,这会导致我们训练出来的策略参数,很可能「不耐打」! 更严谨的作法是,举例而言: 可以再针对「1975 ~ 2023」(假设我们人在 2024 年),并以训练后的策略,去回测 2024 年整年的绩效;当然还可以用 1975 ~ 2022 时段的数据去训练策略,然后再拿训练后的策略去回测 2023、2024 的绩效。 更精确来说,我们可以透过「滚动回测」或「步进回测」的方式,去尽可能的避免「未来数据泄漏」。 这样做的好处是「确保训练后的策略,可以接受未来的考验」。 过度拟合(Overfitting):最致命的毒药 只要是稍微有基础量化策略开发概念的人,就会知道 overfitting 能带来的问题有多严重。 所谓 overfitting,用通俗的话语来说就是「刻舟求剑」,这会让回测数据很好看(训练误差低),但却难以应用于实战(测试误差高)。 在此我打算引入一个数学的概念来解释:(看到数学就头疼的读者,可以直接跳到下一段看结论) 假设有一数列:「1 , 2 , 4 , 8 , 16 , ?」 对数字稍微有点敏感的读者,应该都会觉得下一个数字是 32,因为前五项数据明显与「2 的次方」有明显关联。 但事实上,我们其实无法预测下一个数字是多少。 因为从数学的角度,我们完全可以利用 Lagrange 插值法,构建另一个高次多项式,让第六个数据不是 32,但也满足规律。 这意味着:「单纯基于有限数据点进行外推的预测,是不可靠的」。 2021 年第二顶:对于多数指标而言最大的考验 讲完无聊的理论观念,接着我们来聊实战。 以下,我将拿出三个链上数据指标,以及一个我个人开发的模型,为各位读者进行讲解: 1. MVRV 相信稍微研究过链上数据分析的读者,一定都听过 MVRV,我之前的文章也有针对这个指标做过详细的教学( 链上数据学堂(一):你知道全市场的 BTC 平均成本是多少吗?)。 如上图,这是 MVRV 的历史数据图表。图中标记的 1、2、3、4,分别对应 13 年、17 年的顶部,以及 2021 年的两次顶部。 我们可以明显看到:每一轮顶部的 MVRV 高点是「递减」的。 我听过很多人会用以下方法,针对高点递减的现象做处理: 「我知道是递减,所以在判断顶部的时候,我会抓一个更保守、更低的阀值当作警讯。」 现在问题来了: 更保守的阀值怎么设定? 如果我们回到 2021 年 4 月,能看到的历史数据只有 13、17 年,保守设定后的阀值能在 21 年 4 月触发吗? 用这种方式设定的阀值,能在 2021 年第二顶触发吗? 如果不认为 2021 年 4 月是顶部,那 2021 年第二顶就更不可能逃顶了,对吧? 我想说的是: 正因为 BTC 历史数据的样本数太少,并且若单纯考虑前几次周期,其实很可能陷入「未来数据泄漏」的陷阱中。 身处 2021 年 4 月(第一顶)的人,不会知道当时的 MVRV 数值,其实就是那一轮周期的最高点,因为他只能看到 13、17 年的数据;同理,在 2021 年第二顶出现的时候,MVRV 数值更是处于极低的位置,如果第一顶不逃,那自然不可能根据第二顶的数据去逃顶,如此便会错失 2021 年逃顶的最佳时机。 2. AVIV 指标 AVIV 可以视为修正过、考虑更周详的 MVRV,并且相比 MVRV 存在更明显的「均值回归」特性。 但即使如此,「峰值(高点)递减」的现象依然很明显: 图中标记的 1、2、3、4,分别对应 13 年、17 年的顶部,以及 2021 年的两次顶部。 同样的问题,我就直接复制上面的文字了,供各位读者思考: 更保守的阀值怎么设定? 如果我们回到 2021 年 4 月,能看到的历史数据只有 13、17 年,保守设定后的阀值能在 21 年 4 月触发吗? 用这种方式设定的阀值,能在 2021 年第二顶触发吗? 如果不认为 2021 年 4 月是顶部,那 2021 年第二顶就更不可能逃顶了,对吧? RUP(Relative Unrealized Profit) 之前我也详细介绍过 RUP 这个链上数据,有兴趣的读者可以参考以下两篇文章的内容: 链上数据学堂(九):市场晴雨表 RUPL(I)- 数据介绍 & 抄底应用 链上数据学堂(十):市场晴雨表 RUPL(II)- 最强顶部讯号 & 历史周期顶部详细分析 曾有读者询问:「可以理解 RUP 背离的逻辑,但是否应该一并考虑 RUP 曾经到过的历史高位?」 如上图,这是 RUP 的历史图表,图中标记的 1、2、3、4,分别对应 13 年、17 年的顶部,以及 2021 年的两次顶部。 可以看到,即便是针对市值做过标准化处理的 RUP,还是存在峰值递减的现象。 再来一次灵魂拷问: 更保守的阀值怎么设定? 如果我们回到 2021 年 4 月,能看到的历史数据只有 13、17 年,保守设定后的阀值能在 21 ...

查看原文
本页面内容仅供参考,非招揽或要约,也不提供投资、税务或法律咨询。详见声明了解更多风险披露。
  • 赞赏
  • 评论
  • 分享
评论
0/400
暂无评论
交易,随时随地
qrCode
扫码下载 Gate.io APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • ไทย
  • Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)