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

 
Roman Sharanov:

我想熟悉在EasyAndFastGUI上开发MQL5的界面。

2015年的 "图形界面 "文章有10部分(或什么?

我有个问题,它们都是一致的,还是说读旧的没有意义?

如果你想了解它,就从头开始读。如果你想通过试验和错误来学习,请下载最新的版本并研究例子。
 

大家好,我有一个关于MQL5的问题。
我没有找到一个正确关闭订单的好例子。我知道如何关闭订单并使用CTrade 类,但是否有一个好的现成解决方案?
我的想法不是发送关闭命令,而是有一个函数,只有在我收到经纪人的 "YES,位置已完全关闭,放松 "的答复后才返回真值)。
我也知道trade.ResultRetcode()和TRADE_RETCODE_DONE,但我不想重新发明一个轮子,有没有人有现成的解决方案?

 
Evgeny Dyuka:

你好,我有一个关于MQL5的问题。
我没有找到一个很好的例子来说明如何正确关闭一个订单。我知道如何关闭订单并使用CTrade类,但是否有一个好的现成解决方案?
我的想法不是发送关闭命令,而是有一个函数,只有在我收到经纪人的 "YES,位置已完全关闭,放松 "的答复后才返回真值)。
我也知道trade.ResultRetcode()和TRADE_RETCODE_DONE,但我不想重新发明一个轮子,有没有人有现成的解决方案?

MT4Orders的OrderClose将返回true,其逻辑与MT4相同--当头寸将被关闭。

 
fxsaber:

MT4Orders的OrderClose将返回true,其逻辑与MT4相同--当仓位被关闭时。

我认为,像上次一样,MT5专家会出现并批评你的图书馆,这也是可以的。但没有多少人知道如何使用MT5的订单系统 ))))

 
fxsaber:

MT4Orders的OrderClose将返回true,其逻辑与MT4相同--当仓位被关闭时。

谢谢你,我不知道有这个图书馆。
 
Igor Makanu:

我想就像上次的MT5专家会来批评你的库,那就好了......但没有多少人知道如何使用MT5的订单系统 ))))

很奇怪,mql5的开发者没有现成的解决方案。顺序、交易和位置都让人大伤脑筋。位置是开放的东西,但如果它已经关闭了,它是什么?如果从逻辑上讲,一个订单开仓,另一个订单平仓,即每个仓位两个 ,那么HistoryOrdersTotal会返回什么?在这种情况下,开仓订单的票据(有时,也许,也许)提高了头寸ID,但随后的平仓票据是什么?????
 
Evgeny Dyuka:
很奇怪的是,mql5开发者没有现成的解决方案。秩序、交易和位置真的让人脑洞大开。位置是开放的东西,如果它已经关闭了,那它是什么?如果从逻辑上讲,一个订单开仓,另一个订单平仓,即每个仓位两个 ,那么HistoryOrdersTotal会返回什么?在这种情况下,开仓订单的票据(有时,也许,也许)提高了头寸ID,但随后的平仓票据是什么?????
  • 订单是你向服务器发出的做某事的命令。它可能被执行,可能被部分执行(不完全执行),也可能被拒绝。
  • 交易 - 订单执行的结果(您的订单执行行动)。
  • 仓位是执行交易进入市场的结果。
  • 关闭头寸(这是指没有头寸的时候,作为有形的东西谈论它是没有用的 - 没有头寸) - 执行交易退出市场的结果。
  • 出场交易是在执行订单时获得的,也就是你的平仓订单。
  1. 您向服务器发送一个订单,以建立一个买入头寸--订单的类型为ORDER_TYPE_BUY
  2. 如果订单被服务器接受并完全执行,将形成一个交易--一个进入市场的订单,类型为DEAL_ENTRY_IN。
  3. 因此,你有一个POSITION_TYPE_BUY类型的职位
  4. 您向服务器发送一个平仓买入的订单--一个ORDER_TYPE_SELL类型的订单,其规模与要平仓的头寸相同。
  5. 如果订单被服务器接受并完全执行,那么将达成一笔交易--DEAL_ENTRY_OUT类型的退出交易。
  6. 因此,你没有 POSITION_TYPE_BUY类型的头寸--它已经完全关闭,它的历史可以在客户终端的历史日志中查看--这个和其他头寸的所有订单和交易都在那里。
