# 突破交易策略

## 基础概念
- 平台：MQL5
- 品种：XAU黄金
- 1美金：4100与4101之间相差1美金
- 1美金 = 100点

## 辅助指标
- 移动平均线（Moving Average）
- 周期默认设置为：14

## 核心概念
- 突破K线：开盘价在均线下方，收盘价在均线上方，称之为多单突破K线，反之亦然
- 极值点：相邻两根突破K线之间所有K线(包括突破K线)中的最高价或最低价称之为极值点
- 有效波段：相邻两个极值点的价差达到波段阈值点数时，期间的所有K线(包含突破K线本身)组成的行情，称之为有效波段

## 开仓逻辑
- 价格突破有效波段的高点开多单，价格突破有效波点的低点开空单
- 该开仓逻辑仅适用最新的一个有效波段
- 浮盈达到止损点数后，即可将止损移动至成本价
- 已经开仓后，继续监控新的有效波段突破，每单开仓后就与有效波段无关了

## 参数设置

### 波段识别参数
- K线周期：支持参数设置，不跟随图表，默认 **1 Minute**
- MA周期：默认 **14**
- 使用百分比模式：默认 **false**（使用固定点数模式）
- 波段阈值点数：默认 **1000点**（固定模式有效）
- 波段阈值百分比：默认 **0.1%**（百分比模式有效）
- **反向突破容忍度：默认0.0%（新功能 - 详见下方说明）**

### 风险管理参数
- 止损点数：默认 **200点**
- 止盈点数：默认 **300点**
- 最大持仓时间：默认 **5分钟**

### 仓位管理参数
- 使用复利模式：默认 **false**（使用固定手数模式）
- 固定手数：默认 **0.01手**
- 每500$开仓手数：默认 **0.05手**（复利模式有效）
- 最大开仓手数：默认 **99手**

## 补充说明

### 突破K线处理
- 如果出现多个多单突破K线，仅保留最低价更低的那个K线，反之亦然
- 多头有效波段之间，仅允许出现一个多单突破K线和一个空单突破K线，反之亦然

### 有效波段规则
- 一个有效波段只能开一单（无论是高点还是低点）
- 开仓后该波段立即失效
- 必须等新的有效波段形成才能再次开仓

### 反向突破容忍度（新功能）⭐

**问题背景：**
在趋势行情中，可能会出现反向突破K线（回调），导致原本完整的波段被"切断"，使策略无法识别出肉眼可见的有效波段。

**示例：**
```
价格从2600上涨到2650（涨幅50点）
中间出现一根空单突破K线（回调到2640）

原有逻辑：
- 波段被切断为：2600→2640 和 2640→2650
- 每段都不足1000点，无法识别为有效波段 ✗

容忍模式（设置30%）：
- 回调10点 ÷ 波段50点 = 20% < 30%
- 回撤在容忍范围内，继续计算完整波段
- 识别出2600→2650的有效波段 ✓
```

**参数说明：**
- **0%（默认）**：不容忍任何反向突破，保持原有逻辑
- **10-20%**：容忍小幅回调，适合短期趋势
- **30-40%**：容忍中等回调，适合日内波段
- **50%以上**：容忍大幅回调，可能识别出更大的波段（但也可能误判）

**推荐设置：**
- 保守型：0-10%
- 标准型：20-30%
- 激进型：30-50%

**注意事项：**
1. 设置为0时，完全保持原有逻辑，不影响现有回测结果
2. 容忍度越高，识别的波段越大，但也可能包含更多噪音
3. 建议先回测不同容忍度，找到最适合的数值
4. 容忍度只影响波段识别，不影响止损止盈等其他逻辑

### 波段阈值模式说明
**固定点数模式：**
- 相邻极值点价差达到固定点数即为有效波段
- 适合明确知道想要的波段大小的场景
- 例如：设置1000点，则任何1000点以上的波段都有效

**百分比模式：**
- 以前一个极值点价格为基准，按百分比计算阈值
- 动态适应不同价格水平
- 例如：设置1%，价格4700时阈值为47美元（4700点），价格2350时阈值为23.5美元（2350点）
- 适合价格波动较大或需要根据价格水平动态调整的场景
