# 推荐交易对数量分析

## 核心问题分析

推荐交易对不多的核心原因有以下几个：

### 1. 市场扫描阶段的严格过滤 ⚠️ **主要瓶颈**

**问题1：涨跌幅阈值过高**
- `MIN_CHANGE_PERCENT: 2.0%` - 要求涨跌幅至少2%
- **影响**：过滤掉了大量波动在0.5%-2%之间的交易对，这些可能是很好的交易机会
- **建议**：降低到 0.5% 或 1.0%

**问题2：成交量阈值过高**
- `MIN_VOLUME_24H: 10000000` (1000万USDT) - 要求24小时成交量至少1000万
- **影响**：过滤掉了大量中小币种，这些币种虽然成交量较小，但波动性大，交易机会多
- **建议**：降低到 500万 或 1000万（根据市场情况调整）

**问题3：扫描数量限制**
- `MAX_SCAN_SYMBOLS: 500` - 只扫描前500个交易对
- `TOP_N_SYMBOLS: 30` - 只取前30个
- **影响**：如果前500个交易对中符合条件的少，最终推荐也会少
- **建议**：增加扫描范围或降低过滤条件

### 2. 信号分析阶段的严格规则 ⚠️ **关键瓶颈**

**问题1：禁止逆4H趋势交易**
- 规则：如果4H趋势向下，禁止做多；如果4H趋势向上，禁止做空
- **影响**：这个规则非常严格，过滤掉了大量潜在的反弹/回调机会
- **建议**：对于推荐系统，可以放宽这个限制，允许逆趋势交易（但标记为高风险）

**问题2：信号强度要求**
- `MIN_SIGNAL_STRENGTH: 5` - 虽然已经降低，但信号生成逻辑可能不够宽松
- **影响**：很多交易对可能信号强度只有3-4，就被过滤掉了
- **建议**：进一步降低到3，或者改进信号强度计算逻辑

### 3. 信号强度计算逻辑

**当前逻辑**：
- 震荡市场：RSI超卖/超买 +4分，布林带 +3分
- 趋势市场：MACD +3分，均线 +2分
- 4H共振 +2分
- **问题**：如果市场处于中性状态，信号强度可能只有2-4分，无法达到阈值

**建议**：
- 增加基础分数（即使没有明确信号，也给1-2分）
- 降低各种信号的分数要求
- 增加更多信号来源（如成交量、价格形态等）

## 优化方案

### 方案1：放宽市场扫描过滤条件（推荐）

```python
'MIN_CHANGE_PERCENT': 0.5,  # 从2.0%降低到0.5%
'MIN_VOLUME_24H': 5000000,  # 从1000万降低到500万
'TOP_N_SYMBOLS': 50,  # 从30增加到50
```

### 方案2：放宽信号分析规则（推荐）

```python
# 对于推荐系统，允许逆趋势交易（但标记为高风险）
# 降低信号强度阈值到3
'MIN_SIGNAL_STRENGTH': 3,  # 从5降低到3
```

### 方案3：改进信号强度计算

- 增加基础分数（即使没有明确信号，也给1-2分）
- 降低各种信号的分数要求
- 增加更多信号来源

## 预期效果

- **当前**：扫描500个交易对 → 初步筛选可能只剩50-100个 → 详细分析30个 → 信号强度>=5的可能只有2-5个 → 最终推荐4-10个
- **优化后**：扫描500个交易对 → 初步筛选可能有200-300个 → 详细分析50个 → 信号强度>=3的可能有15-25个 → 最终推荐30-50个
