程序库: MT4Orders - 页 28 1...212223242526272829303132333435...95 新评论 Vitaly Muzichenko 2018.12.12 12:09 #271 Ilya Malev:为什么要看这个主题,我已经想明白了。我在几个 EA 中都能完美运行,程序库没有任何问题 Ilya Malev 2018.12.12 12:13 #272 fxsaber:有很多情况都是如此。每个网格订单都会产生几十个仓位,而每个仓位,通过相同的 TP 平仓,也会产生几十个平仓仓位。1) 供您参考的是,MT4 中的部分仓位也不是这样生成的(至少在普通经纪商中是这样),而只是带有 "from#"和 "to#"注释。还有其他说法吗? 2)事实上,是您的库在这个特殊时刻失灵了,因为正如我已经说过的,库不是为理想世界编写的,而是为我们这个罪恶、不完美和悲惨的世界编写的。尽管我完全理解你的立场,而且我自己可能也不会写这样的代码。如果我写了,我也不会在这个问题上与你争论,而是会默默地重做。但问题是,这段代码不是我写的:)好吧,谢谢你的对话,我去想一想 fxsaber 2018.12.12 12:19 #273 Ilya Malev:1) 供您参考的是,MT4 中的部分头寸也不是这样生成的(至少在普通经纪商中是这样),而只是带有 "from#"和 "to#"注释。您还有其他论据吗? 任何将实战交易历史作为决策依据的系统都是错误的。虚拟交易历史是个例外,因为那里的执行是完美的。但那是另一回事了。 2) 事实上,是你的图书馆在这个特殊时刻经不起 "战斗使用",因为正如我已经说过的,图书馆不是为理想世界编写的,而是为我们这个罪恶、不完美和悲惨的世界编写的。尽管我完全理解你的立场,而且我自己可能也不会写这样的代码。如果我写了,我也不会在这个问题上与你争论,而是会默默地重新做一遍。但问题是,这段代码不是我写的:)好的,感谢您的对话,我会继续思考的不允许 MT4 代码编写者接近 MT5,尤其是库。我很高兴您不是其中一员。 事实上,错误的 MT4-advisor 可能无法被库消化。写得好的 MT4-advisor--没问题。 ZY 您只需学会不要为了 "方便 "而添加 SELECT_BY_TICKET。 Andrey Khatimlianskii 2018.12.12 12:51 #274 我遇到过在不使用 SelectByTicket 的情况下更改机票的问题。我是这样解决的 #ifdef __MQL5__ long ticket = OrderTicketOpen(); ticket = HistoryDealGetInteger( ticket, DEAL_ORDER ); #endif fxsaber 2018.12.12 12:59 #275 Andrey Khatimlianskii:我遇到过在不使用 SelectByTicket 的情况下更改机票的问题。我是这样解决的请说明。 Andrey Khatimlianskii 2018.12.12 13:11 #276 fxsaber:请澄清一下。我们当时在决策过程中讨论过这个问题。 订单上有一些信息。在设置新订单时,有必要分析历史上所有订单的这些数据。 fxsaber 2018.12.12 13:26 #277 Andrey Khatimlianskii:在决策过程中,我们讨论过这个问题。订单上有一些信息。在建立新订单时,有必要分析历史上所有订单的这些数据。明白了。我们需要了解仓位是如何被浪费掉的。 Edgar Akhmadeev 2018.12.13 23:23 #278 OrderSend 返回ERR_TRADE_SEND_FAILED,而不是TRADE_RETCODE_INVALID_PRICE: 2018.12.14 01:00:18.479 2016.02.11 15:40:40 failed buy stop 0.08 EURUSD.m at 1.13196 [Invalid price] 2018.12.14 01:00:18.479 2016.02.11 15:40:40 Alert: #4756, Не удалось отправить торговый запрос: CommonExpert.mqh|2438 | OrderSend buy stop 0.08 @1.13196 通常在我的编程错误中,ERR_TRADE_SEND_FAILED 表示传递无效(已关闭或为空)票据。这样我就无法通过编程来区分。 fxsaber 2018.12.13 23:39 #279 Edgar:OrderSend 返回ERR_TRADE_SEND_FAILED,而不是 TRADE_RETCODE_INVALID_PRICE:通常在我的编程错误中,ERR_TRADE_SEND_FAILED 表示传递无效(已关闭或无效)票据。这样我就无法通过编程来区分了。#include <MT4Orders.mqh> #define Bid SymbolInfoDouble(_Symbol, SYMBOL_BID) void OnStart() { if (OrderSend(_Symbol, OP_SELLLIMIT, 1, Bid - 100 * _Point, 0, 0, 0) < 0) { Print(GetLastError()); // err_trade_send_failed Print(MT4ORDERS::LastTradeResult.retcode); // trade_retcode_invalid_price } } 完整的脚本执行日志 Request.action = TRADE_ACTION_PENDING (5) Request.magic = 0 Request.order = 0 Request.symbol = EURUSD Request.volume = 1.0 Request.price = 1.13473 Request.stoplimit = 0.0 Request.sl = 0.0 Request.tp = 0.0 Request.deviation = 0 Request.type = ORDER_TYPE_SELL_LIMIT (3) Request.type_filling = ORDER_FILLING_FOK (0) Request.type_time = ORDER_TIME_GTC (0) Request.expiration = 1970.01.01 00:00:00 Request.comment = Request.position = 0 Request.position_by = 0 Result.retcode = 10015 Result.deal = 0 Result.order = 0 Result.volume = 0.0 Result.price = 0.0 Result.bid = 0.0 Result.ask = 0.0 Result.comment = Invalid price 0.082 ms Result.request_id = 0 Result.retcode_external = 0 4756 10015 Edgar Akhmadeev 2018.12.14 02:22 #280 谢谢 1...212223242526272829303132333435...95 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
为什么要看这个主题,我已经想明白了。
我在几个 EA 中都能完美运行,程序库没有任何问题
有很多情况都是如此。每个网格订单都会产生几十个仓位,而每个仓位,通过相同的 TP 平仓,也会产生几十个平仓仓位。
1) 供您参考的是,MT4 中的部分仓位也不是这样生成的(至少在普通经纪商中是这样),而只是带有 "from#"和 "to#"注释。还有其他说法吗?
2)事实上,是您的库在这个特殊时刻失灵了,因为正如我已经说过的,库不是为理想世界编写的,而是为我们这个罪恶、不完美和悲惨的世界编写的。尽管我完全理解你的立场,而且我自己可能也不会写这样的代码。如果我写了,我也不会在这个问题上与你争论,而是会默默地重做。但问题是,这段代码不是我写的:)好吧,谢谢你的对话,我去想一想
1) 供您参考的是,MT4 中的部分头寸也不是这样生成的(至少在普通经纪商中是这样),而只是带有 "from#"和 "to#"注释。您还有其他论据吗?
任何将实战交易历史作为决策依据的系统都是错误的。虚拟交易历史是个例外,因为那里的执行是完美的。但那是另一回事了。
2) 事实上,是你的图书馆在这个特殊时刻经不起 "战斗使用",因为正如我已经说过的,图书馆不是为理想世界编写的,而是为我们这个罪恶、不完美和悲惨的世界编写的。尽管我完全理解你的立场,而且我自己可能也不会写这样的代码。如果我写了,我也不会在这个问题上与你争论,而是会默默地重新做一遍。但问题是,这段代码不是我写的:)好的,感谢您的对话,我会继续思考的
不允许 MT4 代码编写者接近 MT5,尤其是库。我很高兴您不是其中一员。
事实上,错误的 MT4-advisor 可能无法被库消化。写得好的 MT4-advisor--没问题。
ZY 您只需学会不要为了 "方便 "而添加 SELECT_BY_TICKET。
我遇到过在不使用 SelectByTicket 的情况下更改机票的问题。我是这样解决的
我遇到过在不使用 SelectByTicket 的情况下更改机票的问题。我是这样解决的
请说明。
请澄清一下。
我们当时在决策过程中讨论过这个问题。
订单上有一些信息。在设置新订单时,有必要分析历史上所有订单的这些数据。
在决策过程中,我们讨论过这个问题。
订单上有一些信息。在建立新订单时,有必要分析历史上所有订单的这些数据。
明白了。我们需要了解仓位是如何被浪费掉的。
OrderSend 返回ERR_TRADE_SEND_FAILED,而不是TRADE_RETCODE_INVALID_PRICE:
通常在我的编程错误中,ERR_TRADE_SEND_FAILED 表示传递无效(已关闭或为空)票据。这样我就无法通过编程来区分。
OrderSend 返回ERR_TRADE_SEND_FAILED,而不是 TRADE_RETCODE_INVALID_PRICE:
通常在我的编程错误中,ERR_TRADE_SEND_FAILED 表示传递无效(已关闭或无效)票据。这样我就无法通过编程来区分了。
完整的脚本执行日志