新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1652 1...164516461647164816491650165116521653165416551656165716581659...1953 新评论 Порт-моне тв 2021.10.07 22:49 #16511 大家好! 在我的简单的专家顾问中,有什么最简单的方法来编写(修改)一个订单,当某个条件发生时,删除其中的止盈和止损,一个方向最多三个订单(如果这很重要的话),我假设订单数被使用,我是否应该编写一个新的订单?我在等待一个关心我的人。 Tretyakov Rostyslav 2021.10.08 05:16 #16512 Порт-моне тв #:大家好!在我的简单的专家顾问中,有什么最简单的方法来编写(修改)一个订单,当某个条件发生时,删除其中的止盈和止损,最大应该是一个方向上不超过三个订单(如果这很重要的话),订单计数,我理解是用的,我应该再写一遍吗?我在等待一个关心我的人。 OrderModify(OrderTicket(), OrderOpenPrice(), 0, 0, 0); Tretyakov Rostyslav 2021.10.08 05:17 #16513 Ivan Butko #:不幸的是,很难理解如何使用这样的代码。 试着在打开买入订单时把标志放在1,关闭时把标志放在0,并把后者添加到打开条件中。它没有工作) 这很奇怪,事实上规则被打破了:如果标志==0,则打开。而且无论如何,它还是在同一根蜡烛上以1的价格开盘。 告诉我你是如何做到的。 Koldun Zloy 2021.10.08 07:18 #16514 Alexey Viktorov #:为什么这么复杂? 不要耍小聪明。这不是问题的内容。 Ivan Butko 2021.10.08 10:49 #16515 MakarFX #: 告诉我你是如何做到的。 它似乎是有效的,我已经这样重新做了。现在,我将在卖出时进行尝试,看看它们是否可以相互独立。 int Buy=0, Sell=0; void OnTick(void) { double ma=iMA(NULL,0,20,0,MODE_SMA,PRICE_CLOSE,0), ma2=iMA(NULL,0,80,0,MODE_SMA,PRICE_CLOSE,0); if (ma>ma2 && Buy==0) { OrderSend(Symbol(), OP_BUY, lots, Ask, 3, Bid - SL * Point, 0, NULL, 888, 0, Blue); Buy=1; } for(int i=0;i<OrdersTotal();i++) { if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break; if(OrderMagicNumber()!=888 || OrderSymbol()!=Symbol()) continue; //--- check order type if(OrderType()==OP_BUY) { if(perceptron_B() < Porog_B) { if(!OrderClose(OrderTicket(),OrderLots(),Bid,3,White)) Print("OrderClose error ",GetLastError()); Buy=1; } break; } UPD Phew, it worked) 我对卖出也做了同样的工作,现在它们可以独立打开,并且有不同的逻辑。 Tretyakov Rostyslav 2021.10.08 11:41 #16516 Ivan Butko #:它似乎是有效的,我已经这样重新做了。现在,我将在卖出时进行尝试,看看它们是否可以相互独立。UPD 呼,设计成功了)我对卖出也做了同样的工作,现在它们可以独立打开,并伴随着不同的逻辑。 可能在编译时被刷掉了)))) Ivan Butko 2021.10.08 12:09 #16517 MakarFX #:可能会被人骂得狗血淋头,汇编)))) 对了!有一点,"应检查'OrderSend'的返回值 AI (2).mq4 34 9" 但它似乎是有效的) Tretyakov Rostyslav 2021.10.08 12:15 #16518 Ivan Butko #:对了!有一点,"应检查'OrderSend'的返回值 AI (2).mq4 34 9"但它似乎是有效的) 要像这样做 if (ma>ma2 && Buy==0) { if(OrderSend(Symbol(), OP_BUY, lots, Ask, 3, Bid - SL * Point, 0, NULL, 888, 0, Blue)) Buy=1; } Ivan Butko 2021.10.08 12:27 #16519 MakarFX #:让它成为现实吧! 谢谢你! Порт-моне тв 2021.10.08 14:48 #16520 MakarFX #: 谢谢你! 1...164516461647164816491650165116521653165416551656165716581659...1953 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
大家好!
在我的简单的专家顾问中,有什么最简单的方法来编写(修改)一个订单,当某个条件发生时,删除其中的止盈和止损,一个方向最多三个订单(如果这很重要的话),我假设订单数被使用,我是否应该编写一个新的订单?我在等待一个关心我的人。
大家好!
在我的简单的专家顾问中,有什么最简单的方法来编写(修改)一个订单,当某个条件发生时,删除其中的止盈和止损,最大应该是一个方向上不超过三个订单(如果这很重要的话),订单计数,我理解是用的,我应该再写一遍吗?我在等待一个关心我的人。
不幸的是,很难理解如何使用这样的代码。
试着在打开买入订单时把标志放在1,关闭时把标志放在0,并把后者添加到打开条件中。它没有工作)
这很奇怪,事实上规则被打破了:如果标志==0,则打开。而且无论如何,它还是在同一根蜡烛上以1的价格开盘。
为什么这么复杂?
不要耍小聪明。这不是问题的内容。
告诉我你是如何做到的。
它似乎是有效的,我已经这样重新做了。现在,我将在卖出时进行尝试,看看它们是否可以相互独立。
UPD
Phew, it worked) 我对卖出也做了同样的工作,现在它们可以独立打开,并且有不同的逻辑。
它似乎是有效的,我已经这样重新做了。现在,我将在卖出时进行尝试,看看它们是否可以相互独立。
UPD
呼,设计成功了)我对卖出也做了同样的工作,现在它们可以独立打开,并伴随着不同的逻辑。
可能在编译时被刷掉了))))
可能会被人骂得狗血淋头,汇编))))
对了!有一点,"应检查'OrderSend'的返回值 AI (2).mq4 34 9"
对了!有一点,"应检查'OrderSend'的返回值 AI (2).mq4 34 9"
要像这样做
让它成为现实吧!
谢谢你!
谢谢你!