EA-44056 · 辅助工具

check

这个EA监控已有持仓,当盈利或亏损达到用户设定的账户余额百分比时自动平仓。它本身不开仓,仅作为其他持仓的风险/收益管理工具。盈亏阈值根据当前账户余额动态计算。

打开交互版(权益曲线、切换品种)

基本信息

风险中等
评分★☆☆☆☆
类型辅助工具
周期M1, M5, M15, M30, H1, H4, D1
指标—
作者—

回测结果(H1,约 1 年)

暂未回测:这个 EA 还没能自动转换。

策略分析

该EA的策略概念是作为持仓的盈亏监控器,而非独立的交易策略。入场条件方面,EA本身不产生任何入场信号,仅依赖于外部手动或其他EA开仓后进行监控。出场条件为:当持仓盈利达到账户余额的ProfitPercentage(默认2%)时平仓获利,或当亏损达到RiskPercentage(默认1%)时止损平仓。仓位管理方面,EA不涉及任何仓位计算或开仓逻辑。资金管理方面,盈亏阈值基于AccountBalance动态计算,但存在重大缺陷——盈亏金额以货币单位计算,而currentProfit的计算使用了Point()将价格差转换为点值,两者单位不匹配,导致逻辑错误。此外,EA缺少对持仓魔术号码的过滤,可能误关其他EA的仓位。

优势

  • 简单直观的风险管理逻辑,盈亏比例可配置
  • 动态基于账户余额计算阈值,适应资金变化
  • 遍历持仓时使用倒序循环,避免索引错位问题
  • 使用了标准库CTrade和CSymbolInfo,代码结构清晰

劣势

  • 致命单位不匹配Bug:currentProfit用Point()计算为点值,而riskAmount/profitAmount为货币金额,两者无法正确比较
  • 缺少魔术号码过滤,会管理所有EA的持仓而非仅管理自身仓位
  • 没有开仓逻辑,纯粹依赖外部开仓,作为独立EA功能不完整
  • 没有考虑手续费和掉期费用,实际盈亏与阈值计算存在偏差
  • OnTick中每次都重新计算AccountBalance,高频调用但不缓存,效率低下

改进建议

  • 修复单位不匹配Bug:应使用PositionGetDouble(POSITION_PROFIT)直接获取货币金额,而非手动用Point()计算
  • 添加魔术号码输入参数,仅管理指定魔术号码的持仓,避免误关其他EA的仓位
  • 考虑手续费和掉期费用,在盈亏计算中加入佣金和隔夜费的影响

风险评估

总体风险: 中等

  • 单位不匹配导致盈亏监控完全失效,可能在该平仓时未平仓,或不应平仓时错误平仓
  • 缺少魔术号码过滤可能误关其他EA的盈利仓位
  • 无手续费考虑可能导致实际亏损超出设定的风险百分比

评估得分

代码质量2.0
策略逻辑1.0
风险管理2.0
稳健性2.0
创新性1.0
文档1.0
综合1.5

参数

参数默认值说明
RiskPercentage1.0每笔交易的风险百分比,达到此亏损比例时平仓
ProfitPercentage2.0每笔交易的盈利百分比,达到此盈利比例时平仓

同类 EA:辅助工具

回测是历史模拟,不代表未来收益,不构成投资建议。

订阅每周 Arena 周报

每周一封邮件:排名变化、新信号和新研究。不发垃圾邮件,随时可以退订。