在MQL5中一起学习和写作 - 页 34 1...272829303132333435363738394041...46 新评论 Rashid Umarov 2011.05.19 15:04 #331 Yedelkin:像这样一个简单的脚本给我带来了奇怪的结果 也许有人能解释一下原因是什么?当数字254被明确地转换为Uchar时,它就会如期工作。 谢谢你的留言,让我们研究一下。 Yedelkin 2011.05.19 18:23 #332 Rosh: 谢谢你的留言,我们会解决这个问题。 与ushort的情况相同。void OnStart() { for(ushort i=32760;i<32775;i++) { switch(i>USHORT_MAX-2) { case true: Print(__FILE__," ",__FUNCTION__,": ",i,">(USHORT_MAX-2) - true"); break; case false: Print(__FILE__," ",__FUNCTION__,": ",i,">(USHORT_MAX-2) - false"); break; } } } AUser 2011.05.20 14:31 #333 你如何使它在条件发生时,音乐开始?嘿嘿,这是一个有点奇怪的mql的应用))但是看着画面等待合适的时机是很无聊的,而完全把所有的工作交给机器人多少有些不理智。所以我决定让音乐在我想要的时候播放,然后我自己来做))。我翻阅了参考书,也许是我找得太认真了还是什么,但我没有找到)。 Rashid Umarov 2011.05.20 14:34 #334 请看函数 PlaySound() AUser 2011.05.20 15:02 #335 Rosh: 请看函数 PlaySound() 非常感谢你)。 Yedelkin 2011.08.16 08:55 #336 关于跟踪重新报价的问题。 OrderSend()函数的描述说:"在下市场订单时,OrderSend()方法的成功完成并不总是意味着交易成功。你需要检查...的重码值"。也就是说,可以推断出,如果OrderSend()==true,我们仍然可以得到一个重新报价。好的。 但在"交易请求结果的结构"一节的例子("发送交易请求并处理结果")中,只有当OrderSend() ==false时才会检查关于重新报价的信息。 那么,在哪些情况下我们要检查重新报价:在OrderSend()返回的任何值,还是只在OrderSend()==false时检查? Документация по MQL5: Стандартные константы, перечисления и структуры / Структуры данных / Структура результата торгового запроса www.mql5.com Стандартные константы, перечисления и структуры / Структуры данных / Структура результата торгового запроса - Документация по MQL5 Rashid Umarov 2011.08.16 09:02 #337 Yedelkin:关于跟踪重新报价的问题。 OrderSend()函数 的描述说:"在下市场订单时,OrderSend()方法的成功完成并不总是意味着交易成功。 OrderSend()的成功执行只意味着请求被检查是否正确,并被放在队列中执行。但它的进一步命运是不被保证的 - 订单可能在其处理过程中被取消,例如,由于填充政策的原因。 但一般来说,如果有一个重新报价,OrderSend()显然已经失败。 Yedelkin 2011.08.16 09:09 #338 Rosh:成功执行OrderSend()仅意味着请求已被检查为正确并排队执行。但它的进一步命运是不被保证的 - 订单可能在其处理过程中被取消,例如,由于填充政策的原因。但一般来说,如果有一个重新报价,OrderSend()显然已经失败。 换句话说,重新报价 意味着该请求最初未能通过正确性检查? Rashid Umarov 2011.08.16 09:57 #339 Yedelkin: 换句话说,重新报价意味着该请求最初未能通过正确性检查?嗯,是的,请求中所述的价格不适合,你被提示考虑新的价格,这些价格可以从MqlTradeResult 服务器的响应结构中获得。struct MqlTradeResult { uint retcode; // Код результата операции ulong deal; // Тикет сделки, если она совершена ulong order; // Тикет ордера, если он выставлен double volume; // Объем сделки, подтверждённый брокером double price; // Цена в сделке, подтверждённая брокером double bid; // Текущая рыночная цена предложения (цены реквота) double ask; // Текущая рыночная цена спроса (цены реквота) string comment; // Комментарий брокера к операции (по умолчанию заполняется расшифровкой) }; Yedelkin 2011.08.16 10:26 #340 Rosh: 嗯,是的,请求中所述的价格不匹配,提示你考虑到新的价格,这可以从MqlTradeResult 服务器的响应结构中获得。 好的! 可能,我说得太多了,但这里有另一个问题。在发送下市价单的请求(开仓)之前,我将交易票据重置为零,即我使 result.deal=0。我们能否期望服务器在MqlTradeResult 响应结构中返回一个空的交易票据,但稍后,交易将被执行,头寸将被打开?还是说服务器返回的空交易单保证了该仓位无法被打开,并且不会根据这个请求进一步打开? 1...272829303132333435363738394041...46 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
像这样一个简单的脚本给我带来了奇怪的结果
也许有人能解释一下原因是什么?当数字254被明确地转换为Uchar时,它就会如期工作。
谢谢你的留言,我们会解决这个问题。
与ushort的情况相同。
你如何使它在条件发生时,音乐开始?嘿嘿,这是一个有点奇怪的mql的应用))但是看着画面等待合适的时机是很无聊的,而完全把所有的工作交给机器人多少有些不理智。所以我决定让音乐在我想要的时候播放,然后我自己来做))。
我翻阅了参考书,也许是我找得太认真了还是什么,但我没有找到)。
请看函数 PlaySound()
关于跟踪重新报价的问题。
OrderSend()函数的描述说:"在下市场订单时,OrderSend()方法的成功完成并不总是意味着交易成功。你需要检查...的重码值"。也就是说,可以推断出,如果OrderSend()==true,我们仍然可以得到一个重新报价。好的。
但在"交易请求结果的结构"一节的例子("发送交易请求并处理结果")中,只有当OrderSend() ==false时才会检查关于重新报价的信息。
那么,在哪些情况下我们要检查重新报价:在OrderSend()返回的任何值,还是只在OrderSend()==false时检查?
关于跟踪重新报价的问题。
OrderSend()函数 的描述说:"在下市场订单时,OrderSend()方法的成功完成并不总是意味着交易成功。
OrderSend()的成功执行只意味着请求被检查是否正确,并被放在队列中执行。但它的进一步命运是不被保证的 - 订单可能在其处理过程中被取消,例如,由于填充政策的原因。
但一般来说,如果有一个重新报价,OrderSend()显然已经失败。
成功执行OrderSend()仅意味着请求已被检查为正确并排队执行。但它的进一步命运是不被保证的 - 订单可能在其处理过程中被取消,例如,由于填充政策的原因。
但一般来说,如果有一个重新报价,OrderSend()显然已经失败。
换句话说,重新报价意味着该请求最初未能通过正确性检查?
嗯,是的,请求中所述的价格不适合,你被提示考虑新的价格,这些价格可以从MqlTradeResult 服务器的响应结构中获得。
嗯,是的,请求中所述的价格不匹配,提示你考虑到新的价格,这可以从MqlTradeResult 服务器的响应结构中获得。
好的!
可能,我说得太多了,但这里有另一个问题。在发送下市价单的请求(开仓)之前,我将交易票据重置为零,即我使 result.deal=0。我们能否期望服务器在MqlTradeResult 响应结构中返回一个空的交易票据,但稍后,交易将被执行,头寸将被打开?还是说服务器返回的空交易单保证了该仓位无法被打开,并且不会根据这个请求进一步打开?