新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1623 1...161616171618161916201621162216231624162516261627162816291630...1953 新评论 Taras Slobodyanik 2021.09.24 10:00 #16221 makssub #: 你好。请告知如何找到最接近当前价格的订单的开盘价。MQL4。你有什么例子吗? 我们查看所有未结头寸,并比较从当前价格到交易开始的点数。 你可以采取任何例子,就在上面有一个代码--在一个循环中搜索订单。 законопослушный гражданин 2021.09.24 10:01 #16222 MakarFX #:什么是OrdersClose? 请看这里。 明白了,谢谢。 Igor Makanu 2021.09.24 11:56 #16223 PapaYozh #:没有必要去幻想。所发生的事情的本质是,你调用一个方法,这是一个具有不同参数集的构造函数。在这种情况下,没有对象被创建。 你应该理解构造函数调用和方法/函数调用之间的区别。 PapaYozh#: 一个类似的构造函数调用,也不会导致理想的结果。 为了论证,通过引用传递指针,在方法(构造函数?像方法一样被调用?)的签名中添加一个指针 Maksim Burov 2021.09.24 11:59 #16224 Taras Slobodyanik #:我们查看所有未结头寸,并比较从当前价格到交易开始的点数。你可以采取任何例子,就在上面有一个代码--在一个循环中搜索订单。 对不起,我又写得不对了。让我再试试) 有一个开放订单的网格。我需要找到最接近当前价格的订单的开盘价(OrderOpenPrice)。为了继续建立网格,但我的订单几乎是混乱地建立的。 我明白怎么写超限,但我无法用语言正确表达(我像狗一样,什么都懂))。 如果你有例子或例子的链接,请贴出来。MQL4 PapaYozh 2021.09.24 12:14 #16225 Igor Makanu #:你需要了解构造函数调用和方法/函数调用之间的区别为争论起见,在一个方法的签名中添加一个指针(构造函数?像方法一样被调用?)并通过引用传递。 在Java中是可以的。 你也可以从子构造函数中调用父构造函数,唯一的要求是父构造函数是由子构造函数的第一个命令调用的。 在MQL中,问题是,如果父类没有空的构造函数,那么在创建子类时就会隐含地调用父类的构造函数。 -- PS。 如果父代有一个不带参数的构造函数和一个带参数的构造函数,哪一个会被带参数的子代构造函数隐式调用? PapaYozh 2021.09.24 12:14 #16226 Igor Makanu #:对于主题--在方法的签名中(作为方法被调用的构造函数?)添加通过引用传递的指针 这看起来像一个拐杖。 不是吗? Artem Rytuhin 2021.09.24 12:16 #16227 大家好。这可能是一个愚蠢的问题,但我还没有找到解决办法。 我已经创建了一个指标。它在图表上 有按钮,当我按下它时,线就会被画出来,按钮就会被激活。 当我切换时间框架时,如何使按钮活动和位置保持活跃? 当切换TF时,函数Deinit起作用,它具有删除所有对象的功能。这是一种先决条件,要从图表中清除一切。 我曾试图将按钮状态存储在一个变量中,但我注意到在指标中,如果我们切换TF,它们就被清零了。 在EA中不是这样的,内部变量的值在那里没有被归零。事实证明,如果指标已经计算出一些数值并保存在内部变量中,它们将在TF切换时被重置。为什么以及如何避免它。 Valeriy Yastremskiy 2021.09.24 12:19 #16228 makssub #:对不起,我又写错了。让我再试试)有一个开放订单的网格。我需要找到最接近当前价格的订单的开盘价(OrderOpenPrice)。为了继续建立网格,但我的订单几乎是混乱地建立的。我明白怎么写超限,但我无法用语言正确表达(我像狗一样,什么都懂))。如果你有例子或例子的链接,请贴出来。MQL4 首先,在循环之前,差值等于1000。在循环中,如果开盘价减去现价的模数小于差值,那么差值就等于获得的值,票据被储存在一个变量中。 PapaYozh 2021.09.24 12:22 #16229 Igor Makanu #:你应该知道构造函数调用和方法/函数调用之间的区别。 顺便说一下,除了在创建对象时隐式调用外,还有什么区别呢? EVGENII SHELIPOV 2021.09.24 12:22 #16230 void ClosseAll() { for(int i = OrdersTotal()-1; i>=0; i--) { if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { if (OrderType() == OP_BUY) { if (!OrderClose(OrderTicket(), OrderLots(), Bid, slip)) Print("Не удалось закрыть ордера на покупку!"); } if (OrderType() == OP_SELL) { if (!OrderClose(OrderTicket(), OrderLots(), Ask, slip)) Print("Не удалось закрыть ордер на продажу!"); } } } } 日安!!!。 请帮助编写代码,以便在达到一定的缩减水平时关闭网格EA中的最小和最大订单。 我写了两个函数来计算最大和最小订单的利润 //+----------------------------------------------------------------------------+ //| Расчет профита максимального ордера в сетке | //+----------------------------------------------------------------------------+ double GetProfitMaxOrder() { int max_ticket = 0; double max_ticket_profit = 0 ; { for (int cnt = OrdersTotal() - 1; cnt >= 0; cnt--) { if(OrderSelect(ticket, SELECT_BY_TICKET, MODE_TRADES)) { if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) { if(OrderType() == OP_BUY || OrderType() == OP_SELL) { if(OrderTicket() > max_ticket) max_ticket = ticket; { max_ticket_profit = OrderProfit(); } } } } } } return( max_ticket_profit); } //+----------------------------------------------------------------------------+ //| Расчет профита минимального ордера в сетке | //+----------------------------------------------------------------------------+ double GetProfitMinOrder() { int min_ticket=INT_MAX; double min_ticket_profit = 0; { for (int cnt = OrdersTotal() - 1; cnt >= 0; cnt--) { if(OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)) { if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) { if (OrderType() == OP_BUY || OrderType() == OP_SELL) { if(OrderTicket() < min_ticket) min_ticket = OrderTicket(); { min_ticket_profit = OrderProfit(); } } } } } } return(min_ticket_profit); } 我有一个函数来计算这些订单的金额。这里似乎没有问题。 问题是如何只关闭这两个订单,我已经找到ClosseAll()函数。 问题是如何改变关闭所有订单的OrderTicket()函数。 附加变量max_ticket和min_ticket,确定网格中只有最小和最大订单的门票。 或者你对这个问题有自己的解决方案吗? 1...161616171618161916201621162216231624162516261627162816291630...1953 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你好。请告知如何找到最接近当前价格的订单的开盘价。MQL4。你有什么例子吗?
我们查看所有未结头寸,并比较从当前价格到交易开始的点数。
你可以采取任何例子,就在上面有一个代码--在一个循环中搜索订单。
什么是OrdersClose?
请看这里。明白了,谢谢。
没有必要去幻想。所发生的事情的本质是,你调用一个方法,这是一个具有不同参数集的构造函数。在这种情况下,没有对象被创建。
你应该理解构造函数调用和方法/函数调用之间的区别。
一个类似的构造函数调用,也不会导致理想的结果。
为了论证,通过引用传递指针,在方法(构造函数?像方法一样被调用?)的签名中添加一个指针
我们查看所有未结头寸,并比较从当前价格到交易开始的点数。
你可以采取任何例子,就在上面有一个代码--在一个循环中搜索订单。
对不起,我又写得不对了。让我再试试)
有一个开放订单的网格。我需要找到最接近当前价格的订单的开盘价(OrderOpenPrice)。为了继续建立网格,但我的订单几乎是混乱地建立的。
我明白怎么写超限,但我无法用语言正确表达(我像狗一样,什么都懂))。
如果你有例子或例子的链接,请贴出来。MQL4
你需要了解构造函数调用和方法/函数调用之间的区别
为争论起见,在一个方法的签名中添加一个指针(构造函数?像方法一样被调用?)并通过引用传递。
在Java中是可以的。
你也可以从子构造函数中调用父构造函数,唯一的要求是父构造函数是由子构造函数的第一个命令调用的。
在MQL中,问题是,如果父类没有空的构造函数,那么在创建子类时就会隐含地调用父类的构造函数。
--
PS。
如果父代有一个不带参数的构造函数和一个带参数的构造函数,哪一个会被带参数的子代构造函数隐式调用?
对于主题--在方法的签名中(作为方法被调用的构造函数?)添加通过引用传递的指针
这看起来像一个拐杖。
不是吗?
大家好。这可能是一个愚蠢的问题,但我还没有找到解决办法。
我已经创建了一个指标。它在图表上 有按钮,当我按下它时,线就会被画出来,按钮就会被激活。
当我切换时间框架时,如何使按钮活动和位置保持活跃?
当切换TF时,函数Deinit起作用,它具有删除所有对象的功能。这是一种先决条件,要从图表中清除一切。
我曾试图将按钮状态存储在一个变量中,但我注意到在指标中,如果我们切换TF,它们就被清零了。
在EA中不是这样的,内部变量的值在那里没有被归零。事实证明,如果指标已经计算出一些数值并保存在内部变量中,它们将在TF切换时被重置。为什么以及如何避免它。
对不起,我又写错了。让我再试试)
有一个开放订单的网格。我需要找到最接近当前价格的订单的开盘价(OrderOpenPrice)。为了继续建立网格,但我的订单几乎是混乱地建立的。
我明白怎么写超限,但我无法用语言正确表达(我像狗一样,什么都懂))。
如果你有例子或例子的链接,请贴出来。MQL4
你应该知道构造函数调用和方法/函数调用之间的区别。
顺便说一下,除了在创建对象时隐式调用外,还有什么区别呢?
日安!!!。
请帮助编写代码,以便在达到一定的缩减水平时关闭网格EA中的最小和最大订单。
我写了两个函数来计算最大和最小订单的利润
我有一个函数来计算这些订单的金额。这里似乎没有问题。
问题是如何只关闭这两个订单,我已经找到ClosseAll()函数。
问题是如何改变关闭所有订单的OrderTicket()函数。
附加变量max_ticket和min_ticket,确定网格中只有最小和最大订单的门票。
或者你对这个问题有自己的解决方案吗?