1. 概述 目标是在每天获取100个点(pip)的利润。它基于移动平均线和价格关系来进行交易决策,采用了简单的趋势跟随策略,并具有止盈和移动止损功能。 2. 外部参数设置 止盈点数:长买单和短卖单的止盈点数。 移动止损点数:长买单和短卖单的移动止损点数。 开仓颜色:开仓时图表上标记的颜色。 手数:每次交易的手数。 滑点:允许的最大滑点。 是否使用声音提醒:是否在交易执行时播放声音。 3. 初始化和反初始化函数 deinit():清空图表上的注释。 功能:在 EA 卸载时清除图表上的注释。 4. 开始函数 start() 功能:根据交易条件执行交易。 逻辑:检查历史数据条数,如果不足 100 条则不执行交易;检查设置的止盈点数,如果低于 10 点则不执行交易;获取当前价格和移动平均线的值。如果没有持仓,则根据价格和移动平均线的关系开仓。对已有持仓进行移动止损。 5. 判断是否存在持仓函数 ExistPositions() 功能:检查是否存在当前交易符号的持仓。 逻辑:遍历所有订单,如果存在当前交易符号的持仓则返回true,否则返回false。 6. 移动止损函数 TrailingPositionsBuy() 和 TrailingPositionsSell() 功能:对持仓进行移动止损。 逻辑:遍历所有持仓,如果符合条件则对买入单和卖出单进行移动止损操作。 7. 修改止损函数 ModifyStopLoss() 功能:修改订单的止损价。 逻辑:根据传入的止损价修改订单的止损价格,如果修改成功且设置了声音提醒则播放声音。 8. 开仓函数 OpenBuy() 和 OpenSell() 功能:执行买入和卖出操作。 逻辑:根据当前价格和设置的止盈点数执行买入和卖出操作,如果执行成功且设置了声音提醒则播放声音。 9. 辅助函数 获取注释信息函数 GetCommentForOrder():返回订单的注释信息。 获取手数函数 GetSizeLot():返回设置的手数。 获取买入止盈价函数 GetTakeProfitBuy() 和获取卖出止盈价函数 GetTakeProfitSell()**:根据当前价格和设置的止盈点数计算买入和卖出的止盈价。 10. 优点与风险 优点:策略简单易懂,适合初学者入门。设置了止盈和移动止损,具备风险控制功能。可以通过外部参数进行灵活调整,适应不同的市场情况。 风险:策略过于简单,可能无法适应市场变化。缺乏过滤器和其他辅助指标,容易受到噪音的干扰。 |