错误、漏洞、问题 - 页 1432

 
Alexey Kozitsyn:

OrderGetTicket()函数将返回索引被传递给它的订单的票据。

对于第二个问题,OrderGetTicket()既返回票据,又选择订单来处理。

谢谢,O队长,那么在所有订单的列表中,索引的顺序是如何定义的?

OrderGetTicket返回的是列表中通过的号码的订单票,而不是我所问的当前选定的订单的号码。

 
Ilya Malev:

谢谢你,O队长,那么在所有订单的列表中,索引的顺序是如何确定的?

OrderGetTicket返回的是列表中通过的号码的订单票,而不是我所问的当前选定的订单的号码。

在我的记忆中,最古老的(第一)=0等等。看看吧,这是个5分钟的工作。

这是你选择的顺序。它是如何被选中的?按号码还是按车票?

简而言之,有两种方式:按号码和按票。到目前为止,在我的实践中,还没有出现过这样的情况,这就不够了。

 
Alexey Kozitsyn:

检查一下吧,只需要五分钟就可以了。

当然,我可以自己检查。如果能解决这个问题,我不会写在这里。 你需要开发人员的确认,因为检查的结果可能是情境性的,或者在未来任意改变。

>>你的订单已被选中。它是如何被选中的?按号码还是按车票?

这是MT4中的一个附加问题,我并不关心它是如何被选中的,但我需要知道它的票据,以便在选中它的功能之外对它做一些事情。在MT5中,它看起来将不得不以编程方式解决,以及许多其他事情。

阿列克谢-科齐岑

到目前为止,在我的实践中还没有出现不够用的情况。

在我的实践中,有很多这样的情况。当你在调用 处理订单的函数 时,想在传递的参数方面节省代码大小,这种情况每次都会发生。
 

不仅如此,顺便说一下:想象一下这样一种情况:你正在处理一个你刚刚选定的订单,但你需要调用一个函数来获得其他订单的信息。

调用这个函数后,你将不得不重新选择订单,因为这个函数通过从其他订单中获取一些信息来修改当前的选择。

在所有这类函数中,在运行前记住当前的订单 选择,并在返回前重新选择,这样在调用这类函数时,当前的订单选择不会改变,这可能有助于避免代码中一些难以发现的逻辑错误,这是合乎逻辑的。但在MT5中,这是不可能的,因为没有类似OrderTicket的函数,我们必须发明一个特殊类的程序包装,以选择订单并获得其票据。

 
Ilya Malev:

不仅如此,顺便说一下:想象一下这样一种情况:你正在处理你刚刚选择的订单,但你需要调用一个函数来获得其他订单的信息。

当这个函数被调用时,你将不得不重新选择订单,因为这个函数通过从其他订单获得一些信息来修改当前的选择。

在所有这类函数中,在运行前记住当前的订单 选择,并在返回前重新选择,这样在调用这类函数时,当前的订单选择不会改变,这可能有助于避免代码中一些难以发现的逻辑错误,这是合乎逻辑的。但在MT5中,这是不可能的,因为没有类似OrderTicket的函数,我们必须发明一个特殊类的程序包装,以选择订单并获得其票据。

我不认为有什么问题。我们已经选择了订单。我们已经记住了它的票。我们需要另一个订单--我们找到了另一个订单。我们处理它。我们需要返回到前一个订单,我们使用OrderSelect()。这就是全部。
 
Alexey Kozitsyn:
我看不出有什么问题。挑选了一个订单。记住了他的票。需要另一个订单 - 找到另一个订单。我们处理它。我们需要返回到前一个订单,我们使用OrderSelect()。这就是全部。
如果问题是无法绕过的,以另一种方式完成,那么就没有问题。但是,MQL4中的OrderTicket函数也没有类似的功能,也没有用。
 
Ilya Malev:
如果问题是无法绕过和以其他方式完成的,那么就没有问题。但是也没有类似于MQL4中有用的OrderTicket功能。
如果你真的需要,你知道到哪里去问。然而,你不太可能在那里获得幸福。
 
MT4, build 910.与之前的版本没有向后兼容。我把一个编译好的指标文件给了一个910版本的人,他在902版本中无法启动,出现了错误。

有较新的不支持的版本,请更新你的客户终端


现在会是这样吗?

 
Artyom Trishkin:
MT4, build 910.与之前的版本没有向后兼容。我把一个编译好的指标文件给了一个910版本的人,他在902版本中无法启动,出现了错误。

有较新的不支持的版本,请更新你的客户终端


现在会是这样吗?

在MT5中,当他们引入ticks时也是如此。
 
Artyom Trishkin:
MT4, build 910.与之前的版本没有向后兼容。我把一个编译好的指标文件给了一个910版本的人,他在902版本中无法启动,出现了错误。

有较新的不支持的版本,请更新你的客户终端


现在会是这样吗?

是的,它应该是这样工作的。910版的编译器有变化,分别是由更新的编译器生成的ex4不能在以前的终端版本中运行。