用于回测的历史加密货币数据
一种实用的工作流,用于构建在交易对、交易所和合约发生变化后仍可重现的加密货币历史。
历史加密货币数据是与特定交易所和交易对相关联的过去市场观察的时间序列。一个适用于回测的数据集需要稳定的交易对身份、交易所符号历史、UTC间隔规则、现货或衍生品分类、价格和数量单位、数据缺失状态、上市和退市历史、源谱系以及一个冻结的截止点,以便后续的回填不会泄露到早期的实验中。
指定市场,而不仅仅是交易代码
BTCUSDT可以指现货、永续合约或另一个交易所的类似命名的交易对。在每条观察记录旁边存储交易所、市场类型、基础资产、计价或结算资产、合约规范以及原始符号。
不要从今天的活跃目录中重建旧的交易宇宙。已退市的交易对、已到期合约、重新计价和状态变更都是历史样本的一部分。
使连续交易可衡量
使用UTC间隔边界和预期的间隔账本。在连续交易的市场中,节假日不能解释数据缺失,尽管交易所维护、上市时间、暂停和源中断可能可以。
在允许的情况下,保留原始交易或源K线,然后对标准化和聚合逻辑进行版本化。历史导出应报告不完整的窗口,而不是默默地向前填充它们。
- 固定源交易所和市场类型。
- 保留上市和退市状态。
- 区分零活动和缺失的收集。
- 冻结数据集截止点和模式版本。
测试回测合约
验证OHLC关系、非负数量、重复项、UTC边界、极端价格变动、交易对映射、资金费率间隔以及相关的合约到期日。将样本与原始源对象进行比较,并将检查结果与研究工件一起保存。
将费用、价差、滑点、资金费率、清算规则和交易所特定的执行分开建模,而不是与市场观察分开。一个K线不能证明其最高价、最低价或收盘价有成交。
Key takeaways
- 01在每一行中标识交易所和市场类型。
- 02在历史交易宇宙中包含非活跃和已退市的交易对。
- 03明确报告连续市场的缺失数据。
- 04冻结源数据、截止点、模式和验证证据。