关于MQL4的问题 - 页 8

 
你要求他在酒吧关门前5分钟销毁所有订单,所以他会把它们全部记下来。只要正确设置时间。并使用其他代码来关闭不必要的订单。或者,你想让整个程序为你而写?

我想知道第一部分......如何在触发第二个订单后删除它。
我的删除发生在它触发之前,但删除算法是基于检查OPEN订单
,例如,有两个挂单被设置。一个触发,即
OrderType()==OP_SELL或OrderType()==OP_SELL
相应的行被打印在日志中
而在测试结果
删除出现在买入或卖出之前
这导致订单编号的混乱

. 我问我是否可以不使用Curtime()在一天结束时关闭,因为更新取决于进入的点数,如果没有,EA将不会在我需要的时间关闭
现在我明白,你不能,因为EA没有点数不能工作
 
挂上脚本,它就不会关心是否有虱子了。
 
你可以像这样删除第二个。
   for(cnt=0;cnt<OrdersTotal();cnt++) { OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); if(OrderType()<=OP_SELL && // check for opened position OrderSymbol()==Symbol()) // check for symbol { for(i=0;i<OrdersTotal();i++) { OrderSelect(i, SELECT_BY_POS, MODE_TRADES); if(OrderType()>OP_SELL && // check for opened position OrderSymbol()==Symbol() // check for symbol { OrderDelete(OrderTicket()); } }


而时间......?你真的要那么精确吗?设置为2分钟内,你通常不会在那个时候得到充分的低迷。

 
对于罗杰
谢谢你,现在...经过一点调整,它就能正常工作了,尽管我仍然不明白为什么它对我不起作用(它都是透明的,达到了最大限度)。
关于低迷...问题是,有时不是两分钟,而是五分钟或更多(取决于十字架)。

对于Rosh
如果你有当然不要分享这个剧本?
 
int Coord[8]; Coord[8]=1;


编译器没有显示任何错误。它应该是这样的吗?

 
是的,应该是这样的。
GetLastError 在执行时将产生一个错误。编译器不检查表达式的值(常数8是表达式的一个特殊情况)。
 
Slawa,
非常感谢,我现在会更仔细地观察数组的维度...)

另一个简单的问题。
在手数明显超过可用资金的情况下,当 "从手数 "开始...
- 第一个检查是在服务器上进行的吗?
- 如果不是,为什么订单开放面板会挂起几秒钟?
- 如果是的话,是否正确,也许这个检查应该先在终端上完成?
 
对于罗杰<br / translate="no"> 谢谢你现在......经过一点调整,它就能正常工作了,尽管我仍然不明白为什么它对我不起作用(一切都透明到极点)。
关于低迷...问题是,有时不是两分钟,而是五分钟或更多(取决于十字架)。

对于Rosh
如果有的话,你能分享一下脚本吗?


我刚刚注意到,也可能是我忘记了。什么脚本是独立于蜱虫的工作?
如果是这样,我们应该写一些东西,比如。

while (true) { startFromExpert(); Sleep(as long as necessary); }



startFromExpert()函数是通过简单地重塑EA的start()函数得到的,我们将其全部复制并粘贴到我们的脚本中,不要忘记使用EA的所有参数。
这是其中一个选项。

 
在MQL 3中,有一个功能:
TotalProfit - 所有未结头寸 的未实现利润总额。
我找不到如何在MQL 4中实现它,请告知如何做到这一点。
 
我很快也会开始说脏话。你不想阅读帮助吗?
double AccountProfit( ) <br / translate="no">

返回当前账户的利润值。

例子

Print("Profit", AccountProfit())。