Bitcoin Martingal Moving Average
- 专家
- 版本: 2.0
- 激活: 20
Send me a message so I can send you the setfile
坚固的机器人,有多种配置可供选择,
使用 BTC 在 10 分钟时间范围内使用,设置如下图所示。
购买专家机器人时,您有权要求修改以继续改进机器人。
主要特点
移动平均线交叉策略:
EA 使用两个移动平均线(MA1 和 MA2)来生成交易信号。
较快的 MA(MA1)与较慢的 MA(MA2)交叉会触发交易。
马丁格尔策略:
如果一笔交易导致亏损,则下一笔交易的手数将增加一个乘数(martingaleMultiplier)。
在交易获胜后或达到最大马丁格尔步数 (maxMartingale) 时,马丁格尔序列会重置。
风险管理:
止损(SL)和获利(TP)水平是可配置的。
包括追踪止损和盈亏平衡功能,以锁定利润并减少损失。
每日盈利/亏损限额:如果每日盈利或亏损超过指定的限额,EA 将停止交易。
筛选器:
波动率过滤器:使用 ATR 确保交易仅在指定的波动率范围内进行。
时间过滤器:将交易限制在特定的时间和星期几。
趋势过滤器:使用 ADX 确保交易按照趋势方向进行。
交易量过滤器:确保仅当交易量达到指定阈值时才进行交易。
RSI 过滤器:使用 RSI 避免超买/超卖情况。
新闻过滤器:用于集成基于新闻的过滤器的占位符(未在此脚本中实现)。
资金管理:
可以根据账户余额的百分比(riskPercentage)动态计算手数大小。
其他功能:
在特定时间平仓所有仓位:允许在指定时间平仓所有仓位。
每日结束时平仓所有仓位:交易日结束时自动平仓所有仓位。
距离交叉过滤器:确保仅当价格与交叉点的距离在指定范围内时才进行交易。
等待快速 MA 触及:确保价格在开启交易之前触及快速 MA。
全局变量
lastTradeLot:跟踪下一笔交易的手数(用于马丁格尔策略)。
martingaleCount:跟踪马丁格尔序列中连续亏损的次数。
dailyProfit 和 dailyLoss:跟踪每日盈利和亏损。
lastTradeDay:追踪交易执行的最后一天。
lastCrossTime:跟踪最后一次移动平均线交叉的时间。
waitForClose:等待当前交易结束后再开启新交易的标志。
功能
初始化(OnInit):
初始化指标句柄(MA、RSI、ATR、ADX)。
检查指标创建中的错误。
筛选器:
CheckVolatilityFilter():确保交易仅在指定的波动范围内进行。
CheckTimeFilter():将交易限制在特定的时间和日期。
CheckTrendFilter():确保交易按照趋势方向进行。
CheckVolumeFilter():确保只有当交易量达到阈值时才进行交易。
CheckNewsFilter():基于新闻的过滤器的占位符。
CheckRSIFilter():确保仅当满足 RSI 条件时才进行交易。
风险管理:
CheckDailyLimits():检查是否达到每日盈利或亏损限额。
CheckStopLoss_Takeprofit():验证 SL 和 TP 水平。
CheckMoneyForTrade():确保有足够的保证金来开展交易。
交易执行:
OpenTrade():根据方向(买入/卖出)开启交易。
CloseCurrentTrade():关闭当前交易并更新马丁格尔序列。
CloseAllPositions():关闭所有未平仓头寸。
追踪止损和盈亏平衡:
TrailingStop():调整止损以锁定利润。
CheckBreakEven():一旦达到指定的利润,就将止损移至盈亏平衡点。
资金管理:
CalculateLotSize():根据账户余额和风险百分比计算手数。
附加过滤器:
CheckDistanceFromCross():确保仅当价格与交叉点的距离在指定范围内时才进行交易。
CheckPriceTouchFastMA():确保在开启交易之前价格触及快速 MA。
基于时间的操作:
CheckCloseAllAtSpecificTime():在指定时间平掉所有仓位。
CheckAndClosePositionsForDailyLimits():如果达到每日盈利或亏损限额,则关闭所有头寸。
