谷比算力-EA黄金外汇高频交易策略MT5
策略概述
谷比算力-2G 是一个基于趋势追踪的自动化交易策略,支持多空双向交易,具有智能加仓、自动止盈止损和挂单管理功能。
核心功能
1. 交易方向控制
-
只做多模式:仅开多单和多单加仓
-
只做空模式:仅开空单和空单加仓
-
多空双开模式:同时开多空单,各自独立管理
2. 加仓逻辑
-
分层加仓:根据实际持仓数量计算层级
-
动态手数:按照设置的加仓倍率计算加仓手数
-
智能挂单:根据层级计算加仓触发价格和挂单价格
-
挂单调整:当价格反向运行时调整挂单价格
-
多单加仓:价格下跌时加仓
-
空单加仓:价格上涨时加仓
3. 止盈止损
-
总亏损止损:当总亏损达到设置值时平仓所有持仓
-
单个方向止盈:当某个方向持仓全部止盈后,撤销该方向挂单并重新挂首单
-
全部止盈:当所有持仓都止盈后,重置状态并重新开新仓
-
多单止盈:价格上涨时止盈
-
空单止盈:价格下跌时止盈
4. 挂单管理
-
首单挂单:使用设置的首单挂单点数差
-
加仓挂单:根据层级使用不同的挂单点数差
-
挂单调整:智能调整挂单价格以适应市场变化
-
挂单撤销:止盈或止损时自动撤销相关挂单
-
多单加仓挂单:使用BUY_STOP订单,价格低于当前价格
-
空单加仓挂单:使用BUY_STOP订单,价格高于当前价格
详细逻辑流程
初始化流程
-
检查现有持仓,设置初始交易状态
-
初始化加仓次数和价格记录
-
启动交易状态
开仓流程
-
检查是否有持仓,无持仓时开首单
-
根据交易方向设置决定开多单、空单或同时开
-
使用设置的首单挂单点数差计算挂单价格
加仓流程
-
检查加仓次数是否达到最大限制
-
计算当前持仓层级(首单为第0层,第二单为第1层,以此类推)
-
根据层级计算加仓点数和手数
-
检查是否已有同方向挂单,无挂单时创建加仓挂单
-
提前增加加仓次数,确保下次挂单使用正确的倍率
-
多单加仓:使用BUY_STOP订单,价格低于当前价格,下跌时触发
-
空单加仓:使用BUY_STOP订单,价格高于当前价格,上涨时触发
挂单调整流程
-
检查所有挂单
-
对于多单加仓挂单:当价格上涨时调整挂单价格,确保挂单在合适的位置
-
对于空单加仓挂单:当价格下跌时调整挂单价格,确保挂单在合适的位置
-
确保挂单价格符合交易规则(BUY_STOP高于当前价)
止盈止损流程
-
检查总亏损,达到止损值时平仓所有持仓并撤销所有挂单
-
检查单个方向是否止盈,止盈后撤销该方向挂单并重新挂首单
-
检查所有持仓是否都止盈,全部止盈后重置状态并重新开新仓
参数说明
|
参数名称 |
类型 |
描述 |
|---|---|---|
|
MagicNum |
int |
交易魔术码,用于识别策略订单 |
|
StartLot |
double |
首单手数 |
|
MaxLot |
double |
最大手数限制 |
|
FirstAddPoints |
double |
第一单和第二单的加仓点数 |
|
SubsequentAddPoints |
double |
第三单及以后的加仓点数 |
|
FirstOrderPoints |
double |
首单的挂单点数差 |
|
SubsequentOrderPoints |
double |
加仓单的挂单点数差 |
|
AddMultiplier |
double |
加仓倍率 |
|
MaxAddTimes |
int |
最大加仓次数 |
|
TakeProfitPoints |
double |
止盈点数 |
|
StopLossMoney |
double |
止损金额 |
|
RestartAfterStopLoss |
bool |
止损后是否重新开始 |
|
TradeDirection |
int |
交易方向(0=只做多, 1=只做空, 2=多空双开) |
交易流程示例
多空双开模式
-
系统启动,检查无持仓,同时开多单和空单挂单
-
价格上涨,多单挂单成交,系统创建多单加仓挂单(价格低于当前价格)
-
价格继续上涨,多单止盈,系统撤销多单挂单并重新挂多单首单
-
价格下跌,多单加仓挂单成交,系统创建下一级加仓挂单
-
价格继续下跌,空单挂单成交,系统创建空单加仓挂单(价格高于当前价格)
-
价格继续下跌,空单止盈,系统撤销空单挂单并重新挂空单首单
-
价格上涨,空单加仓挂单成交,系统创建下一级加仓挂单
-
如此循环...
只做多模式
-
系统启动,检查无持仓,开多单挂单
-
价格上涨,多单挂单成交,系统创建多单加仓挂单(价格低于当前价格)
-
价格继续上涨,多单止盈,系统撤销多单挂单并重新挂多单首单
-
价格下跌,多单加仓挂单成交,系统创建下一级加仓挂单
-
如此循环...
注意事项
-
挂单价格设置:确保BUY_STOP挂单价格高于当前价格
-
加仓倍率:加仓倍率设置过高可能导致手数增长过快,请注意风险控制
-
止损设置:StopLossMoney设置应根据账户资金合理调整,避免过度风险
-
挂单调整:系统会自动调整挂单价格,确保挂单能够在合适的价格触发
-
交易方向:根据市场趋势选择合适的交易方向模式
技术实现
-
使用MQL5语言开发,适用于MetaTrader 5平台
-
采用事件驱动的交易逻辑,响应市场变化
-
智能挂单管理,提高交易效率
-
完善的错误处理和日志记录,便于调试和监控
此策略结合了趋势追踪和资金管理的优点,通过智能加仓和挂单调整,在把握趋势的同时控制风险,适合各种市场环境。