核心用法
crypto-backtest 是一个基于 Python 的命令行回测工具,专为加密货币期货策略设计。核心工作流分为三步:
1. 数据获取:通过 ccxt 库连接 Bybit、Binance、OKX 等交易所,拉取 OHLCV 历史数据;
2. 策略执行:内置 EMA 交叉、RSI 超买超卖、MACD、布林带四种经典策略,支持自定义参数组合;
3. 结果导出:输出胜率、盈亏比(PnL)、最大回撤、最佳/最差单笔等关键指标为 JSON,便于接入量化流水线。
高级用法包括参数扫掠(sweep.py 自动遍历多策略多参数组合)和自定义策略插件(遵循 references/custom_strategy.md 接口规范)。
显著优点
- 交易所覆盖广:借助 ccxt 抽象层,理论上支持 100+ 交易所;
- 开箱即用:无需额外数据订阅,直接拉取交易所公开历史数据;
- 灵活可扩展:插件式策略接口,Python 开发者可快速接入自定义因子;
- 结果标准化:JSON 输出便于与 Airflow、DBT、Pandas 等数据工具链集成。
潜在局限与风险
- 数据质量依赖交易所:部分小交易所历史数据存在缺口或价格异常,需人工清洗;
- 滑点与流动性未建模:默认回测未模拟订单簿深度,高频或大额策略在实盘中可能出现显著滑点;
- 过拟合风险:参数扫掠易产生数据窥探偏差(data snooping),需配合样本外测试与交叉验证;
- 杠杆模拟简化:未考虑强平机制、资金费率、维持保证金等期货细节,高杠杆结果可能过于乐观。
适合人群
- 量化研究员与策略开发者,需快速验证 crypto 信号;
- 个人交易者,希望系统评估手动策略的历史表现;
- 数据工程师,构建自动化交易研究流水线。
常规风险提示
> ⚠️ 回测结果不代表未来收益。过去表现优异的参数组合可能在未来失效(regime change)。建议将回测作为筛选工具,而非最终决策依据,实盘前务必进行模拟交易(paper trading)与小资金验证。