数据质量、复权与连续合约
说明海龟交易法回测中价格复权、合约换月、连续合约、交易所数据源和异常 K 线如何影响结果。
交易规则再清晰,如果数据错了,回测结论也会错。趋势跟踪尤其依赖历史高低点、ATR/N 值和止损距离,因此数据质量会直接影响入场、仓位和退出。
价格复权
股票市场会遇到分红、拆股、配股等事件。如果使用未复权价格,历史高低点可能出现人为断层,突破信号和 ATR 都会失真。
回测时应明确:
- 使用前复权、后复权还是未复权。
- 复权方式是否影响真实可交易价格。
- 交易信号和成交价格是否使用同一套口径。
不要混用不同口径的数据。
合约换月
期货和部分衍生品会到期换月。连续合约通常由多个合约拼接而成,不同拼接方法会改变历史价格形态。
常见问题包括:
- 换月日选择不同导致信号不同。
- 远近月价差造成跳变。
- 连续合约能显示历史趋势,但并不总是可直接成交。
- ATR/N 值可能被拼接跳变放大。
如果使用连续合约回测,应记录拼接规则,并在实盘中确认真实下单合约。
加密货币数据源
加密货币市场还要区分现货、永续合约、指数价格和标记价格。不同交易所的 K 线可能不同,插针和流动性也不同。
相关专题:
异常 K 线处理
异常 K 线不能随便删除。删除会美化回测,保留也可能夸大不可成交价格。
更稳妥的做法是分类记录:
| 类型 | 处理思路 |
|---|---|
| 数据缺失 | 标记缺口,避免直接计算信号 |
| 明显错误价 | 和其他数据源交叉验证 |
| 真实插针 | 保留并评估是否可成交 |
| 交易所异常 | 记录暂停规则和复盘结论 |
如果一个市场经常出现无法解释的异常数据,它可能不适合进入市场池。
发布规则前的检查
回测前至少确认:
- 数据来源和版本。
- 时区和 K 线切分方式。
- 手续费、滑点和资金费率假设。
- 是否存在复权或换月处理。
- 异常数据如何记录。
- 样本是否覆盖震荡、趋势和极端行情。
这些内容应写进策略版本,避免后续“同一套规则”其实使用了不同数据。