新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1631 1...162416251626162716281629163016311632163316341635163616371638...1953 新评论 EVGENII SHELIPOV 2021.09.28 18:07 #16301 下午好!!!。 在这里帮我一下。我正在为一个网格EA添加追踪止损,到目前为止,只为第一笔订单添加。小路还没有触发。问题是什么? 以下是打开单个订单的代码片段 double JAW = iAlligator(Symbol(),TimeframesIndicators,13,8,5,8,5,3,MODE_SMMA,PRICE_MEDIAN,MODE_GATORJAW,0); double TEETH = iAlligator(Symbol(),TimeframesIndicators,13,8,5,8,5,3,MODE_SMMA,PRICE_MEDIAN,MODE_GATORTEETH,0); double LIPS = iAlligator(Symbol(),TimeframesIndicators,13,8,5,8,5,3,MODE_SMMA,PRICE_MEDIAN,MODE_GATORLIPS,0); double DI_PLUSCurrent=iADX(Symbol(),TimeframesIndicators,14, PRICE_CLOSE,MODE_PLUSDI,0); double DI_MINUSCurrent=iADX(Symbol(),TimeframesIndicators,14, PRICE_CLOSE,MODE_MINUSDI,0); double MacdCurrent=iMACD(Symbol(),TimeframesIndicators,12,26,9, PRICE_CLOSE,MODE_MAIN,0); double MacdPrevious=iMACD(Symbol(),TimeframesIndicators,12,26,9, PRICE_CLOSE,MODE_MAIN,2 ); double ATR = iATR(Symbol(), TimeframesVolatility, BarCount, 0); if (CountTrade() == 0) { if((UseHour==1&&Hour()>=StartTime&&Hour()<=StopTime)||UseHour==0) if(LIPS>TEETH&& TEETH>JAW&&DI_PLUSCurrent>18&&DI_PLUSCurrent>DI_MINUSCurrent&&MacdCurrent>MacdPrevious) { FirstLots = Lots(); tp = NormalizeDouble(Ask + TakeProfitFirstOrder*Point, Digits); ticket = OrderSend(Symbol(), OP_BUY, FirstLots, Ask, slip, 0, tp, "1-ый ордер", Magic, 0, Blue); { if(Bid - OrderOpenPrice() > TrailingStop*Point) Trailing(); } } if((UseHour==1&&Hour()>=StartTime&&Hour()<=StopTime)||UseHour==0) if(LIPS<TEETH&& TEETH<JAW&&DI_MINUSCurrent>18&&DI_MINUSCurrent>DI_PLUSCurrent&&MacdCurrent<MacdPrevious) { FirstLots = Lots(); tp = NormalizeDouble(Bid - TakeProfitFirstOrder*Point, Digits); ticket = OrderSend(Symbol(), OP_SELL, FirstLots, Bid, slip, 0, tp, "1-ый ордер", Magic, 0, Red); { if(OrderOpenPrice() - Ask > TrailingStop*Point) Trailing(); } } } 以下是单个订单的修改功能 //+----------------------------------------------------------------------------+ //| Трейлинг стоп одиночных ордеров | //+----------------------------------------------------------------------------+ void Trailing() { for(int i = OrdersTotal()-1; i>=0; i--) { if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) { if(OrderType() == OP_BUY) { if(Bid - OrderOpenPrice() > TrailingStop*Point || OrderStopLoss() == 0) { if(OrderStopLoss() < Bid - (TrailingStep + TrailingStop)*Point || OrderStopLoss() == 0) { if(!OrderModify(OrderTicket(), OrderOpenPrice(), NormalizeDouble(Bid - TrailingStop*Point, Digits), tp, 0)) Print("Ошибка модификации ордера на покупку!"); } } } if(OrderType() == OP_SELL) { if(OrderOpenPrice() - Ask > TrailingStop*Point || OrderStopLoss() == 0) { if(OrderStopLoss() > Ask + (TrailingStep + TrailingStop)*Point || OrderStopLoss() == 0) { if(!OrderModify(OrderTicket(), OrderOpenPrice(), NormalizeDouble(Ask + TrailingStop*Point, Digits), tp, 0)) Print("Ошибка модификации ордера на продажу!"); } } } } } } } 谢谢你!!!! Tretyakov Rostyslav 2021.09.28 20:15 #16302 EVGENII SHELIPOV #:下午好!!!。在这里帮我一下。我正在为一个网格EA添加追踪止损,到目前为止,只为第一笔订单添加。小路还没有触发。问题是什么?以下是打开单个订单的代码片段以下是单个订单的修改功能谢谢你!!!! 只有在没有订单的情况下,你才可以求助于拖网...。 Valeriy Yastremskiy 2021.09.28 20:31 #16303 MakarFX #: 你是对的,它是有效的......在码头上有一个错误。 1345年构建的多货币模式有效)。我在10个专业上检查了它,它从所有10个配对中获取数据,并画出你想要的东西)并在测试器中按下按钮) EVGENII SHELIPOV 2021.09.29 05:05 #16304 MakarFX #: 只有在没有订单的情况下,你才有机会调用拖网...... 变了,什么都没变 void OnTick() { double JAW = iAlligator(Symbol(),TimeframesIndicators,13,8,5,8,5,3,MODE_SMMA,PRICE_MEDIAN,MODE_GATORJAW,0); double TEETH = iAlligator(Symbol(),TimeframesIndicators,13,8,5,8,5,3,MODE_SMMA,PRICE_MEDIAN,MODE_GATORTEETH,0); double LIPS = iAlligator(Symbol(),TimeframesIndicators,13,8,5,8,5,3,MODE_SMMA,PRICE_MEDIAN,MODE_GATORLIPS,0); double DI_PLUSCurrent=iADX(Symbol(),TimeframesIndicators,14, PRICE_CLOSE,MODE_PLUSDI,0); double DI_MINUSCurrent=iADX(Symbol(),TimeframesIndicators,14, PRICE_CLOSE,MODE_MINUSDI,0); double MacdCurrent=iMACD(Symbol(),TimeframesIndicators,12,26,9, PRICE_CLOSE,MODE_MAIN,0); double MacdPrevious=iMACD(Symbol(),TimeframesIndicators,12,26,9, PRICE_CLOSE,MODE_MAIN,2 ); double ATR = iATR(Symbol(), TimeframesVolatility, BarCount, 0); if (CountTrade() == 0) { if((UseHour==1&&Hour()>=StartTime&&Hour()<=StopTime)||UseHour==0) if(LIPS>TEETH&& TEETH>JAW&&DI_PLUSCurrent>18&&DI_PLUSCurrent>DI_MINUSCurrent&&MacdCurrent>MacdPrevious) { FirstLots = Lots(); tp = NormalizeDouble(Ask + TakeProfitFirstOrder*Point, Digits); ticket = OrderSend(Symbol(), OP_BUY, FirstLots, Ask, slip, 0, 0, "1-ый ордер", Magic, 0, Blue); } if((UseHour==1&&Hour()>=StartTime&&Hour()<=StopTime)||UseHour==0) if(LIPS<TEETH&& TEETH<JAW&&DI_MINUSCurrent>18&&DI_MINUSCurrent>DI_PLUSCurrent&&MacdCurrent<MacdPrevious) { FirstLots = Lots(); tp = NormalizeDouble(Bid - TakeProfitFirstOrder*Point, Digits); ticket = OrderSend(Symbol(), OP_SELL, FirstLots, Bid, slip, 0, 0, "1-ый ордер", Magic, 0, Red); } if (CountTrade() == 1) Trailing(); } Tretyakov Rostyslav 2021.09.29 05:31 #16305 EVGENII SHELIPOV #:变了,什么都没变 你没有改变任何东西。 你的转换 if (CountTrade() == 1) Trailing(); 是在里面。 if (CountTrade() == 0) amsgif80 2021.09.29 07:50 #16306 你好,你能告诉我是否有可能在mt5的移动平均线专家 中添加单边(买入或卖出)交易吗? Vladimir Karputov 2021.09.29 08:19 #16307 amsgif80 移动平均线 专家中加入单边交易的选项(买入或卖出)? 把它写在专家顾问的MQL5代码中,你就会有这个选项。 amsgif80 2021.09.29 08:54 #16308 Vladimir Karputov #:把它写在专家顾问的MQL5代码中,你就会有这个选项。我试过了,但没有用。我在这个行业里完全是一个零。 Tretyakov Rostyslav 2021.09.29 08:56 #16309 amsgif80 #: 我试过了,没有用。我在这方面完全是个新手 :( 让我看看你的尝试... amsgif80 2021.09.29 08:56 #16310 amsgif80 #: 我试过了,但没有用。我在这一行业完全是个新手 :( 这是我试图插入的代码。 在代码的顶部抛出这个: enum ENUM_DIRECTION{DIRECTION_BUY = 0, // 只买DIRECTION_SELL = 1, // 只卖DIRECTION_ANY = 2, // 买和卖};input ENUM_DIRECTION inp_direction = DIRECTION_ANY; // 允许交易方向进一步查找代码中哪里开买、哪里卖。在start()或OnTick()函数中查看其中买入是在条件中添加: if(inp_direction!=DIRECTION_SELL)其中卖出是在条件中添加: if(inp_direction!=DIRECTION_BUY) 1...162416251626162716281629163016311632163316341635163616371638...1953 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
下午好!!!。
在这里帮我一下。我正在为一个网格EA添加追踪止损,到目前为止,只为第一笔订单添加。小路还没有触发。问题是什么?
以下是打开单个订单的代码片段
以下是单个订单的修改功能
谢谢你!!!!
下午好!!!。
在这里帮我一下。我正在为一个网格EA添加追踪止损,到目前为止,只为第一笔订单添加。小路还没有触发。问题是什么?
以下是打开单个订单的代码片段
以下是单个订单的修改功能
谢谢你!!!!
你是对的,它是有效的......在码头上有一个错误。
只有在没有订单的情况下,你才有机会调用拖网......
变了,什么都没变
变了,什么都没变
你没有改变任何东西。
你的转换
if (CountTrade() == 1) Trailing();
是在里面。
把它写在专家顾问的MQL5代码中,你就会有这个选项。
把它写在专家顾问的MQL5代码中,你就会有这个选项。
我试过了,没有用。我在这方面完全是个新手 :(
我试过了,但没有用。我在这一行业完全是个新手 :(
这是我试图插入的代码。
在代码的顶部抛出这个:
enum ENUM_DIRECTION{
DIRECTION_BUY = 0, // 只买
DIRECTION_SELL = 1, // 只卖
DIRECTION_ANY = 2, // 买和卖
};
input ENUM_DIRECTION inp_direction = DIRECTION_ANY; // 允许交易方向
进一步查找代码中哪里开买、哪里卖。在start()或OnTick()函数中查看
其中买入是在条件中添加:
if(inp_direction!=DIRECTION_SELL)
其中卖出是在条件中添加:
if(inp_direction!=DIRECTION_BUY)