97 lines
3.3 KiB
Markdown
97 lines
3.3 KiB
Markdown
# 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%最大回撤容忍度)
|
||
|
||
## 配置代码位置
|
||
```python
|
||
# 在策略类中添加以下代码
|
||
@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
|
||
}
|
||
]
|
||
```
|
||
|
||
## 工作原理
|
||
1. **StoplossGuard**: 在3小时内,如果单个币对出现2笔或更多止损交易,将暂停该币对交易180分钟
|
||
2. **CooldownPeriod**: 每笔交易完成后,强制等待6分钟才能进行下一笔交易
|
||
3. **MaxDrawdown**: 在2.4小时内,如果账户回撤达到20%,将暂停所有交易72分钟
|
||
|
||
## 迁移步骤
|
||
1. ✅ **配置文件**:已从`freqaiprimer.json`中移除`protections`配置
|
||
2. ✅ **策略文件**:已在`freqaiprimer.py`中添加`@property def protections`方法
|
||
3. ✅ **参数优化**:根据3分钟K线交易特点调整时间参数
|
||
|
||
## 预期效果
|
||
- 减少连续亏损风险
|
||
- 防止情绪化交易
|
||
- 保护账户资金安全
|
||
- 维持合理的交易频率
|
||
- 避免配置文件弃用错误
|
||
|
||
## 验证方法
|
||
启动策略后,查看日志应显示:
|
||
```
|
||
freqtrade.plugins.protectionmanager - INFO - Loaded 3 protection handlers
|
||
```
|
||
|
||
## 故障排除
|
||
如果看到错误:
|
||
```
|
||
Configuration error: DEPRECATED: Setting 'protections' in the configuration is deprecated
|
||
```
|
||
**解决方案**:确保已从配置文件中移除`protections`配置,并在策略文件中添加`@property def protections`方法。 |