如何实现N分钟后逐一平仓? - 页 3

 
Ihor Herasko:

请原谅我。这条线。

需要像这样重写。


(OrderCloseTime()> 0)工作,那我就不去管它了。

再次感谢))。

雷纳特-阿赫蒂亚莫夫

закрытие по тикету, переделайте под свой

也能正常关闭,但关闭后写出错误4108"无效的票号"。


 
Natalya Dzerzhinskaya:

(OrderCloseTime()> 0)工作,那么我就保持这种方式。

再次感谢))))。


也能正常关闭,但关闭后说错误4108"错误的票号"。


所以它真的是错的,不会撒谎。

看看你的代码逻辑。

你是做一个命令来关闭还是两个?

如果你已经关闭了一次,那么第二次就没什么可做的了,而且之前的票据已经无效了。

 
Renat Akhtyamov:

所以它真的错了,它不会撒谎。

研究一下你的代码的逻辑。

你是运行一条关闭命令还是两条?

如果你关闭了一次,那么第二次就没什么可做的了,而且前一张票已经不正确了。


你的代码中的"close"变量将永远不会小于0,请阅读帮助。

 
Ihor Herasko:

上述观点很有道理。如果门票已经知道了,为什么还要再去看所有的订单?

你可以立即关闭订单,当超额完成后。
为什么要寻找时间?比较 - 关闭 - 下一个。
 
Taras Slobodyanik:

你的代码中的 "close"变量永远不会小于0,请阅读帮助说明。

自行阅读...

-----------

返回值

如果函数成功完成则返回true,如果有错误则返回false。要获得错误信息,你需要调用GetLastError()

Коды возврата торгового сервера - Коды ошибок и предупреждений - Стандартные константы, перечисления и структуры - Справочник MQL4
Коды возврата торгового сервера - Коды ошибок и предупреждений - Стандартные константы, перечисления и структуры - Справочник MQL4
  • docs.mql4.com
GetLastError() - функция, возвращающая коды ошибок. Кодовые константы ошибок определены в файле stderror.mqh. Для вывода текстовых сообщений следует использовать функцию ErrorDescription(), определенную в файле stdlib.mqh.
 
Renat Akhtyamov:

自己看吧...

-----------

返回的值

如果函数成功完成则返回true,如果出错则返回false。要获得有关错误 的信息,请调用GetLastError()。


你甚至不知道变量类型之间的区别)

你需要学习。

 
Taras Slobodyanik:

所以你甚至不知道变量的类型)

你需要学习。


关于交易、自动交易系统和策略测试的论坛

如何在N分钟后实现逐一平仓?

Natalya Dzerzhinskaya, 2017.11.22 19:17


(OrderCloseTime()> 0)工作,那么我将保持这种方式。

再次感谢))))。


也能正常关闭,但关闭后写出错误4108"无效的票号"。


是来自天空还是什么?

)

祝你学习顺利!
 
Renat Akhtyamov:

它是从天而降还是什么?

)

祝你学习顺利!

在什么条件下,即使是每100年一次,它也能发挥作用?

                  if(OrderSelect(MyTicketBuy, SELECT_BY_TICKET)==true)
                  {
                     close=OrderClose(MyTicketBuy,OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),0,clrRed);
                     if(close<0){if(Fun_Error(GetLastError())==1)return;}
                  }
                  if(OrderSelect(MyTicketSell, SELECT_BY_TICKET)==true)
                  {
                     close=OrderClose(MyTicketSell,OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),0,clrBlue);
                     if(close<0){if(Fu n_Error(GetLastError())==1)return;}
                  }
 
Vitaly Muzichenko:

在什么条件下,即使是每100年一次,它也能发挥作用?

好吧,维塔利,我不知道...............

你在你的岗位上工作了......

小心点,这个功能在前一页。
 
Renat Akhtyamov:

好吧,维塔利,我不知道...............

你的帖子里有......

小心点,这个功能在前一页。

我的观点是,接近只能是0(假)或1(真),没有其他

同样,对于可靠性来说,最好是写。

close=OrderClose(OrderTicket(),OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),0,clrRed);