这一点很简单--为了初步了解。再进一步,你可以在论坛和文章中找到一切。只要你有这个愿望。
 
Evgeny Dyuka:
奇怪的是,mql5开发者没有现成的解决方案。

有的。

Документация по MQL5: Стандартная библиотека / Торговые классы
Документация по MQL5: Стандартная библиотека / Торговые классы
  • www.mql5.com
Стандартная библиотека / Торговые классы - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Artyom Trishkin:
  • 订单是你向服务器发出的做某事的命令。它可能被执行,可能被部分执行(不完全执行),也可能被拒绝。
  • 交易 - 订单执行的结果(您的订单执行行动)。
  • 仓位是执行交易进入市场的结果。
  • 关闭头寸(这是指没有头寸的时候,作为有形的东西谈论它是没有用的 - 没有头寸) - 执行交易退出市场的结果。
  • 出场交易是在执行订单时获得的,也就是你的平仓订单。
  1. 您向服务器发送一个订单,以建立一个买入头寸--订单的类型为ORDER_TYPE_BUY
  2. 如果订单被服务器接受并完全执行,将形成一个交易--一个进入市场的订单,类型为DEAL_ENTRY_IN。
  3. 因此,你有一个POSITION_TYPE_BUY类型的职位
  4. 您向服务器发送一个平仓买入的订单--一个ORDER_TYPE_SELL类型的订单,其规模与要平仓的头寸相同。
  5. 如果订单被服务器接受并完全执行,那么将达成一笔交易--DEAL_ENTRY_OUT类型的退出交易。
  6. 因此,你没有 POSITION_TYPE_BUY类型的头寸--它已经完全关闭,它的历史可以在客户终端的历史日志中查看--这个和其他头寸的所有订单和交易都在那里。
这一点很简单--为了初步了解。再进一步,你可以在论坛和文章中找到一切。你所需要的只是坚强的意志。
谢谢你,我将研究一下。
 
Artyom Trishkin:
  • 订单是你向服务器发出的做某事的命令。它可能被执行,可能被部分执行(不完全执行),也可能被拒绝。
  • 交易 - 订单执行的结果(您的订单执行行动)。
  • 仓位是执行交易进入市场的结果。
  • 关闭头寸(这是指没有头寸的时候,作为有形的东西谈论它是没有用的 - 没有头寸) - 执行交易退出市场的结果。
  • 出场交易是在执行订单时获得的,也就是你的平仓订单。
  1. 您向服务器发送一个订单,以建立一个买入头寸--订单的类型为ORDER_TYPE_BUY
  2. 如果订单被服务器接受并完全执行,将形成一个交易--一个进入市场的订单,类型为DEAL_ENTRY_IN。
  3. 因此,你有一个POSITION_TYPE_BUY类型的职位
  4. 您向服务器发送一个平仓买入的订单--一个ORDER_TYPE_SELL类型的订单,其规模与要平仓的头寸相同。
  5. 如果订单被服务器接受并完全执行,那么将达成一笔交易--DEAL_ENTRY_OUT类型的退出交易。
  6. 因此,你没有 POSITION_TYPE_BUY类型的头寸--它已经完全关闭,它的历史可以在客户终端的历史日志中查看--这个和其他头寸的所有订单和交易都在那里。
这一点很简单--为了初步了解。再进一步,你可以在论坛和文章中找到一切。你所需要的只是坚强的意志。
你写道:"平仓(这是在没有头寸的情况下,把它当作可感知的东西来谈是没有用的--它不存在)--执行交易退出市场的结果"。事实证明,历史上没有这样的单一实体,但有一组事件--订单->交易(开盘),订单->交易(收盘),而且它都没有单一的名称。
我只是不能解决一个微不足道的问题--我需要访问这个最后的实体(可能是通过tickit),并收集关于它的信息--开/关的时间、数量等等。假设这个东西是由一个订单打开的,又由同一个订单关闭。那么,我们应该从HistoryOrderTotal中抽取最后两个订单,并利用它们进行一些分析?如果票据类型不同,怎么办...
这样的历史参考在实践中是如何解决的?