# 山寨币策略快速应用指南

> 5分钟内完成配置更新和验证

## 🚀 快速应用步骤

### 步骤1：确认代码已更新（✅ 已完成）

已更新的文件：
- ✅ `trading_system/config.py` - 核心配置
- ✅ `trading_system/trade_recommender.py` - 推荐生成
- ✅ `trading_system/position_manager.py` - 持仓管理

### 步骤2：重启所有进程（⚡ 立即执行）

```bash
# 1. 重启所有交易进程
supervisorctl restart auto_sys:*

# 2. 重启推荐服务
supervisorctl restart auto_recommend:*

# 3. 确认进程状态
supervisorctl status
```

### 步骤3：验证配置生效（🔍 关键检查）

查看日志，确认以下关键参数：

```bash
# 查看最新日志
tail -n 100 /www/wwwroot/autosys_new/logs/trading_*.log | grep -E "ATR_STOP_LOSS_MULTIPLIER|RISK_REWARD_RATIO|MIN_HOLD_TIME_SEC|USE_TRAILING_STOP|MAX_POSITION_PERCENT"
```

应该看到：
- `ATR_STOP_LOSS_MULTIPLIER: 2.0`
- `RISK_REWARD_RATIO: 4.0`
- `MIN_HOLD_TIME_SEC: 0`
- `USE_TRAILING_STOP: True`
- `MAX_POSITION_PERCENT: 0.015`

### 步骤4：清理旧配置缓存（可选）

如果配置没有生效，可能需要清理Redis缓存：

```bash
# 方法1：通过backend API清理（推荐）
curl -X POST "http://your-api-domain/api/config/clear-cache"

# 方法2：直接重启Redis（谨慎！）
# supervisorctl restart redis
```

## ✅ 验证清单

使用这个清单逐项验证：

### 风险控制
- [ ] ATR止损倍数 = 2.0（日志确认）
- [ ] 固定止损 = 15%（日志确认）
- [ ] 盈亏比 = 4.0（日志确认）
- [ ] 最小持仓时间 = 0秒（已取消）
- [ ] 每笔风险 = 1%

### 止盈策略
- [ ] 移动止损已启用
- [ ] 移动止损激活 = 30%
- [ ] 移动止损保护 = 15%
- [ ] 第一目标盈亏比 = 1:1
- [ ] 第二目标盈亏比 = 4:1

### 仓位管理
- [ ] 单笔仓位 ≤ 1.5%
- [ ] 总仓位 ≤ 12%
- [ ] 最大同时持仓 = 4个
- [ ] 基础杠杆 = 8倍
- [ ] 最大杠杆 = 12倍

### 交易控制
- [ ] 每日最多5笔
- [ ] 智能入场已启用
- [ ] 币种冷却 = 30分钟
- [ ] 只做趋势市（AUTO_TRADE_ONLY_TRENDING = True）

### 品种筛选
- [ ] 24H成交量 ≥ 3000万美元
- [ ] 最小波动率 ≥ 3%
- [ ] 最多扫描150个
- [ ] 只做前5个最强信号

### 时间框架
- [ ] 主周期 = 4小时
- [ ] 入场周期 = 1小时
- [ ] 确认周期 = 日线
- [ ] 扫描间隔 = 1小时

## 🔧 如果配置未生效

### 情况1：进程重启失败

```bash
# 查看错误日志
tail -n 50 /www/wwwroot/autosys_new/logs/trading_*.err.log

# 常见问题：
# - 代码语法错误：检查最近修改的代码
# - 数据库连接失败：检查数据库状态
# - Redis连接失败：检查Redis状态
```

### 情况2：配置值仍是旧值

```bash
# 强制重新加载配置
# 在Python代码中调用：
# config._config_manager.reload_from_redis()
# 或重启backend服务：
supervisorctl restart backend
```

### 情况3：部分配置生效，部分未生效

```bash
# 检查数据库中的配置（可能有冲突）
# 使用backend管理界面或直接查询数据库：
# SELECT * FROM trading_config WHERE config_key LIKE '%ATR%' OR config_key LIKE '%RISK%';
```

