3.3 KiB
3.3 KiB
Freqtrade 保护机制配置指南(2024年更新版)
概述
本指南说明如何在Freqtrade 2024年最新版本中正确配置保护机制,以防止连续亏损和情绪化交易。
⚠️ 重要更新
从2024年开始,保护机制配置方式已变更:
- ❌ 弃用:在配置文件中设置
protections属性 - ✅ 新方式:在策略文件中使用
@property def protections方法定义
当前配置方式
配置位置
保护机制现在需要在策略文件(freqaiprimer.py)中通过@property def protections方法定义。
已添加的保护机制
1. StoplossGuard(止损保护)
作用:防止在短时间内出现过多止损交易 配置参数:
method: "StoplossGuard"lookback_period_candles: 60(60根3分钟K线 = 3小时)trade_limit: 2(最多2笔止损交易)stop_duration_candles: 60(暂停60根3分钟K线 = 180分钟)only_per_pair: true(仅针对单个币对)
2. CooldownPeriod(冷却期)
作用:防止过度频繁交易 配置参数:
method: "CooldownPeriod"stop_duration_candles: 2(2根3分钟K线 = 6分钟冷却期)
3. MaxDrawdown(最大回撤)
作用:限制账户最大回撤,保护资金安全 配置参数:
method: "MaxDrawdown"lookback_period_candles: 48(48根3分钟K线 = 2.4小时)trade_limit: 4(4笔交易限制)stop_duration_candles: 24(暂停24根3分钟K线 = 72分钟)max_allowed_drawdown: 0.20(20%最大回撤容忍度)
配置代码位置
# 在策略类中添加以下代码
@property
def protections(self):
return [
{
"method": "StoplossGuard",
"lookback_period_candles": 60,
"trade_limit": 2,
"stop_duration_candles": 60,
"only_per_pair": True
},
{
"method": "CooldownPeriod",
"stop_duration_candles": 2
},
{
"method": "MaxDrawdown",
"lookback_period_candles": 48,
"trade_limit": 4,
"stop_duration_candles": 24,
"max_allowed_drawdown": 0.20
}
]
工作原理
- StoplossGuard: 在3小时内,如果单个币对出现2笔或更多止损交易,将暂停该币对交易180分钟
- CooldownPeriod: 每笔交易完成后,强制等待6分钟才能进行下一笔交易
- MaxDrawdown: 在2.4小时内,如果账户回撤达到20%,将暂停所有交易72分钟
迁移步骤
- ✅ 配置文件:已从
freqaiprimer.json中移除protections配置 - ✅ 策略文件:已在
freqaiprimer.py中添加@property def protections方法 - ✅ 参数优化:根据3分钟K线交易特点调整时间参数
预期效果
- 减少连续亏损风险
- 防止情绪化交易
- 保护账户资金安全
- 维持合理的交易频率
- 避免配置文件弃用错误
验证方法
启动策略后,查看日志应显示:
freqtrade.plugins.protectionmanager - INFO - Loaded 3 protection handlers
故障排除
如果看到错误:
Configuration error: DEPRECATED: Setting 'protections' in the configuration is deprecated
解决方案:确保已从配置文件中移除protections配置,并在策略文件中添加@property def protections方法。