[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 1050 1...104310441045104610471048104910501051105210531054105510561057...1145 新评论 stasjan777 2010.12.16 16:41 #10491 我如何写条件if(ordershistorytotal()"补充了一个订单")? Yury Reshetov 2010.12.16 16:44 #10492 Stasjan:我如何写条件if(ordershistorytotal()"补充了一个订单")? 为此,OrdersHistoryTotal()的前一个值必须存储在一个静态变量 中,并且必须在条件中比较前一个值和当前值。如果它有变化,那么它就有补充,因为那里的数值不会向小的方向变化。 stasjan777 2010.12.16 16:47 #10493 Reshetov: 要做到这一点,OrdersHistoryTotal()的前一个值必须存储在一个静态变量中,并且必须在条件中比较前一个值和当前值。如果它有变化,那么它就有补充,因为那里的数值不会向下变化。 谢谢!!! Yury Reshetov 2010.12.16 16:53 #10494 prom18: 请帮助。专家顾问在信号旁边放了两个吊坠BuyStop和SellStop。还有一个信号是打开一个买入挂单。我必须根据最后一个信号的条件修改一个旧的买入订单。我是通过OrderModify()函数做到的。这并不奏效。它给了我们一个错误4051。如何选择所需的顺序。我知道我们应该选择票据,但如何确定所需订单的票据(在这种情况下,我们正在处理BuyStop)。至少要解释一下行动的逻辑。谢谢你! int ticket = -1; ... OrderSelect(...)。 如果(OrderType() == OP_BuyStop) { ticket = OrderTicket()。 OrderModify(...)。 return(0); } stasjan777 2010.12.16 16:56 #10495 Reshetov: 要做到这一点,OrdersHistoryTotal()的前一个值必须存储在一个静态变量中,并且必须在条件中比较前一个值和当前值。如果它有变化,那么它就有补充,因为那里的数值不会向下变化。 有什么建议可以让它变得和以前一样吗? volshebnik 2010.12.16 17:05 #10496 Roman.: 1当然不多。这在很大程度上取决于经纪人执行订单的速度,取决于你向经纪人发出订单的速度(来自互联网),也可能取决于我们(我)不知道的真实账户上的 "东西"。斯拉瓦写道,经纪人如何削减他的pipsaur(通过所谓的 "个人方法 "给客户)增加一个最小的距离从2,3点到18 - 20点,在这里看到一个分支https://forum.mql4.com/ru/37451/page10。 我把2个点放到 "缓冲区"--现在所有的交易都已经开始了 )再次感谢。 Yury Reshetov 2010.12.16 17:06 #10497 Stasjan: 有没有关于如何重置它的提示?static prevhitorytotal = 0; ... 如果(OrderHistoryTotal()!= prevhistorytotal) { // 补足了一个订单 } prevhistorytotal = OrderHistoryTotal()。 stasjan777 2010.12.16 17:08 #10498 Reshetov: 为此,OrdersHistoryTotal()的前一个值必须存储在一个静态变量中,并且必须在条件中比较前一个值和当前值。如果它有变化,那么它就有补充,因为那里的价值没有向下变化。 static int totalh=OrdersHistoryTotal(); 如果(OrdersHistoryTotal()>totalh) 我的理解是否正确? stasjan777 2010.12.16 17:09 #10499 Reshetov: static prevhitorytotal = 0; ... 如果(OrderHistoryTotal()!= prevhistorytotal) { // 补足了一个订单 } prevhistorytotal = OrderHistoryTotal()。 明白了吗? Yury Reshetov 2010.12.16 17:13 #10500 Stasjan: static int totalh=OrdersHistoryTotal();不正确。 static int totalh=0; //static variables are declared before calls start(), init() and deinit() ... int start() { ... if (OrderHistoryTotal() != totalh) { // 补足了一个订单 } totalh = OrderHistoryTotal()。 ... } 1...104310441045104610471048104910501051105210531054105510561057...1145 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我如何写条件if(ordershistorytotal()"补充了一个订单")?
我如何写条件if(ordershistorytotal()"补充了一个订单")?
要做到这一点,OrdersHistoryTotal()的前一个值必须存储在一个静态变量中,并且必须在条件中比较前一个值和当前值。如果它有变化,那么它就有补充,因为那里的数值不会向下变化。
谢谢!!!
请帮助。专家顾问在信号旁边放了两个吊坠BuyStop和SellStop。还有一个信号是打开一个买入挂单。我必须根据最后一个信号的条件修改一个旧的买入订单。我是通过OrderModify()函数做到的。这并不奏效。它给了我们一个错误4051。如何选择所需的顺序。我知道我们应该选择票据,但如何确定所需订单的票据(在这种情况下,我们正在处理BuyStop)。至少要解释一下行动的逻辑。谢谢你!
int ticket = -1;
...
OrderSelect(...)。
如果(OrderType() == OP_BuyStop) {
ticket = OrderTicket()。
OrderModify(...)。
return(0);
}
要做到这一点,OrdersHistoryTotal()的前一个值必须存储在一个静态变量中,并且必须在条件中比较前一个值和当前值。如果它有变化,那么它就有补充,因为那里的数值不会向下变化。
有什么建议可以让它变得和以前一样吗?
1当然不多。这在很大程度上取决于经纪人执行订单的速度,取决于你向经纪人发出订单的速度(来自互联网),也可能取决于我们(我)不知道的真实账户上的 "东西"。斯拉瓦写道,经纪人如何削减他的pipsaur(通过所谓的 "个人方法 "给客户)增加一个最小的距离从2,3点到18 - 20点,在这里看到一个分支https://forum.mql4.com/ru/37451/page10。
有没有关于如何重置它的提示?
static prevhitorytotal = 0;
...
如果(OrderHistoryTotal()!= prevhistorytotal) {
// 补足了一个订单
}
prevhistorytotal = OrderHistoryTotal()。
为此,OrdersHistoryTotal()的前一个值必须存储在一个静态变量中,并且必须在条件中比较前一个值和当前值。如果它有变化,那么它就有补充,因为那里的价值没有向下变化。
static int totalh=OrdersHistoryTotal();
如果(OrdersHistoryTotal()>totalh)
我的理解是否正确?
static prevhitorytotal = 0;
...
如果(OrderHistoryTotal()!= prevhistorytotal) {
// 补足了一个订单
}
prevhistorytotal = OrderHistoryTotal()。
明白了吗?
static int totalh=OrdersHistoryTotal();
不正确。
static int totalh=0; //static variables are declared before calls start(), init() and deinit()
...
int start() {
...
if (OrderHistoryTotal() != totalh) {
// 补足了一个订单
}
totalh = OrderHistoryTotal()。
...
}