2.3 KiB
2.3 KiB
🚀 时间戳问题修复指南
📋 问题描述
当前出现大量交易对的错误:
WARNING - Unable to get latest candle (OHLCV) data for pair XXX/USDT - '>=' not supported between instances of 'Timestamp' and 'int'
🔍 根本原因
这个错误发生在Freqtrade框架层面,而不是策略代码,主要原因是:
- 交易所API返回的时间戳格式不匹配
- 缓存数据损坏
- 时间配置问题
✅ 已完成的策略修复
我已经修复了策略中的以下问题:
- ✅ NaN值处理:将默认值从
np.nan改为0.0 - ✅ 时间戳转换:确保所有时间戳都是整数类型
- ✅ 数据验证:添加了长度一致性检查
- ✅ 数据清理:处理无穷值和NaN值
🎯 系统级修复步骤
方法1:快速重启(推荐)
# 1. 停止当前服务
pkill -f "freqtrade trade"
# 2. 清理缓存数据
cd /Users/zhangkun/myTestFreqAI
rm -rf user_data/data/*
# 3. 重启服务
freqtrade trade -c config.json
方法2:使用修复脚本
# 运行修复脚本
cd /Users/zhangkun/myTestFreqAI
./system_restart.sh
方法3:手动修复
-
检查配置文件
# 检查config.json是否存在时间配置问题 cat config.json | grep -E "timeframe|timezone" -
验证策略文件
cd /Users/zhangkun/myTestFreqAI/freqtrade/templates python3 -m py_compile freqaiprimer.py -
清理并重启
# 清理缓存 rm -rf user_data/data/* rm -rf user_data/cache/* # 重启 freqtrade trade -c config.json
📊 验证修复效果
重启后观察日志:
# 实时查看日志
tail -f freqtrade.log | grep -E "Timestamp|get_latest"
修复成功的标志:
- ✅ 不再出现时间戳错误
- ✅ 交易对能够正常获取数据
- ✅ 策略正常运行
🚨 如果问题仍然存在
-
检查交易所配置
- 确认API密钥有效
- 检查网络连接
- 验证交易所状态
-
更新Freqtrade
git pull origin develop pip install -e . -
联系支持
- 检查Freqtrade GitHub issues
- 查看官方文档
🎉 预期结果
执行修复后,应该看到:
- 时间戳错误消失
- 所有交易对正常获取OHLCV数据
- 策略正常执行交易逻辑