初学者的问题 MQL5 MT5 MetaTrader 5 - 页 1429

 

伙计们,请给我点提示。

我在 MT4 中不是一个很好的程序员 )现在我正在改用 MT5。

我遇到了这样一个细微差别:

在 MT4 上,解决这个问题很容易......在 MT5 的手册中写道:"不要混淆订单和交易",并写道有必要通过函数

HistoryDealGetInteger

HistoryDealGetInteger 函数请求的东西有.....老实说,我什么都不明白。请好心人人性化地解释一下。

 
Sergey Dymov HistoryDealGetInteger

HistoryDealGetInteger 函数请求的东西有.....老实说,我什么都不明白。请好心人人性化地解释一下。

订单是执行一项操作的命令或请求,它有自己的票据,事务是对收到的订单进行的操作,它有自己的事务票据和订单号(票据),一个订单可以由多个事务执行。仓位有自己的票据,并存储交易编号和订单编号。这是在 5K 中。

在 4K 中,交易订单和头寸都是市场订单。

 
Rustam Ayupov #:
您好!我正在探索 MT5 终端的所有神奇功能。现在,随着时间的推移,在模拟模式下,终端在及时处理报价方面的一些难以理解的限制问题开始增多。为了分散风险,我用最小的交易量进行交易,尽可能使用最多的货币对。我在六家经纪商处开设了十个货币对,Roboforex 是第一个开始变慢的......然后其他经纪商也开始在加载报价时变慢。这台机器的负荷不足,我想再多加点负荷)处理器负荷为 20-70%,16G 内存超过 60% 未加载,固态硬盘,用于交换的东西很多,互联网 100MB,光纤。这真的是 MT5 终端的极限吗?还是问题出在经纪商有限的服务器上?每个交易者都有限制吗?请告诉我?如何提高报价加载速度?谢谢。

我在终端取消了进程同步。这很有用。问题是 99% 的程序都不适应这些功能,终端本身也是如此。

 
Valeriy Yastremskiy #:

订单是执行某项操作的指令或请求,它有自己的票据;交易是对收到的订单进行的操作,它有自己的交易票据和订单号(票据);一个订单可以由多个交易执行。仓位有自己的票据,并存储交易编号和订单编号。它的单位是 5k。

在 4K 中,交易订单和头寸都是市场订单。

好的。谢谢你,好心人。

 

您好。您能告诉我如何在 MQL5 中找到票据上的触发订单,并查看它是否在获利 时关闭吗?在 MQL4 中这很容易。

 
Mihail Nefedov 获利 时关闭吗?在 MQL4 中这很容易。

您好,Michael,我自己还没有尝试过这种搜索方式,但我想使用 MqlTradeTransaction 结构, 您可以请求订单关闭时的价格及其止盈价格,然后将它们相互比较

再见,弗拉基米尔

 
MrBrooklin #:

嗨,迈克尔,我自己还没试过这样搜索,但我想使用 MqlTradeTransaction 结构 可以查询订单平仓价格和获利价格,然后将它们相互比较

再见,弗拉基米尔

在 OnTradeTransaction 中,您只能在平仓时跟踪平仓。之后就没有头寸了。因此,搜索历史记录是一项艰巨的任务。在这种情况下,我们需要重新安排整个控制算法。

 
Alexey Viktorov #:

在 OnTradeTransaction 中,您只能在平仓时跟踪平仓。在此之后,就没有任何头寸了。因此,搜索历史记录是一项艰巨的任务。在这种情况下,必须重新安排整个控制算法。

晚上好,阿列克谢!你有更好的办法吗?

弗拉基米尔

 
MrBrooklin #:

晚上好,阿列克谢!有更好的选择吗?

弗拉基米尔

这取决于您想要什么。如果您需要确定某个头寸在平仓时是如何被平仓的,那么在OnTradeTransaction(交易)中的控制是最好的选择。如果需要从历史记录中确定某个仓位是如何平仓的,则需要查看历史记录中的交易。我们还应该考虑到,并不是每笔平仓交易都有魔法。

一般来说,这确实很麻烦......但只要有一定的经验,还是可以做到的。

 
Mihail Nefedov #:
晚上好!有谁知道如何在 MQL5 中找到已触发的订单,知道它的票据,并查看它的利润?在哪里查找,查找什么,请阅读有关此主题的课程。

首先,了解术语。了解在 mt4 中订单和在 mt5 中订单是 3 个不同的概念。订单->交易->头寸。

历史利润只能针对交易查看。但交易单与平仓单是不同的。唯一能将订单、交易和头寸统一起来的是头寸 ID。