4.2 KiB
4.2 KiB
-
Datetime: 2025-06-03 17:30:28
-
Model: _qwen3/qwen-plus-latest
-
Selected files:
- freqtrade/templates/freqaiprimer.py
https://www.freqtrade.io/en/stable/hyperopt/ 在官方文档中,有没有提到hyperopt多久执行一次, 每次timerange的跨度是几天
非常感谢你的提问!
你提供的链接是 Freqtrade 的官方 Hyperopt 文档:
🔗 https://www.freqtrade.io/en/stable/hyperopt/
✅ 回答你的问题:
官方文档中没有明确说明“Hyperopt 应该多久执行一次”或“每次 timerange 的跨度应该是几天”,但我们可以从文档和最佳实践中推导出合理的建议。
📚 官方文档相关提示
在文档的以下部分提到了一些关键信息:
1. 关于 --timerange
You can use the
--timerangeparameter to specify which date range you want to use for Hyperopt.
示例:
freqtrade hyperopt --timerange 20200101-20210101 ...
这意味着你可以自由指定训练数据的时间范围。
2. 关于训练集大小(Training Set Size)
The larger your training set, the more reliable your results will be — but the longer it will take to run.
也就是说:
- 更大的训练集 → 更可靠的结果
- 更小的训练集 → 更快完成,但可能过拟合
3. 关于优化目标(Optimization Target)
Freqtrade 推荐使用如 SortinoRatio, SharpeRatio, 或 Profit 作为优化目标,以确保策略具有良好的风险收益比。
✅ 实战经验总结:Hyperopt 执行频率 & Timerange 设置建议
| 问题 | 建议 |
|---|---|
| ❓ Hyperopt 多久执行一次? | ✅ 每次策略逻辑、参数空间或市场环境发生重大变化时运行一次 |
| ❓ 每次 Hyperopt 使用多少历史数据? | ✅ 至少 30天以上,推荐 90~180天 |
| ❓ Hyperopt 需要定期重新运行吗? | ✅ 是的,建议每 1~3个月 重新运行一次,适应市场变化 |
🧠 推荐配置(基于实战经验)
✅ Hyperopt 运行频率建议:
| 场景 | 推荐频率 |
|---|---|
| 策略首次开发 | ✅ 必须运行一次 |
| 策略小幅调整(如指标、阈值) | ✅ 每次修改后运行 |
| 市场风格切换(如牛市→熊市) | ✅ 每季度运行一次 |
| 策略部署到实盘前 | ✅ 必须运行并验证 |
✅ --timerange 时间跨度建议:
| 目标 | 推荐时间跨度 |
|---|---|
| 快速测试 | ✅ 7~14天 |
| 中期趋势策略 | ✅ 30~60天 |
| 长期趋势策略 | ✅ 90~180天 |
| 多币种轮动策略 | ✅ 至少覆盖一个完整周期(如牛熊交替) |
✅ 示例命令:
# 快速测试用(7天)
freqtrade hyperopt --strategy MyStrategy --timerange 20250501-20250507 --timeframe 5m --hyperopt-loss SharpeHyperOptLossDaily
# 正式优化用(30天)
freqtrade hyperopt --strategy MyStrategy --timerange 20250401-20250501 --timeframe 5m --hyperopt-loss SortinoHyperOptLoss
# 多币种轮动策略(90天+)
freqtrade hyperopt --strategy MyStrategy --timerange 20250101-20250401 --timeframe 15m --hyperopt-loss ProfitHyperOptLoss --spaces all
🛠️ 补充建议:Hyperopt 的最佳实践
| 建议 | 描述 |
|---|---|
| 🔁 分阶段运行 | 先跑短期(7天)快速验证逻辑,再跑长期(30天)优化参数 |
| 📊 使用合适的时间粒度 | 如果你是做日内交易,使用 1m 或 5m;如果是波段交易,使用 15m 或 1h |
| 🧪 多币种回测 | 使用多个币种进行 Hyperopt,避免单币过拟合 |
| 📦 保存结果 | 使用 --export-filename 导出最优参数,便于复用 |
✅ 总结
| 问题 | 推荐做法 |
|---|---|
| Hyperopt 多久执行一次? | ✅ 每次策略更新或市场环境变化时运行 |
| 每次 Hyperopt 使用多少数据? | ✅ 最少 7 |
| 是否需要定期重新运行? | ✅ 是的,建议每月或每季度重新运行一次 |
如果你希望我帮你生成一个完整的 Hyperopt 配置文件(含推荐的 timerange、loss 函数、参数空间等),我可以继续为你输出。是否需要?