程序库: MT4Orders - 页 89 1...8283848586878889909192939495 新评论 fxsaber 2025.04.15 10:35 #881 hini #: MT4ORDERS_LIBRARY 存在问题。异步 OrderCloseAsync 函数似乎无法按预期运行。 关闭订单的速度很慢,同步 OrderClose 函数也是如此。如果禁用 MT4ORDERS_LIBRARY(注释),关闭多个订单的速度会显著提高。 请为您的话提供论据。 #define MT4ORDERS_LIBRARY // library-mode: #import "MT4Orders.ex5". #include <MT4Orders.mqh> //https://www.mql5.com/zh/code/16006 void OnStart() { for (uint i = OrdersTotal(); (bool)i--;) if (OrderSelect(i, SELECT_BY_POS)) OrderCloseAsync(OrderTicket(), OrderLots(), OrderClosePrice(), 0); } 结果。 2025.04.15 13:32:39.830 Scripts script Test7 (AUDUSD,M1) loaded successfully 2025.04.15 13:32:39.879 Trades '160568384': market buy 2.61 AUDUSD, close #2326299400 卖出 2.61 澳元兑美元 0.63547 2025.04.15 13:32:39.879 Trades '160568384': market buy 2.61 AUDUSD, close #2326299399 卖出 2.61 澳元兑美元 0.63546 2025.04.15 13:32:39.879 Trades '160568384': market buy 2.61 AUDUSD, close #2326299398 卖出 2.61 澳元兑美元 0.63547 2025.04.15 13:32:39.879 Scripts script Test7 (AUDUSD,M1) removed 2025.04.15 13:32:39.916 Trades '160568384': accepted market buy 2.61 AUDUSD, close #2326299400 卖出 2.61 澳元兑美元 0.63547 2025.04.15 13:32:39.917 Trades '160568384': accepted market buy 2.61 AUDUSD, close #2326299399 卖出 2.61 澳元兑美元 0.63546 2025.04.15 13:32:39.918 Trades '160568384': accepted market buy 2.61 AUDUSD, close #2326299398 卖出 2.61 澳元兑美元 0.63547 2025.04.15 13:32:39.977 Trades '160568384': deal #2314930857 以 0.63553 的价格买入 2.61 澳元兑美元,成交(基于订单 #2326299404) 2025.04.15 13:32:39.977 Trades '160568384': order #2326299404 以 0.63553 的价格买入 2.61 / 2.61 澳元兑美元,耗时 98.354 毫秒 2025.04.15 13:32:39.978 Trades '160568384': deal #2314930858 以 0.63553 的价格买入 2.61 澳元兑美元,成交(基于订单 #2326299403) 2025.04.15 13:32:39.978 Trades '160568384': order #2326299403 以 0.63553 的价格买入 2.61 / 2.61 澳元兑美元,耗时 99.783 毫秒 2025.04.15 13:32:39.980 Trades '160568384': deal #2314930859 以 0.63553 的价格买入 2.61 澳元兑美元,成交(基于订单 #2326299405) 2025.04.15 13:32:39.982 Trades '160568384': order #2326299405 以 0.63553 的价格买入 2.61 / 2.61 澳元兑美元,耗时 103.313 毫秒 指定函数正常工作。 fxsaber 2025.04.15 10:36 #882 hini #: 他们为什么要删除订单? "就这么发生了" hini 2025.04.15 11:49 #883 fxsaber #:请为你所说的话提供论据。结果指定功能正常运行。 对不起,我可能搞错了。 hini 2025.04.28 03:05 #884 (XAUUSDcent,M1) Before ::HistoryOrderSelect(Result.order): (XAUUSDcent,M1) MT4ORDERS::OrderSendBug = 27180 (XAUUSDcent,M1) Result.deal = 0 (XAUUSDcent,M1) (XAUUSDcent,M1) Line = 1822 (XAUUSDcent,M1) Before MT4ORDERS::HistoryDealSelect(Result): (XAUUSDcent,M1) MT4ORDERS::OrderSendBug = 27180 (XAUUSDcent,M1) Result.deal = 0 (XAUUSDcent,M1) (XAUUSDcent,M1) Alert: OrderSend(42689505) - BUG! (XAUUSDcent,M1) Alert: Please send the logs to the coauthor - https://www.mql5.com/en/users/fxsaber (XAUUSDcent,M1) Alert: C:\Program Files\Mohicans Markets MT5 Terminal\MQL5\Logs\20250428.log (XAUUSDcent,M1) MT4Orders.mqh (XAUUSDcent,M1) Version = 2025.04.09 (XAUUSDcent,M1) Compiler = 4885 X64 Regular Release. (XAUUSDcent,M1) __DATE__ = 2025.04.27 00:00:00 (XAUUSDcent,M1) ::AccountInfoString(ACCOUNT_SERVER) = MohicansMarkets-Live (XAUUSDcent,M1) (ENUM_ACCOUNT_TRADE_MODE)::AccountInfoInteger(ACCOUNT_TRADE_MODE) = ACCOUNT_TRADE_MODE_REAL (2) (XAUUSDcent,M1) (bool)::TerminalInfoInteger(TERMINAL_CONNECTED) = true (XAUUSDcent,M1) ::TerminalInfoInteger(TERMINAL_PING_LAST) = 224789 (XAUUSDcent,M1) ::TerminalInfoDouble(TERMINAL_RETRANSMISSION) = 0.08792420146452849 (XAUUSDcent,M1) ::TerminalInfoInteger(TERMINAL_BUILD) = 4885 (XAUUSDcent,M1) (bool)::TerminalInfoInteger(TERMINAL_X64) = true (XAUUSDcent,M1) ::TerminalInfoString(TERMINAL_CPU_NAME) = Intel Xeon Gold 6133 @ 2.50 GHz (XAUUSDcent,M1) ::TerminalInfoInteger(TERMINAL_CPU_CORES) = 2 (XAUUSDcent,M1) TerminalInfoString(TERMINAL_CPU_ARCHITECTURE) = AVX2 + FMA3 (XAUUSDcent,M1) (bool)::TerminalInfoInteger(TERMINAL_VPS) = false (XAUUSDcent,M1) (ENUM_PROGRAM_TYPE)::MQLInfoInteger(MQL_PROGRAM_TYPE) = PROGRAM_EXPERT (2) (XAUUSDcent,M1) ::TimeCurrent() = 2025.04.28 05:27:28 (XAUUSDcent,M1) ::TimeTradeServer() = 2025.04.28 05:27:29 (XAUUSDcent,M1) MT4ORDERS::TimeToString(MT4ORDERS::GetTimeCurrent()) = 2025.04.28 05:27:28.531 (XAUUSDcent,M1) MT4ORDERS::TimeToString(PrevTimeCurrent) = 2025.04.28 05:27:28.531 (XAUUSDcent,M1) PrevTick = Symb = XAUUSDcent time = 2025.04.28 05:27:28.531 bid = 3275.34 ask = 3275.63 last = 0.00 volume = 0 1030 TICK_FLAG_BID TICK_FLAG_ASK FLAG_UNKNOWN (1024) (XAUUSDcent,M1) CurrentTick = ::SymbolInfoTick(Symb, Tick) = true Symb = XAUUSDcent time = 2025.04.28 05:27:28.531 bid = 3275.34 ask = 3275.63 last = 0.00 volume = 0 1030 TICK_FLAG_BID TICK_FLAG_ASK FLAG_UNKNOWN (1024) (XAUUSDcent,M1) ::SymbolInfoString(Request.symbol, SYMBOL_PATH) = Metal_Cent\XAUUSDcent (XAUUSDcent,M1) ::SymbolInfoString(Request.symbol, SYMBOL_DESCRIPTION) = Gold vs US Dollar (XAUUSDcent,M1) ::PositionsTotal() = 6 (XAUUSDcent,M1) ::OrdersTotal() = 0 (XAUUSDcent,M1) ::HistorySelect(0, INT_MAX) = true (XAUUSDcent,M1) ::HistoryDealsTotal() = 184 (XAUUSDcent,M1) ::HistoryOrdersTotal() = 182 (XAUUSDcent,M1) ::HistoryDealGetTicket(::HistoryDealsTotal() - 1) = 39031651 (XAUUSDcent,M1) DEAL_ORDER = 42689505 (XAUUSDcent,M1) DEAL_TIME_MSC = 2025.04.28 05:27:28.763 (XAUUSDcent,M1) ::HistoryOrderGetTicket(::HistoryOrdersTotal() - 1) = 42689505 (XAUUSDcent,M1) ORDER_TIME_DONE_MSC = 2025.04.28 05:27:28.763 (XAUUSDcent,M1) MT4ORDERS::GetFirstOrderTicket() = 42588472 (XAUUSDcent,M1) ::TerminalInfoInteger(TERMINAL_MEMORY_AVAILABLE) = 3377 (XAUUSDcent,M1) ::TerminalInfoInteger(TERMINAL_MEMORY_PHYSICAL) = 2047 (XAUUSDcent,M1) ::TerminalInfoInteger(TERMINAL_MEMORY_TOTAL) = 4094 (XAUUSDcent,M1) ::TerminalInfoInteger(TERMINAL_MEMORY_USED) = 717 (XAUUSDcent,M1) ::MQLInfoInteger(MQL_HANDLES_USED) = 109 (XAUUSDcent,M1) ::MQLInfoInteger(MQL_MEMORY_LIMIT) = 8388608 (XAUUSDcent,M1) ::MQLInfoInteger(MQL_MEMORY_USED) = 4 (XAUUSDcent,M1) MT4ORDERS::IsHedging = true (XAUUSDcent,M1) Res = true (XAUUSDcent,M1) MT4ORDERS::OrderSendBug = 27180 (XAUUSDcent,M1) Request.action = TRADE_ACTION_DEAL (1) (XAUUSDcent,M1) Request.magic = 228 (XAUUSDcent,M1) Request.order = 0 (XAUUSDcent,M1) Request.symbol = XAUUSDcent (XAUUSDcent,M1) Request.volume = 0.01 (XAUUSDcent,M1) Request.price = 3275.63 (XAUUSDcent,M1) Request.stoplimit = 0.0 (XAUUSDcent,M1) Request.sl = 0.0 (XAUUSDcent,M1) Request.tp = 0.0 (XAUUSDcent,M1) Request.deviation = 99 (XAUUSDcent,M1) Request.type = ORDER_TYPE_BUY (0) (XAUUSDcent,M1) Request.type_filling = ORDER_FILLING_FOK (0) (XAUUSDcent,M1) Request.type_time = ORDER_TIME_GTC (0) (XAUUSDcent,M1) Request.expiration = 1970.01.01 00:00:00 (XAUUSDcent,M1) Request.comment = XAUUSDcent 首单 组 6 (XAUUSDcent,M1) Request.position = 0 (XAUUSDcent,M1) Request.position_by = 0 (XAUUSDcent,M1) Result.retcode = 10009 (XAUUSDcent,M1) Result.deal = 39031651 (XAUUSDcent,M1) Result.order = 42689505 (XAUUSDcent,M1) Result.volume = 0.01 (XAUUSDcent,M1) Result.price = 3275.63 (XAUUSDcent,M1) Result.bid = 0.0 (XAUUSDcent,M1) Result.ask = 0.0 (XAUUSDcent,M1) Result.comment = Request executed 253.856 + 11.577 (27180) ms. (XAUUSDcent,M1) Result.request_id = 3625362990 (XAUUSDcent,M1) Result.retcode_external = 0 (XAUUSDcent,M1) MT4ORDERS::ByPass: Amount = 0/22912 = 0.00%, Time(mcs) = 0/202546 = 0.00%, TimeAvg = 8 mcs, MaxInterval = 30019 mcs., Bugs = 1 (XAUUSDcent,M1) MT4ORDERS::OrderSend_MaxPause = 1000000 fxsaber 2025.04.28 07:19 #885 hini #: https://www.mql5.com/ru/forum/93352/page13#comment_5500502 Pegaso 2025.05.31 14:16 #886 您好、 过去,我曾成功使用这个漂亮而强大的库将 MT4项目 转换为 MT5。今天,在重新打开同一个项目后,我发现了一些编译错误。我尝试更新英文版和俄文版的 "MT4Orders.mqh "文件。我还创建了一个新的空项目,其中只有 "MT4Orders "文件,但编译错误仍未解决。我到底做错了什么?谢谢 附加的文件: MT4Orders.png 127 kb Maxim Kuznetsov 2025.06.02 09:31 #887 在最新版本的终端中: parameter convertion type 'const int' to 'const uint &' is not allowed MT4Orders.mqh 1866 44 long MT4HISTORY::operator[](const uint&) MT4Orders.mqh 768 8 parameter convertion type 'const long' to 'const ulong &' is not allowed MT4Orders.mqh 1867 37 bool MT4ORDERS::HistorySelectDeal(const ulong&) MT4Orders.mqh 828 15 现在,签署/未签署类型不能相互转换,MT4Orders 无法收集 Debugging my very first File Path for saving HELP!! Trailing Stop issues Vitaly Muzichenko 2025.06.03 11:06 #888 事实上,这些错误 fxsaber 2025.06.03 17:38 #889 // 更改列表: // 03.06.2025 // 修复:考虑到 MQL5_b5050 的特殊性。 fxsaber 2025.06.03 17:39 #890 Pegaso #:我尝试更新英文版 和俄文版 的 "MT4Orders.mqh "文件。 请更新。 1...8283848586878889909192939495 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
MT4ORDERS_LIBRARY 存在问题。异步 OrderCloseAsync 函数似乎无法按预期运行。 关闭订单的速度很慢,同步 OrderClose 函数也是如此。如果禁用 MT4ORDERS_LIBRARY(注释),关闭多个订单的速度会显著提高。
请为您的话提供论据。
结果。
指定函数正常工作。
他们为什么要删除订单?
"就这么发生了"
请为你所说的话提供论据。
结果
指定功能正常运行。
https://www.mql5.com/ru/forum/93352/page13#comment_5500502
在最新版本的终端中:
parameter convertion type 'const int' to 'const uint &' is not allowed MT4Orders.mqh 1866 44
long MT4HISTORY::operator[](const uint&) MT4Orders.mqh 768 8
parameter convertion type 'const long' to 'const ulong &' is not allowed MT4Orders.mqh 1867 37
bool MT4ORDERS::HistorySelectDeal(const ulong&) MT4Orders.mqh 828 15
现在,签署/未签署类型不能相互转换,MT4Orders 无法收集
事实上,这些错误
请更新。