顺序_position_id - 页 2 123456789...21 新评论 Stanislav Korotky 2014.08.26 09:42 #11 需要更多的背景(代码)。这张票来自哪里,在执行这段代码之前,它等于什么? Mikhail Filimonov 2014.08.26 14:36 #12 Rosh:也许这是因为ORDER_POSITION_ID是在订单执行后立即请求的,当时交易服务器还没有时间发送有关交易的信息。阅读文章MetaTrader 5中的交易事件我给了一个代码片段作为例子,但实际上获取ID的函数是这样的。//+------------------------------------------------------------------+ //| Get order position ID function | //+------------------------------------------------------------------+ long GetOrderPosId( const ulong ticket ) { long pos_id = 0; if ( OrderSelect( ticket ) ) { string pos_symbol = OrderGetString( ORDER_SYMBOL ); if ( PositionSelect( pos_symbol ) ) { return( long( OrderGetInteger( ORDER_POSITION_ID ) ) ); } } return( pos_id ); }P/S Rosh,请不要让我去读文章。相信我,我读了很多书,而事实上,我问了很多问题,这是因为在文档中存在着很多模糊不清的地方。 Mikhail Filimonov 2014.08.26 14:39 #13 marketeer: 我们需要更多的背景(代码)。这张票来自哪里,在执行这段代码之前,它等于什么?如果订单被选中,你认为该票是什么?而这张票是作为交易服务器接受订单的回应而从网上取走的。 Stanislav Korotky 2014.08.26 15:46 #14 Mikalas:如果订单被选中,你认为该票是什么?而这张票是作为交易服务器接受订单的回应而从网上取走的。 而你认为我们怎么知道你从什么地方得到的呢?你显示的代码仍然没有说明票据的内容,没有说明请求是如何被执行的,你也没有使用,例如,调试打印或其他手段来检查变量是否包含一个左旋的数字(对于初学者,那么request.action等于什么?)虫子可以在任何地方潜入。 Mikhail Filimonov 2014.08.26 18:54 #15 marketeer: 你认为我们怎么知道你得到的是什么,以及它来自哪里?你显示的代码仍然没有说明票据的内容,没有说明请求是如何被执行的,你也没有使用,例如,调试打印或其他手段来确保变量不包含一个左旋的数字(对于初学者,那么request.action等于什么?)虫子可以在任何地方潜入。 谢谢你,我明白你的意思。 Stanislav Korotky 2014.08.26 19:59 #16 Mikalas: 谢谢你,我理解你的观点。 不客气。我不明白你的意思。你已经被暗示了,请求的异步执行和票据的接收。在你展示代码如何以及何时处理这些东西之前,这个问题原来是针对心灵感应者的。 Mikhail Filimonov 2014.08.26 20:38 #17 marketeer: 不客气。我也不明白你的意思。你已经被暗示了,请求的异步执行和票据的接收。直到你展示代码,如何以及何时处理这些东西,这个问题原来是针对心灵感应者的。让我解释一下。从上面的代码来看,一切都很明显。哪张票并不重要(订单是单独下的)。仔细查看(按票据和仓位的订单符号开出的订单部分被此订单执行)。除了打印之外,还有一步步执行的程序 和 当我到了return( long( OrderGetInteger( ORDER_POSITION_ID ) ) );它返回 "0"。问题不在于我是否能用MQL5编程(以及追踪程序),而在于问题是,如果它在文件中说的是一件事,而在现实中出现的是另一件事(服务台照例是沉默的)。或者我可能正确地解释了文件中关于ORDER_POSITION_ID 的描述(阅读我的3个帖子)。 Stanislav Korotky 2014.08.26 21:50 #18 Mikalas:让我解释一下。从上面的代码来看,一切都很明显。哪张票并不重要(订单是单独下的)。仔细查看(按票据和仓位的订单符号开出的订单部分被此订单执行)。除了打印之外,还有一步步执行的程序 和 当我到了它返回 "0"。问题不在于我是否能在MQL5中编程(以及追踪程序),而在于什么是在问题是,如果它在文件中说的是一件事,而在现实中出现的是另一件事(服务台照例是沉默的)。或者我可能正确地解释了文件中关于ORDER_POSITION_ID 的描述(阅读我的3个帖子)。又是25。重要的是,你的订单和你如何放置它。也许,例如(假设性的,因为一切都还是个谜),你有一个钟摆,那么位置ID可以是什么?上面的代码没有任何意义。 Mikhail Filimonov 2014.08.26 22:22 #19 marketeer:又是25个。重要的是,你的订单和你如何放置它。也许你有,例如(假设性的,因为一切都还是个谜),一个钟摆,那么什么可以是位置的ID?上面的代码没有任何意义。对不起,但我们说的是 "不同 "的语言,或者说你读的是跨行。该挂单为ONE, 该仓位已被这个 仍然有效 的订单 部分打开。当追踪 程序时,我得到了返回( long( OrderGetInteger( ORDER_POSITION_ID ) )); Sergey Gridnev 2014.08.27 06:10 #20 Mikalas:对不起,但你和我说的是 "不同 "的语言,或者说你在越界阅读。该挂单为ONE, 该 订单已部分开仓,该订单 仍在有效期内。当追踪 程序时,我得到了返回( long( OrderGetInteger( ORDER_POSITION_ID ) ));你观察这个部分执行的命令。它在哪里?在交易列表中还是在已执行的订单中? 123456789...21 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
也许这是因为ORDER_POSITION_ID是在订单执行后立即请求的,当时交易服务器还没有时间发送有关交易的信息。
阅读文章MetaTrader 5中的交易事件
我给了一个代码片段作为例子,但实际上获取ID的函数是这样的。
P/S Rosh,请不要让我去读文章。
相信我,我读了很多书,而事实上,我问了很多
问题,这是因为在文档中存在着很多模糊不清的地方。
我们需要更多的背景(代码)。这张票来自哪里,在执行这段代码之前,它等于什么?
如果订单被选中,你认为该票是什么?
而这张票是作为交易服务器接受订单的回应而从网上取走的。
如果订单被选中,你认为该票是什么?
而这张票是作为交易服务器接受订单的回应而从网上取走的。
你认为我们怎么知道你得到的是什么,以及它来自哪里?你显示的代码仍然没有说明票据的内容,没有说明请求是如何被执行的,你也没有使用,例如,调试打印或其他手段来确保变量不包含一个左旋的数字(对于初学者,那么request.action等于什么?)虫子可以在任何地方潜入。
谢谢你,我理解你的观点。
不客气。我也不明白你的意思。你已经被暗示了,请求的异步执行和票据的接收。直到你展示代码,如何以及何时处理这些东西,这个问题原来是针对心灵感应者的。
让我解释一下。
从上面的代码来看,一切都很明显。
哪张票并不重要(订单是单独下的)。仔细查看(按票据和仓位的订单符号开出的订单部分被此订单执行)。
除了打印之外,还有一步步执行的程序 和
当我到了
它返回 "0"。
问题不在于我是否能用MQL5编程(以及追踪程序),而在于
问题是,如果它在文件中说的是一件事,而在现实中出现的是另一件事(服务台照例是沉默的)。
或者我可能正确地解释了文件中关于ORDER_POSITION_ID 的描述
(阅读我的3个帖子)。
让我解释一下。
从上面的代码来看,一切都很明显。
哪张票并不重要(订单是单独下的)。仔细查看(按票据和仓位的订单符号开出的订单部分被此订单执行)。
除了打印之外,还有一步步执行的程序 和
当我到了
它返回 "0"。
问题不在于我是否能在MQL5中编程(以及追踪程序),而在于什么是在
问题是,如果它在文件中说的是一件事,而在现实中出现的是另一件事(服务台照例是沉默的)。
或者我可能正确地解释了文件中关于ORDER_POSITION_ID 的描述
(阅读我的3个帖子)。
又是25。重要的是,你的订单和你如何放置它。也许,例如(假设性的,因为一切都还是个谜),你有一个钟摆,那么位置ID可以是什么?
上面的代码没有任何意义。
又是25个。重要的是,你的订单和你如何放置它。也许你有,例如(假设性的,因为一切都还是个谜),一个钟摆,那么什么可以是位置的ID?
上面的代码没有任何意义。
对不起,但我们说的是 "不同 "的语言,或者说你读的是跨行。
该挂单为ONE, 该仓位已被这个 仍然有效 的订单 部分打开。
当追踪 程序时,我得到了返回( long( OrderGetInteger( ORDER_POSITION_ID ) ));
对不起,但你和我说的是 "不同 "的语言,或者说你在越界阅读。
该挂单为ONE, 该 订单已部分开仓,该订单 仍在有效期内。
当追踪 程序时,我得到了返回( long( OrderGetInteger( ORDER_POSITION_ID ) ));
你观察这个部分执行的命令。它在哪里?在交易列表中还是在已执行的订单中?