Exp_PPO_Cloud
该EA基于PPO Cloud指标进行交易,使用快慢两根PPO线和信号线的交叉来产生买卖信号。当PPO从下方穿越信号线时开多仓,从上方穿越信号线时开空仓,并设有可配置的止损和止盈水平。
打开交互版(权益曲线、切换品种)基本信息
回测结果(H1,约 1 年)
| 品种 | 盈亏 | 年化 | 最大回撤 | 交易数 | 胜率 | 夏普 | 恢复因子 | 最长连亏 | 每笔期望 | 状态 |
|---|---|---|---|---|---|---|---|---|---|---|
| EURUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | 暂不支持转换 |
| GBPUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | 暂不支持转换 |
| USDJPY | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | 暂不支持转换 |
| XAUUSD | 0.00% | 0.00% | 0.00% | 0 | — | — | — | — | — | 暂不支持转换 |
这个 EA 从未交易的原因:转换后没有留下任何开仓规则。
由 MQL5 自动转换为 Python,所有 EA 使用同一套规则回测:按 MT5 手数计仓(外汇每手 10 万单位、黄金每手 100 盎司),1:100 杠杆,同一时间只有一张挂单,净值跌破初始资金 10% 时强平。夏普比率按权益曲线计算。标为不可靠的结果仅供参考。
爆仓风险: 未发现爆仓模式
代码里没有发现常见的爆仓模式,回测中账户也没有爆仓。但这不是保证,任何 EA 都可能亏钱。
高:回测中爆仓,或使用马丁/网格加仓且不设止损。偏高:马丁或网格加仓但有止损,或不设止损且可同时持有多个仓位。 标签的含义和我们的发现 →
策略分析
策略概念基于PPO(百分比价格振荡器)Cloud指标,该指标是对传统MACD的改进版本,使用可自定义的平滑算法替代固定的EMA。入场条件为:当快线Ind从下方穿越信号线Sign时产生买入信号(Ind[1]>Sign[1]且Ind[0]<=Sign[0]),当快线从上方穿越信号线时产生卖出信号(Ind[1]<Sign[1]且Ind[0]>=Sign[0])。出场条件依赖独立的止损和止盈参数,同时当反向交叉信号出现时也会平掉对应仓位(如做多时出现空头信号则平多仓)。仓位管理通过MM参数和MMMode枚举控制,支持按自由保证金、余额、亏损后余额或固定手数等五种模式计算仓位。资金管理方面,MM参数默认0.1表示仓位比例,结合不同的保证金模式实现灵活的资金分配。策略还通过IsNewBar机制确保信号只在新的K线开盘时计算,避免逐tick重复交易。
优势
- 使用PPO Cloud指标替代传统MACD,提供更多平滑算法选择(JJMA、JurX、ParMA、T3、VIDYA、AMA等),适应不同市场环境
- 具备完整的多空双向交易控制开关,可以灵活启用或禁用开仓和平仓方向
- 采用IsNewBar机制防止同一根K线内重复交易,避免过度交易
- 止损止盈参数齐全,默认止损1000点止盈2000点,盈亏比2:1较为合理
- 支持五种资金管理模式,灵活性较高
劣势
- 止损1000点和止盈2000点默认值偏大,在短线交易中可能导致较大单笔亏损
- 没有点差过滤机制,在点差较大时仍可能开仓,增加交易成本
- 指标自定义调用(iCustom)依赖外部PPO_Cloud指标文件,若缺失则EA无法运行且错误提示不够友好
- 缺乏移动止损或保本止损机制,无法锁定浮动利润
- 信号逻辑简单(仅依赖PPO交叉),在震荡行情中容易产生频繁的虚假信号
改进建议
- 增加点差过滤和波动率过滤,避免在高点差或低波动时段开仓
- 添加移动止损或保本止损功能,在价格有利移动后锁定利润
- 增加趋势过滤器(如更高时间周期的均线方向),避免在震荡行情中频繁交易
- 增加持仓检查逻辑,避免同方向重复开仓
风险评估
总体风险: 中等
- 默认止损1000点较大,在极端行情中可能造成显著亏损
- 没有点差过滤,高点差环境下交易成本可能过高
- 依赖外部自定义指标文件,若指标缺失则EA初始化失败
- 震荡行情中PPO交叉信号容易产生连续亏损
评估得分
参数
| 参数 | 默认值 | 说明 |
|---|---|---|
MM | 0.1 | 仓位比例,用于计算交易手数 |
MMMode | LOT | 资金管理模式:自由保证金/余额/亏损后余额/亏损后余额/固定手数 |
StopLoss_ | 1000 | 止损点数 |
TakeProfit_ | 2000 | 止盈点数 |
Deviation_ | 10 | 最大允许滑点 |
BuyPosOpen | true | 是否允许开多仓 |
SellPosOpen | true | 是否允许开空仓 |
BuyPosClose | true | 是否允许平多仓 |
SellPosClose | true | 是否允许平空仓 |
InpInd_Timeframe | PERIOD_H4 | 指标计算的时间周期 |
FastMethod | MODE_EMA_ | 快线平滑方法 |
FastLength | 12 | 快线周期长度 |
FastPhase | 15 | 快线相位参数(JJMA/VIDYA/AMA适用) |
SlowMethod | MODE_EMA_ | 慢线平滑方法 |
SlowLength | 26 | 慢线周期长度 |
SlowPhase | 15 | 慢线相位参数 |
SignMethod | MODE_EMA_ | 信号线平滑方法 |
SignLength | 9 | 信号线周期长度 |
SignPhase | 15 | 信号线相位参数 |
IPC | PRICE_CLOSE_ | 应用于指标计算的价格类型 |
SignalBar | 1 | 用于获取交易信号的K线索引 |
同类 EA:动量
回测是历史模拟,不代表未来收益,不构成投资建议。