## 📊 监控前3笔交易

策略更新后，密切监控前3笔交易的关键数据：

```
第1笔交易：
- 开仓价格：_______
- 止损价格：_______（应该是开仓价的±15%左右）
- 止盈价格：_______（应该是止损距离的4倍）
- 实际杠杆：_______（应该是8倍左右）
- 保证金占比：_______（应该≤1.5%）

第2笔交易：
- 开仓价格：_______
- 止损价格：_______
- 止盈价格：_______
- 实际杠杆：_______
- 保证金占比：_______

第3笔交易：
- 开仓价格：_______
- 止损价格：_______
- 止盈价格：_______
- 实际杠杆：_______
- 保证金占比：_______
```

### 异常判断标准

如果出现以下情况，立即暂停并检查：
- ❌ 止损距离 < 10%或 > 20%
- ❌ 盈亏比 < 3:1
- ❌ 单笔保证金 > 2%
- ❌ 杠杆 > 12倍
- ❌ 同时持仓 > 4个
- ❌ 触发止损但仍在持仓（说明止损未生效）

## 🎯 预期效果（3-5天后）

如果策略正确执行，应该看到：

### 短期指标（1-2天）
- 胜率：30-40%（初期可能偏低，正常）
- 单笔盈亏：盈利单平均+4%，亏损单平均-1%
- 交易频率：每日2-5笔
- 持仓时间：1-4小时

### 中期指标（3-5天）
- 胜率：35-45%
- 盈亏比：3.5:1 - 4.5:1
- 期望值：+0.5% - +1.0%（每笔）
- 最大回撤：单日 < 3%

### 预警信号

如果出现以下情况，说明需要调整：
- ⚠️ 胜率 < 25%：提高MIN_SIGNAL_STRENGTH到8
- ⚠️ 盈亏比 < 3:1：检查止盈设置
- ⚠️ 单日亏损 > 5%：暂停交易，检查市场环境
- ⚠️ 连续亏损 > 5笔：暂停交易，等待市场转好

## 📞 问题排查

### 问题1：配置更新后没有新交易

**可能原因：**
- 信号强度要求提高（MIN_SIGNAL_STRENGTH=7）
- 成交量要求提高（MIN_VOLUME_24H=3000万）
- 市场不满足AUTO_TRADE_ONLY_TRENDING条件

**解决方案：**
- 查看推荐服务日志，确认是否有新推荐生成
- 检查当前市场是否处于趋势中
- 如果长期没有交易，可以临时降低MIN_SIGNAL_STRENGTH到6

### 问题2：止损触发太频繁

**可能原因：**
- ATR_STOP_LOSS_MULTIPLIER太小
- 选择的币种波动过大

**解决方案：**
- 提高ATR_STOP_LOSS_MULTIPLIER到2.2或2.5
- 提高MIN_VOLATILITY筛选标准
- 检查是否在异常波动期间交易

### 问题3：盈利单无法达到TP2

**可能原因：**
- 盈亏比4:1对当前市场环境过高
- 移动止损激活过早

**解决方案：**
- 降低RISK_REWARD_RATIO到3.0或3.5
- 提高TRAILING_STOP_ACTIVATION到40%
- 观察是否有盈利单达到30%但未触发移动止损

## 🔄 后续优化

根据实际运行情况，可能需要微调：

### 1周后可能的调整
- MIN_SIGNAL_STRENGTH：6.5 - 8
- ATR_STOP_LOSS_MULTIPLIER：1.8 - 2.2
- RISK_REWARD_RATIO：3.5 - 4.5
- TRAILING_STOP_ACTIVATION：25% - 35%

### 1个月后可能的调整
- 建立币种白名单/黑名单
- 按市值分级设置不同参数
- 添加BTC趋势过滤

---

**最后提醒**：
1. 🚨 配置更新后前3笔交易必须人工监控
2. 📊 每日检查盈亏比和期望值是否符合预期
3. ⚡ 如有异常立即暂停交易并检查日志
4. 📈 坚持记录每笔交易数据，持续优化

**祝交易顺利！**
