跳至正文
面向全球华人的数字资产观察全球视角 · 地区背景
链观 BTC866CHAIN VIEW
市场观察

加密策略回测:未来数据与幸存者偏差

历史模拟若在一月决策中使用三月才修订的指标,就混入未来信息。数据发布、获取和生效时间可能不同,合并资料前要建立时点规则。

阅读语言简体中文繁體中文English한국어РусскийالعربيةEspañol (México)Tiếng Việtไทย
加密策略回测:未来数据与幸存者偏差

原创主题配图: 链观 BTC866 原创主题图解 · ChainView BTC866 Editorial · CC BY 4.0

回测只能使用当时已知资料

历史模拟若在一月决策中使用三月才修订的指标,就混入未来信息。数据发布、获取和生效时间可能不同,合并资料前要建立时点规则。今天看到的完整历史图不一定是当时真实可取得的数据,尤其不能按最终榜单倒选早期赢家。

保存首次发布版本能避免使用未来修订。链上数据也会受确认和重组影响,信号若依赖尚未最终确定的区块,需要写出当时可观察状态。不能因历史浏览器如今显示完整就假设过去实时查询也同样完整。

保留失败与退出样本

只回测仍在交易的资产会忽略下架、倒闭和流动性消失的案例。历史投资范围应按当时可用名单重建,退出时如何估值也要写明。完全找不到价格不能假设以最后价无成本卖出,应标注缺失和可能损失,避免幸存者偏差美化曲线。

资产池应包含当时具备交易条件的失败项目,缺失价格的处理可能决定结果。若只能拿到幸存样本,就在结论中限定范围,而非给出整个市场通用收益率。数据成本与不可得性本身也是现实约束。

加入现实执行条件

手续费、价差、订单量、延迟和可得深度都会影响结果。收盘价给出信号后再按同一收盘价成交可能不可实现,跨平台资金也不会瞬间到达。用不同成本和滑点假设做敏感性比较,比只展示一条最佳收益曲线更有信息价值。

模拟成交量应与可得深度相容,不能让一个大策略免费吃下全部历史成交。手续费等级、返佣和资金借贷还需有合理假设,不能选择今天最优惠等级反套过去。报告敏感性范围比小数点后的漂亮精度更重要。

将选择和检验分开

调参所用样本与真正样本外期间要区分,试过很多规则后挑最好一个会产生选择偏差。记录尝试次数、参数范围和弃用策略,不把偶然拟合包装成发现市场定律。条件改变后应重新验证,而不是不断调整历史规则让过去永远好看。

训练集、验证集和最终检验集各自承担不同角色。若反复查看最终结果再改规则,该区间就不再是真正未见样本。记录实验日志和决定时间,让他人理解是否存在选择偏差,别用复杂术语掩盖不断追随过去走势。

报告限制与复现条件

研究说明应包含数据版本、投资范围、调仓时点、成本、缺失处理和测试区间。假想策略即使回测盈利,也不能保证未来可执行或获利。海外用户还需考虑当地资格与货币,不应为验证一张模拟图就匆忙投入资金,先理解方法中的脆弱假设。

最终说明也要包括无法建模的风险,如停机、提款延迟和市场消失。历史模拟可能无法准确估计极端事件,这不是省略风险的理由。读者可用回测提出问题,但真实资金决定还需独立评估和可承受损失范围。

学习表可分别围绕“时点数据”“完整样本”“执行成本”“样本外检验”记录定义、输入、结果和限制。先固定一组假想输入,再单独改变一个条件,观察哪个结论随之变化。所有数值都注明单位、时间和来源,未知项保留未知,不能自动补零。这个步骤的价值是暴露方法依赖,不是挑出最漂亮的结果;真实资金决定还应结合支出需要和可承受风险。

资料来源

  1. SEC investor bulletin on performance claims (在新窗口打开)
  2. FINRA investment performance (在新窗口打开)