【MACD条件与订单管理|MT4|EA_1_minute_剥头皮_MT4】依据MACD检查交易条件。MT4源码免费分享!

| 发表于 1 小时前 | 显示全部楼层 |复制链接
最后由 叙风华 于 2026-11-3 19:58 编辑

头部作者名片.png
EA_1_minute_剥头皮_MT4
EA_1_minute_剥头皮_MT4是一份MT4专家顾问源码,已确认的订单条件涉及MACD。订单方式包括市价买入、市价卖出。介绍列明入场、退出和公开参数,不含未经测试的收益或胜率。
【策略思路】
代码中的交易条件使用MACD。以下按可核对的规则片段介绍;条件之间的先后顺序、前置拦截与最终执行仍应以完整源码为准。
【入场与订单】
1. 市价买入:(CheckMoneyForTrade(Symbol(),LotsOptimized(LOT),买单)) 等于 TRUE;(CheckStopLoss_Takeprofit(买单,NDTP(Bid-Stop_Loss*pips),NDTP(Bid+Take_Profit*pips))) 等于 TRUE;IsTradeAllowed();另有3项前置或组合判断,完整条件保存在本地分析记录。该分支通过相应检查后提交订单。
2. 市价卖出:(CheckMoneyForTrade(Symbol(),LotsOptimized(LOT),卖单)) 等于 TRUE;(CheckStopLoss_Takeprofit(卖单,NDTP(Ask+Stop_Loss*pips),NDTP(Ask-Take_Profit*pips))) 等于 TRUE;IsTradeAllowed();另有3项前置或组合判断,完整条件保存在本地分析记录。该分支通过相应检查后提交订单。
【离场与保护】
- 修改订单或持仓保护价:(pips*TrailingStop) 大于 (int)SymbolInfoInteger(_Symbol,SYMBOL_TRADE_FREEZE_LEVEL)*pips;CheckStopLoss_Takeprofit(买单,stoploss,takeprofit);OrderModifyCheck(OrderTicket(),OrderOpenPrice(),stoploss,takeprofit);另有3项前置或组合判断,完整条件保存在本地分析记录时进入对应处理。
- 修改订单或持仓保护价:(pips*TrailingStop) 大于 (int)SymbolInfoInteger(_Symbol,SYMBOL_TRADE_FREEZE_LEVEL)*pips;CheckStopLoss_Takeprofit(卖单,stoploss,takeprofit);OrderModifyCheck(OrderTicket(),OrderOpenPrice(),stoploss,takeprofit);另有3项前置或组合判断,完整条件保存在本地分析记录时进入对应处理。
- 修改订单或持仓保护价:OrderOpenPrice() 大于 OrderStopLoss();CheckStopLoss_Takeprofit(卖单,OrderOpenPrice()+(PIPSTOMOVESL*pips),OrderTakeProfit());OrderModifyCheck(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()+(PIPSTOMOVESL*pips),OrderTakeProfit());另有3项前置或组合判断,完整条件保存在本地分析记录时进入对应处理。
- 修改订单或持仓保护价:OrderOpenPrice() 小于 OrderStopLoss();CheckStopLoss_Takeprofit(卖单,OrderOpenPrice()-(PIPSTOMOVESL*pips),OrderTakeProfit());OrderModifyCheck(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()-(PIPSTOMOVESL*pips),OrderTakeProfit());另有3项前置或组合判断,完整条件保存在本地分析记录时进入对应处理。
- 平仓:OrderSymbol() 等于 Symbol();OrderSymbol() 等于 Symbol() ,并且 OrderMagicNumber() 等于 MagicNumber;OrderType() 等于 买单时进入对应处理。
- 某一下单分支的止损取值由 NDTP(Bid-Stop_Loss*pips) 计算或传入。
- 该分支的止盈取值由 NDTP(Bid+Take_Profit*pips) 计算或传入。
- 某一下单分支的止损取值由 NDTP(Ask+Stop_Loss*pips) 计算或传入。
- 该分支的止盈取值由 NDTP(Ask-Take_Profit*pips) 计算或传入。
【仓位与核心参数】
可确认的下单手数来源:LotsOptimized(LOT);实际允许手数、数量限制与执行结果仍需核对。
- Use_TP_In_Money:默认 false。源码公开参数;具体作用须结合引用分支核对。
- TP_In_Money:默认 10。源码公开参数;具体作用须结合引用分支核对。
- TP_In_Percent:默认 10。源码公开参数;具体作用须结合引用分支核对。
- Enable_Trailing:默认 true。Enable_Trailing。
- Take_Profit_Money:默认 40.0。Take Profit In Money (in current currency)。
- Stop_Loss_Money:默认 10。Stop Loss In Money(in current currency)。
- Lots:默认 0.01。Lots size。
- LotExponent:默认 1.44。Lots size Exponent。
- Stop_Loss:默认 20。止损设置。
- MagicNumber:默认 1234。MagicNumber。
- Take_Profit:默认 50。TakeProfit。
- FastMA:默认 6。FastMA。
- SlowMA:默认 85。SlowMA。
- UseEquityStop:默认 true。Use Equity Stop。
- TotalEquityRisk:默认 1.0。Total Equity Risk。
- Max_Trades:默认 10。订单或持仓数量限制相关设置。
- TrailingStop:默认 40。TrailingStop。
- USEMOVETOBREAKEVEN:默认 true。Enable "no loss"。
- PIPSTOMOVESL:默认 30。How much pips to move sl。
- Use_TP_In_percent:默认 false。源码公开参数;具体作用须结合引用分支核对。
- txt32:默认 [字符串默认值省略]。———————————————————————————————————————————。同文件未发现声明以外的引用,是否有效需核实。
- Exit:默认 false。Enable Exit strategy。同文件未发现声明以外的引用,是否有效需核实。
- IncreaseFactor:默认 0.001。IncreaseFactor。
- CandlesToRetrace:默认 10。Num.Of Candles For Divergence。同文件未发现声明以外的引用,是否有效需核实。
本版本另有3个公开参数,详见配套参数图片与参数说明。
最大同时持仓、加仓、倍率或篮子处理尚未以实际成交验证,介绍不作单仓或固定风险保证。
【依赖与待核实】
程序涉及以下外部库、资源或交互:SendNotification、SendMail。运行权限、文件和依赖版本须按源码要求准备。
本批按用户要求仅生成源码介绍,没有编译或回测,也没有收益、胜率、回撤和实盘表现结论。
【信号到执行的顺序】
NewBarFlag时,进入Trail1对应的订单处理。
NewBarFlag;USEMOVETOBREAKEVEN时,进入MOVETOBREAKEVEN对应的订单处理。
UseEquityStop;CurrentPairProfit 小于 0.0 ,并且 MathAbs(CurrentPairProfit) 大于 TotalEquityRisk/100.0*AccountEquityHigh();另有1项前置或组合判断,完整条件保存在本地分析记录时,进入CloseThisSymbolAll对应的订单处理。
(TP_In_Money 不等于 0);(PROFIT_SUM1 不小于 TP_In_Money)时,进入RemoveAllOrders对应的订单处理。
【交易前检查与等待】
若prevtime 等于 Time[0],对应处理会先等待或结束本次执行。
这些分别是对应功能的等待或拦截条件,应结合前面的开仓和持仓管理顺序理解。
【仓位及保护价怎样计算】
LOT = Lots * MathPow(LotExponent, CountTrades())。
stoploss=Bid-(pips*TrailingStop)。
takeprofit=OrderTakeProfit()。
stoploss=StopLevel*pips。
StopLevel=MarketInfo(Symbol(),MODE_STOPLEVEL)+MarketInfo(Symbol(),MODE_SPREAD)。
这里保留源码公式中的参数名,便于与参数图片逐项对照。报价Point、Digits、最小手数与手数步长应采用该经纪商品种的实际规格。
【这个版本默认开启和关闭什么】
- Use_TP_In_Money:默认关闭。源码公开参数;具体作用须结合引用分支核对。
- Use_TP_In_percent:默认关闭。源码公开参数;具体作用须结合引用分支核对。
- Enable_Trailing:默认开启。Enable_Trailing。
- UseEquityStop:默认开启。Use Equity Stop。
- USEMOVETOBREAKEVEN:默认开启。Enable "no loss"。
【配置与操作步骤】
1. 使用与本程序一致的MT4平台,先确认交易品种名称、报价位数、最小手数、手数步长和账户对冲/净额模式。文件名中没有经过源码证明的品种或周期不作为指定推荐。
2. 对照参数图片载入本版本的默认值,先确认允许买卖方向、基础手数、数量上限、止损止盈开关以及交易时段。每次改参数需保留一份可还原的设置。
3. 核对订单识别码 MagicNumber=1234。同一账户多图表运行时先确认持仓筛选是否同时匹配品种和识别码,避免不同图表互相管理。
4. 观察平台日志中的初始化、数据读取和订单返回结果。指标数据未就绪、参数无效或请求被拒绝时,应先定位原因再改变交易设置。
5. 本次交付只提供源码规则及本地素材,不代为挂图或启动交易。需要实际验证时应另行使用隔离模拟环境;本介绍没有已验证的收益、胜率或最大回撤。
【所需文件与运行环境】
本次没有发现额外#include源码依赖;平台内置交易与指标接口仍需对应MT4/MT5环境支持。
另涉及:SendNotification、SendMail。文件、资源或外部接口应先按原版本说明准备,不以同名文件替代。
【本版本需要注意的风险】
- 手数相关计算含乘法或层级幂运算。后续仓位可能随状态扩大,单看基础手数不能代表最大组合敞口;对应计算见“仓位及保护价怎样计算”。
发布维护作者:风华
原始源码作者、版权与许可证继续保留。风华为本地整理、介绍及发布维护署名,不替代第三方原始权利。
免责声明:EA不能保证客户赢利,市场有风险
计算机及网络也存在间接风险,任何因素导致
的一切可能的风险及损失均由客户自己承担
参数图片_02.png
参数图片_03.png
filetype

源码附件.zip

10.4 KB, 下载次数: 0, 下载积分: 活跃度 -5  [下载]

评分
  • 1
  • 2
  • 3
  • 4
  • 5
平均分:NAN    参与人数:0    我的评分:未评 下载时遇到问题?
举报

评论 使用道具

发新帖
EA交易
您需要登录后才可以评论 登录 | 立即注册

Fast跟单EA