在给定时间和/或SL后自动关闭订单 - 页 4 1234 新评论 Simon Gniadkowski 2012.02.06 22:38 #31 请使用SRC 按钮来发布代码。. . . Simon Gniadkowski 2012.02.06 22:40 #32 也许你正试图关闭一个订单两次。 if (OrderType() == OP_BUY || OP_SELL) { bool Closed = OrderClose(OrderTicket(),OrderLots(), OrderClosePrice(), UseSlippage, Red); openbuy = 0; opensell = 0; } if (OrderType() == OP_SELL) { Closed = OrderClose(OrderTicket(),OrderLots(), OrderClosePrice(), UseSlippage, Red); opensell = 0; openbuy = 0; } } 你只需要一个......并使用......。 if (OrderType() <= OP_SELL) 包括OP_SELL和OP_BUY,请阅读:https://docs.mql4.com/constants/trading [删除] 2012.02.07 12:10 #33 我把代码改成了这样。 for(int i = OrdersTotal() - 1; i >= 0; i--) { if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { if((OrderOpenTime()+3600) < TimeCurrent()) { if (OrderType() == OP_BUY) { bool Closed = OrderClose(OrderTicket() ,OrderLots(), OrderClosePrice(), UseSlippage, Red); openbuy = 0; } if (OrderType() == OP_SELL) { Closed = OrderClose(OrderTicket() ,OrderLots(), OrderClosePrice(), UseSlippage, Red); opensell = 0; } } } } 现在我需要找出我是如何让代码在击中StopLoss或TakeProfit时将opensell和openbuy计数为0的。 Tjipke de Vries 2012.02.07 13:13 #34 nirvanamac: 我把代码改成了这样。 现在我需要找出如何让代码在打到StopLoss或TakeProfit时将opensell和openbuy计数为0的方法。 opensell = 0; openbuy =0; for(int i = OrdersTotal() - 1; i >= 0; i--) { if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) //==> select also on magicnumber and symbol { if(OrderMagicnumber()== magicnumber && OrderSymbol()== Symbol() && OrderType() == OP_BUY){openbuy++;} if(OrderMagicnumber()== magicnumber && OrderSymbol()== Symbol() && OrderType() == OP_SELL){opensell++;} if((OrderOpenTime()+3600) < TimeCurrent() && OrderMagicnumber()== magicnumber && OrderSymbol()== Symbol()) { if (OrderType() == OP_BUY) { bool Closed = OrderClose(OrderTicket() ,OrderLots(), OrderClosePrice(), UseSlippage, Red); openbuy = openbuy-1; //openbuy--; } if (OrderType() == OP_SELL) { Closed = OrderClose(OrderTicket() ,OrderLots(), OrderClosePrice(), UseSlippage, Red); opensell = opensell-1; //opensell--; } } } } 直接选择magicnumber和符号,这段代码将以更好的方式编写。 如果你按照你的方式使用它,那么你将关闭所有运行时间超过一小时的未平仓交易(也不是从这个开始)。 [删除] 2012.02.07 13:28 #35 deVries: 直接选择magicnumber和符号,这段代码将以更好的方式编写。如果你按照你的方式使用它,那么你将关闭所有运行时间超过一个小时的未平仓交易(也不是从这个开始)。 嗨,deVries......我已经试过了,现在将用TP和SL来检查......非常感谢......。 [删除] 2012.02.07 13:34 #36 哇,现在看起来不错:)不是性能,而是带有SL和TP的EA。 1234 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
请使用SRC 按钮来发布代码。. . .
也许你正试图关闭一个订单两次。
你只需要一个......并使用......。
包括OP_SELL和OP_BUY,请阅读:https://docs.mql4.com/constants/trading
我把代码改成了这样。
现在我需要找出我是如何让代码在击中StopLoss或TakeProfit时将opensell和openbuy计数为0的。
我把代码改成了这样。
现在我需要找出如何让代码在打到StopLoss或TakeProfit时将opensell和openbuy计数为0的方法。
直接选择magicnumber和符号,这段代码将以更好的方式编写。
如果你按照你的方式使用它,那么你将关闭所有运行时间超过一小时的未平仓交易(也不是从这个开始)。
直接选择magicnumber和符号,这段代码将以更好的方式编写。
如果你按照你的方式使用它,那么你将关闭所有运行时间超过一个小时的未平仓交易(也不是从这个开始)。
嗨,deVries......我已经试过了,现在将用TP和SL来检查......非常感谢......。
哇,现在看起来不错:)不是性能,而是带有SL和TP的EA。