【Turtle Pro 趋势跟随】Turtle Pro Quantitative System
最后由 bzjc 于 2026-6-3 15:24 编辑
谁有空帮我把策略优化下,杂信号太多怎么处理?
1H,1000
海龟趋势交易策略 v10.1 — 完整策略文档 一、策略概述本策略基于 理查德·丹尼斯(Richard Dennis)经典海龟交易法,在MetaTrader 5平台上实现,专为黄金等趋势性品种优化。核心理念:
"趋势跟踪,波动率定仓,系统化执行,接受小亏抓住大赢。"
策略版本: v10.1 文件名: 海龟网格.mq5 适用品种: 黄金(GOLD)、原油、外汇主货币对等趋势性强的品种 推荐时间框架: H1 / H4(周期越大,信号越稳定) 账户类型: ECN/STP(低点差环境)
二、核心设计理念2.1 趋势跟踪的本质海龟交易法不预测市场方向,而是跟随趋势。其盈利模式为:
指标
| 典型值
| 胜率
| 35%~45%
| 盈亏比
| 2:1 ~ 4:1
| 盈利来源
| 20%的交易贡献80%的利润
| 亏损来源
| 60%以上的交易为小额止损
| 关键认知: 高胜率高盈利。趋势跟踪靠的是"亏小赚大",而非"每次都对"。
2.2 波动率归一化所有仓位计算、止损设置、加仓间距,全部基于 N值(波动率单位),确保:
- 高波动品种自动降低仓位
- 低波动品种自动提高仓位
- 单笔风险始终稳定在账户的固定百分比
三、入场规则3.1 唐奇安通道突破入场周期: 55根K线(默认参数,可在EA参数中调整)
做多信号:
上一根已收盘K线的最高价 ≥ 过去55根K线的最高价做空信号:
上一根已收盘K线的最低价 ≤ 过去55根K线的最低价3.2 趋势过滤(MA200)在入场基础上增加MA200方向过滤:
入场方向
| MA200条件
| 做多
| 收盘价 > MA200
| 做空
| 收盘价 < MA200
| 关闭MA过滤: 将参数 UseMAFilter = false
3.3 价格源所有信号检测均使用 bar 1(已收盘的K线),避免盘中波动产生的假信号。
四、仓位管理4.1 N值计算(海龟核心)N = 波动率单位,计算公式:
1. 真实波幅 TR = MAX(今日最高-今日最低, |今日最高-昨日收盘|, |今日最低-昨日收盘|)2. 初始N值 = ATR_Period周期内TR的简单平均3. 后续N值 = (19 × 前一日N值 + 今日TR) / 20参数: ATR_Period = 20
4.2 初始仓位计算风险金额 = 账户净值 × RiskPercent%每点价值 = 交易品种的每点美元价值单位手数 = 风险金额 / (N值 × 每点价值)默认参数: RiskPercent = 1.0%
举例:
- 账户净值 $10,000
- N值 = 800点
- 风险1% = $100
- 黄金每点价值 = $0.10
- 计算手数 = $100 / (800 × $0.10) = 1.25手
- 四舍五入至最小手数步长
4.3 仓位硬限制 五、加仓(金字塔式)5.1 加仓条件加仓间距: 0.5N
做多:当前买价 ≥ 最后开仓价 + 0.5N做空:当前卖价 ≤ 最后开仓价 - 0.5N5.2 加仓限制参数
| 默认值
| 最多加仓次数
| 3次
| 最大持仓层数
| 4层(初始1 + 加仓3)
| 加仓手数
| 每次与初始仓位相同
| 5.3 示例以做多为例(N = 100点):
第1层:突破入场 @ 2000.00第2层:价格涨至 2050.00(+0.5N)→ 加仓第3层:价格涨至 2100.00(+1.0N)→ 加仓第4层:价格涨至 2150.00(+1.5N)→ 加仓 六、出场与止损6.1 2N硬止损做多止损价 = 最后开仓价 - 2N做空止损价 = 最后开仓价 + 2N触发条件: 当前市场价格触及止损价
6.2 唐奇安反向出场出场周期: 20根K线(默认参数)
做多出场:收盘价跌破过去20根K线的最低价做空出场:收盘价突破过去20根K线的最高价6.3 移动止盈参数:
- TrailN = 2.0(回撤2N触发止盈)
- MinTrailProfitN = 1.0(盈利达1N后才启动)
逻辑:
1. 持多时追踪历史最高价(使用已收盘K线的High)2. 持空时追踪历史最低价(使用已收盘K线的Low)3. 未实现盈利 ≥ 1N 后才启动移动止盈4. 多仓:收盘价 < 最高价 - 2N → 平仓5. 空仓:收盘价 > 最低价 + 2N → 平仓6.4 出场优先级第一:移动止盈(有盈利时优先保护利润)第二:唐奇安反向出场(趋势反转信号)第三:2N硬止损(最后一道防线) 七、完整交易流程┌─────────────────────────────────────────────────┐│ OnTick(每根K线) │├─────────────────────────────────────────────────┤│ 1. 更新N值和指标 ││ 2. 新K线? → 否:返回 ││ 3. 有挂起信号? → 市场开放? → 重试开仓 ││ ││ ┌─────────┐ ┌─────────┐ ││ │ 空仓 │ │ 持仓 │ ││ ├─────────┤ ├─────────┤ ││ │ 55日突破 │ │ 更新追踪 │ ││ │ MA200确认│ │ 最高/低价 │ ││ │ 开仓 │ │ │ ││ │ 或挂起 │ │ 移动止盈? │ ││ │ │ │ 唐奇安出场?│ ││ │ │ │ 2N止损? │ ││ │ │ │ 加仓? │ ││ └─────────┘ └─────────┘ ││ ││ 平仓 → 更新统计 → 清空追踪价格 │└─────────────────────────────────────────────────┘ 八、风险控制8.1 单笔风险- 每笔交易风险 = 账户净值的 1%
- 通过N值动态调整手数,确保止损距离×手数 = 固定风险金额
8.2 总仓位限制8.3 无熔断机制- 连续亏损不暂停交易
- 趋势跟踪策略的假突破是正常磨损,熔断会导致错过后续大趋势
8.4 回撤预期周期
| 预期最大回撤
| 短期(3个月)
| 10%~20%
| 中期(1年)
| 20%~30%
| 长期(3年)
| 15%~25%
|
九、参数说明9.1 核心参数(不建议随意修改)参数
| 默认值
| 说明
| EntryPeriod
| 55
| 入场突破周期(唐奇安通道)
| ExitPeriod
| 20
| 出场周期
| ATR_Period
| 20
| N值计算周期
| MaxAdditions
| 3
| 最多加仓次数
| AddN
| 0.5
| 加仓间距(N的倍数)
| StopN
| 2.0
| 止损倍数(N的倍数)
| 9.2 可调参数(根据品种特性调整)参数
| 默认值
| 建议范围
| 说明
| RiskPercent
| 1.0%
| 0.5%~2.0%
| 每笔风险百分比
| TrailN
| 2.0
| 1.5~3.0
| 移动止盈回撤N数
| MinTrailProfitN
| 1.0
| 0.5~1.5
| 启动移动止盈的最小盈利
| FilterPeriod
| 200
| 100~200
| MA趋势过滤周期
| 9.3 功能开关参数
| 默认值
| 说明
| UseMAFilter
| true
| 是否启用MA200趋势过滤
| UseADXFilter
| false
| 是否启用ADX趋势强度过滤
| DebugMode
| false
| 是否开启调试日志输出
| 9.4 通用参数参数
| 默认值
| 说明
| MagicNumber
| 7777
| EA魔术号,用于识别自有订单
| Slippage
| 3
| 滑点容差(点)
| TradeComment
| "Turtle"
| 订单注释
|
十、信息面板EA运行后会在图表左上角显示实时信息面板:
╔═══════════════════════════════════════════╗║ ★ TURTLE PRO v10.1 ★ [13:30] ║╠═══════════════════════════════════════════╣║ Balance $10,000.00 ║║ Equity $10,150.00 ║║ Free Mgn $9,800.00 ║║ Drawdown 0.00% ╠═══════════════════════════════════════════╣║ Symbol GOLD ║║ ATR(N) 751.4 pts ║║ ADX 28.6 ║╠═══════════════════════════════════════════╣║ Entry 55D H:5105.72 L:4878.40 ║║ Exit 20D ║║ Signal [ACTIVE] ║╠═══════════════════════════════════════════╣║ Daily +$150.00 ║║ Total +$1,500.00 ║║ Trades 12 W:5 L:7 ║║ WinRate 41.7% ║║ Consec L 2 ║╠═══════════════════════════════════════════╣║ Position [LONG] ║║ Layers 2/4 ║║ Volume 0.20 lots ║╠═══════════════════════════════════════════╣║ Risk:1.0% Stop:2N Trail:2.0N Add:0.5Nx3 ║═══════════════════════════════════════════╝ 十一、适用市场环境11.1 最佳环境市场环境
| 表现
| 单边上涨趋势
| ★★★★★
| 单边下跌趋势
| ★★★★★
| 高波动突破
| ★★★★☆
| 11.2 最差环境市场环境
| 表现
| 窄幅震荡(无趋势)
| ★★☆☆☆
| 假突破频繁
| ★★☆☆☆
| 低波动区间整理
| ★☆☆☆☆
| 11.3 时间框架建议时间框架
| 入场周期(等效)
| 建议
| H1
| 55小时 ≈ 2.3天
| 适合短线趋势
| H4
| 55×4 = 220小时 ≈ 9天
| 推荐,平衡信号质量与频率
| D1
| 55天
| 适合长期趋势跟踪
|
十二、注意事项12.1 必须遵守的原则- 完整测试: 实盘前至少回测2年以上数据
- 品种适配: 不同品种调整EntryPeriod和RiskPercent
- 资金准备: 账户至少能承受30%的阶段性回撤
- 不干预: 不要手动干预EA的进出场决策
- 低滑点环境: 使用ECN账户,避免高滑点侵蚀利润
12.2 常见误区误区
| 正确认知
| "胜率太低"
| 趋势跟踪靠盈亏比,不靠胜率
| "连续亏损就暂停"
| 假突破是策略正常磨损,停就会错过大趋势
| "手动加仓"
| 加仓必须严格按0.5N间距
| "缩小止损"
| 2N止损是核心风控,缩窄会导致频繁止损
| "缩短入场周期"
| 越短周期=越多假突破
| 12.3 优化建议- 多品种组合: 同时运行黄金+原油+外汇,分散单一品种风险
- 参数调优: 用优化器测试不同EntryPeriod(35-65范围)
- 监控面板: 定期关注Consec L(连亏次数),超过5次属正常范围
- 日志分析: 开启DebugMode后定期查看Print输出,确认信号正常触发
十三、版本历史版本
| 日期
| 主要变更
| v1.0
| -
| 初始均线排列系统
| v4.0
| -
| 标准海龟实现
| v6.0
| -
| 尝试双模切换(失败)
| v9.0
| -
| 纯趋势跟踪
| v10.0
| -
| 三重过滤(ADX+MA+唐奇安)
| v10.1
| 2026-06-03
| 统一价格源、完整挂起信号、移除熔断、参数优化
|
文档版本: 1.0 最后更新: 2026-06-03 对应EA版本: 海龟网格.mq5 v10.1
|
-
|
|
|
|
|
|
|
DD
DD
DD