在mql4中用什么来代替OnTradeTransaction()? - 页 3

 
Igor Makanu:

如果我们需要一个快速的解决方案,那么我会把所有的票据放到CArrayInt中,然后用CArrayInt比较未结订单的票据;Search()方法就在那里;如果没有票据,我们就停止比较CArrayInt。用未结订单的计数器,重置CArrayInt,并将所有票据再次写入CArrayInt,并设置全局描述的标志MyOnTradeTransaction - 这是订单列表发生变化的标志 - 代码将相当紧凑

而当我们需要抓住比订单损失更多的东西时,那就是我们开始与钻石跳舞的时候......。

检查OrdersTotal()不会显示,例如,激活一个待定订单 -订单的数量 保持不变,票据也是如此...而当我们需要抓住顺序/位置修改的事实时...

然而,一切都已经想好了,做完了,并在公共领域中进行了解释......。

 
Alexey Viktorov:

我所否认的这些优点是什么?我只有一个否认。我想了解某样东西是如何运作的,如果它只能由我的思想以外的人理解,那么我就不放心使用它,任何我不放心的东西我都会否认。我已经告诉过你,你写的信比我下半辈子都能读到的还要多。你不要把气撒在我身上...

优点是,没有事件可以丢失。与OnTrade()和OnTradeTransaction() 不同。但你不相信这样的事件会丢失......这就是为什么我说--讨论是没有意义的。

 
Artyom Trishkin:

而当你需要抓住比缺失的订单更多的东西时,这就是手鼓的开始......

检查OrdersTotal()不会显示待定订单的激活,例如 -订单的数量 是恒定的,门票也是...而当我们需要抓紧修改订单/位置时...

然而,一切都已经想好了,做完了,并免费提供了解释......。

我不建议分析OrdersTotal,它并不可靠。

这样你就无法跟踪订单的修改,你必须在CArray或CObj的基础上编写自己的类。

我提出了一个快速的解决方案,而不是一个基本的工作;)

阿尔乔姆-特里什金

好处是,我们不能失去事件。

可以,如果你按下PC重置按钮,....我已经很久没有关注这些文章了,但我记得我问过一个技术,就是在终端重启的情况下,将类的状态保存到文件中--这是否已经实现了?
 
Igor Makanu:

我不建议分析OrdersTotal,它并不可靠。

订单修改不能被跟踪,你需要在CArray或CObj的基础上编写你自己的类。

我提出了一个快速的解决方案,而不是一个基本的工作)。

如果你按下PC重置按钮,他们可以....。我已经很久没有关注这些文章了,但我记得我问过关于在终端重启时将类的状态保存到文件中 的技术--这已经实现了吗?

而且你还可以从阳台上扔下一台电脑--以获得可靠的损失 :)并让滚筒在下面等待。然后你也可以在上面浇筑混凝土:)))

不,它没有实施--它现在不是主要的事情。快到终点了--以同样的方式一次性完成所有事情,而不是分成不同的时间段。对我来说。

 
Artyom Trishkin:

不,没有实施--这不是现在的主要事情。几乎到了最后--把所有同类型的东西都一次性做完,而不是分成不同的时间段,这样更容易。对我来说。

好的,让我们等待

但我已经变成了相反的情况--我已经遇到了这个问题--我没有把保存能力放在程序结构中,开始写保存到文件中,非常麻烦的一切都变成了....。我已经遇到了这个问题--我没有把保存到文件中放在程序结构中--我开始写保存到文件,结果发现非常麻烦--我放弃了,重新从头写了大部分代码--这是个艰苦的工作,我必须分析整个源代码

 
fxsaber:

如果你能提供一些可重复的例子(没有贸易历史调查),我将非常感激。

我很高兴能报答你的帮助。不幸的是,我很难从非常庞大和复杂的代码中锻造出简短的工作代码。这也是非常具体的(例如,一次只打开一个姿势)。

所以对于Slava,我不得不发布一个代码骨架,而不是一个可编译的例子。

但我会试着做一些事情,否则我的良心会折磨我。但不是很快。

PS:我是说我写代码的效率很低。我只有通过坚持不懈的努力才能拿下它。同时--超级忙于让EA尽快在真实账户 上运行。我羡慕你的生产力。

 
Igor Makanu:

好的,让我们等待

但我已经变成了相反的情况--我已经遇到了这个问题--我没有把保存能力放在程序结构中,开始写保存到文件中,非常麻烦的一切都变成了....。我已经遇到了这个问题--我没有把保存到文件放在程序结构中,就开始写保存到文件,结果发现非常麻烦--后来我放弃了,重新从头写了大部分代码--我认为,如果你打算保存到文件,你必须立即实现它,至少要用 "存根",否则你将不得不在每个类中收集所有你想保存的东西--这是非常费力的工作,事实上你将不得不分析整个源代码

保存/加载方法是最初声明的。而在标准库的 基础对象CObject中。在库的每个对象中保存到文件的实现可以针对一个或两个对象进行描述。但是,在每篇文章中都写上关于保存/加载方法的描述--从一篇文章到另一篇文章几乎都是相同的 "行动",这将是相当无聊的阅读,而且干脆省略--对读者来说也不好(所以有些人说,他们很难阅读这样大量的文章,我想--你也一样)。因此--这个任务的描述在两三篇文章中接近尾声--一下子就一气呵成,不会给读者带来太多负担。

另一件事是,如果文章中没有描述任何东西--那么当然马上就有必要了。这完全取决于故事的具体内容和目标。如果目的是--kodobaza,那么一下子就能达到,如果目的是--训练文章--那么逐渐地--当时间到了。我有第二个选择。

 
Ihor Herasko:

OnTradeTransaction又被提到了。在失去连接等情况下,保证OnTradeTransaction 是没有问题的,因为一旦连接恢复,终端仍然会同步交易环境。由于OnTrade是次要的,这意味着你可以依赖他们如果开发者自己没有犯错,但如果他们删除了该条款,就意味着一切都没有问题。

 
Artyom Trishkin:

但是,在每篇文章中都描述保存/加载方法--将相当无聊地阅读每篇文章中几乎相同的 "行动",而且只是省略--对读者来说并不好(因此有人说他们很难阅读这样大量的文章,我想--你也一样)。因此--这项任务的描述在两三篇文章中接近尾声--一下子就能完成,而且不会给读者带来太多负担。

我没有说要阅读的文章量非常大,但我写的是,来源的数量非常大,如果没有某种帮助/FAQ,就不可能搞清楚如何使用它。

我将等待保存如此大量的数据的实施,看看它将是什么样子的,这很有趣。

 
Igor Makanu:

保存如此多的数据的实施将不得不等待,看看它将是什么样子,这将是很有趣的。

ok