程序库: MT4Orders - 页 70 1...636465666768697071727374757677...95 新评论 fxsaber 2022.01.14 02:53 #691 真实账户库的技术压力测试数据。 一个终端 MT5 b2958。对冲。 16 个图表,每个图表运行一个交易顾问。 每个智能交易系统平均包含 10 多个独立 TS(逻辑和 Magic)。 通过 MT4Orders+ByPass+Virtual+Snapshot 进行交易。 通过 CopyTicks+SymbolInfoTick 获取价格数据。 非价格数据 - 通过 MQL 生成日历。 160 多个 TC 并行工作。每个 TC 都有自己的仓位和订单。 订单总数 + 仓位总数 > 300。 Rejects、partial fills 和 CloseBy 的组合。 TERMINAL_MEMORY_USED = 4 Gb。主要消耗是每次运行 EX5 时终端内置的交易历史记录自动缓存:HistoryDealsTotal +HistoryOrdersTotal > 100K。 35% 的重定向。 每日交易额 > 5000 万美元。 每日历史交易总额 > 1200,历史订单总额> 1700。 所有终端设置最小化,服务窗口关闭,图表和终端最小化。 正常模式下 CPU 约为 1%。在活跃市场上,CPU 可飙升至百分之几十。 交易 API - 仅 MT4Style。 运行时直接热插拔 EX5(更新)。 平移 3 毫秒。 所有交易订单均为同步订单(非 OrderSendAsync)。不使用 OnTrade 函数。 在此模式下,库处理所有 MT5 非同步。MT4 逻辑未被破坏。 在处理历史记录时发现了性能问题,这也是更新程序库的原因。 热插拔 EX5 后,同步数据如下。 MT4ORDERS::ByPass: Amount = 486/2336655 = 0.02%, Time(mcs) = 43175/51577570 = 0.08%, TimeAvg = 22 mcs, MaxInterval = 225711 mcs., Bugs = 0 不到 0.1% 的运行时间用于 MT5 同步。平均时间为 22 微秒。最长时间为 225 毫秒。在 2.5 小时的工作时间中,有 51 秒用于同步器调用(0.5%)。 该库的可靠性相当高。值得推荐。 fxsaber 2022.01.19 11:34 #692 fxsaber #:图书馆的技术压力测试数据在战斗账户上。 160 多个 TS 正在并行工作。每个 TS 都有自己的位置和订单。 订单总数 + 仓位总数 > 300。 在此模式下,程序库可应对 MT5 的所有不同步情况。MT4 逻辑没有中断。 该库的可靠性相当高。值得推荐。 该程序库可以处理如此极端的负载,但也存在困难。必须奇迹般地想出办法来减轻极端负荷。 Александр Кувакин 2022.02.02 18:25 #693 @fxsaber 请给我建议,我得到了这个日志: KE 0 15:00:03.865 MACD3 (MAGN,H1) Line = 1558 EG 0 15:00:03.865 MACD3 (MAGN,H1) ::OrderSelect(Result.order) = false QR 0 15:00:03.865 MACD3 (MAGN,H1) OD 0 15:00:03.865 MACD3 (MAGN,H1) Alert: MT4ORDERS - not Sync with History! RN 0 15:00:03.865 MACD3 (MAGN,H1) Alert: Please send the logs to the coauthor - https://www.mql5.com/en/users/fxsaber IO 0 15:00:03.865 MACD3 (MAGN,H1) Alert: C:\Program Files\Открытие Брокер\MQL5\Logs\20220202.log GP 0 15:00:03.896 MACD3 (MAGN,H1) MT4Orders.mqh PL 0 15:00:03.896 MACD3 (MAGN,H1) Version = 2021.06.01 KJ 0 15:00:03.896 MACD3 (MAGN,H1) Compiler = 3180 NP 0 15:00:03.896 MACD3 (MAGN,H1) 2022.02.01 = 2022.02.01 00:00:00 LD 0 15:00:03.896 MACD3 (MAGN,H1) ::AccountInfoString(ACCOUNT_SERVER) = Open-Broker QR 0 15:00:03.896 MACD3 (MAGN,H1) (ENUM_ACCOUNT_TRADE_MODE)::AccountInfoInteger(ACCOUNT_TRADE_MODE) = ACCOUNT_TRADE_MODE_REAL (2) FK 0 15:00:03.896 MACD3 (MAGN,H1) (bool)::TerminalInfoInteger(TERMINAL_CONNECTED) = true FP 0 15:00:03.896 MACD3 (MAGN,H1) ::TerminalInfoInteger(TERMINAL_PING_LAST) = 2630 HG 0 15:00:03.896 MACD3 (MAGN,H1) ::TerminalInfoDouble(TERMINAL_RETRANSMISSION) = 0.0 FJ 0 15:00:03.896 MACD3 (MAGN,H1) ::TerminalInfoInteger(TERMINAL_BUILD) = 3180 OQ 0 15:00:03.896 MACD3 (MAGN,H1) (bool)::TerminalInfoInteger(TERMINAL_X64) = true CH 0 15:00:03.896 MACD3 (MAGN,H1) (bool)::TerminalInfoInteger(TERMINAL_VPS) = false EO 0 15:00:03.896 MACD3 (MAGN,H1) (ENUM_PROGRAM_TYPE)::MQLInfoInteger(MQL_PROGRAM_TYPE) = PROGRAM_EXPERT (2) FN 0 15:00:03.896 MACD3 (MAGN,H1) ::TimeCurrent() = 2022.02.02 15:00:03 NG 0 15:00:03.896 MACD3 (MAGN,H1) ::TimeTradeServer() = 2022.02.02 15:00:03 OD 0 15:00:03.896 MACD3 (MAGN,H1) MT4ORDERS::TimeToString(MT4ORDERS::GetTimeCurrent()) = 2022.02.02 15:00:03.742 NO 0 15:00:03.896 MACD3 (MAGN,H1) MT4ORDERS::TimeToString(PrevTimeCurrent) = 2022.02.02 15:00:02.827 FS 0 15:00:03.896 MACD3 (MAGN,H1) PrevTick = Symb = MAGN time = 2022.02.02 15:00:02.827 bid = 60.785 ask = 60.825 last = 60.790 volume = 1 4 TICK_FLAG_ASK PL 0 15:00:03.896 MACD3 (MAGN,H1) CurrentTick = ::SymbolInfoTick(Symb,Tick) = true Symb = MAGN time = 2022.02.02 15:00:03.434 bid = 60.790 ask = 60.825 last = 60.825 volume = 82 0 NF 0 15:00:03.896 MACD3 (MAGN,H1) ::SymbolInfoString(Request.symbol,SYMBOL_PATH) = MOEX\Securities\TQBR\MAGN NJ 0 15:00:03.896 MACD3 (MAGN,H1) ::SymbolInfoString(Request.symbol,SYMBOL_DESCRIPTION) = "马格尼托哥尔斯克.met.komb" ОАО ао KG 0 15:00:03.896 MACD3 (MAGN,H1) ::PositionsTotal() = 4 JS 0 15:00:03.896 MACD3 (MAGN,H1) ::OrdersTotal() = 0 EE 0 15:00:03.896 MACD3 (MAGN,H1) ::HistorySelect(0,INT_MAX) = true CQ 0 15:00:03.896 MACD3 (MAGN,H1) ::HistoryDealsTotal() = 852 KG 0 15:00:03.896 MACD3 (MAGN,H1) ::HistoryOrdersTotal() = 722 CQ 0 15:00:03.896 MACD3 (MAGN,H1) ::HistoryDealGetTicket(::HistoryDealsTotal()-1) = 108399547 MH 0 15:00:03.896 MACD3 (MAGN,H1) DEAL_ORDER = 195416657 NM 0 15:00:03.896 MACD3 (MAGN,H1) DEAL_TIME_MSC = 2022.02.02 15:00:02.848 QE 0 15:00:03.896 MACD3 (MAGN,H1) ::HistoryOrderGetTicket(::HistoryOrdersTotal()-1) = 195416657 QI 0 15:00:03.896 MACD3 (MAGN,H1) ORDER_TIME_DONE_MSC = 2022.02.02 15:00:02.848 OL 0 15:00:03.896 MACD3 (MAGN,H1) ::TerminalInfoInteger(TERMINAL_MEMORY_AVAILABLE) = 7489 GD 0 15:00:03.896 MACD3 (MAGN,H1) ::TerminalInfoInteger(TERMINAL_MEMORY_PHYSICAL) = 4095 RD 0 15:00:03.896 MACD3 (MAGN,H1) ::TerminalInfoInteger(TERMINAL_MEMORY_TOTAL) = 8190 QL 0 15:00:03.896 MACD3 (MAGN,H1) ::TerminalInfoInteger(TERMINAL_MEMORY_USED) = 701 HI 0 15:00:03.896 MACD3 (MAGN,H1) ::MQLInfoInteger(MQL_MEMORY_LIMIT) = 8388608 CJ 0 15:00:03.896 MACD3 (MAGN,H1) ::MQLInfoInteger(MQL_MEMORY_USED) = 2 MN 0 15:00:03.896 MACD3 (MAGN,H1) MT4ORDERS::IsHedging = false MF 0 15:00:03.896 MACD3 (MAGN,H1) Res = false PO 0 15:00:03.896 MACD3 (MAGN,H1) MT4ORDERS::OrderSendBug = 12527100 NH 0 15:00:03.896 MACD3 (MAGN,H1) Request.action = TRADE_ACTION_PENDING (5) LO 0 15:00:03.896 MACD3 (MAGN,H1) Request.magic = 101 CF 0 15:00:03.896 MACD3 (MAGN,H1) Request.order = 0 FQ 0 15:00:03.896 MACD3 (MAGN,H1) Request.symbol = MAGN QO 0 15:00:03.896 MACD3 (MAGN,H1) Request.volume = 82.0 KI 0 15:00:03.896 MACD3 (MAGN,H1) Request.price = 60.924999999999997 FR 0 15:00:03.896 MACD3 (MAGN,H1) Request.stoplimit = 0.0 EF 0 15:00:03.896 MACD3 (MAGN,H1) Request.sl = 57.439999999999998 QL 0 15:00:03.896 MACD3 (MAGN,H1) Request.tp = 0.0 QI 0 15:00:03.896 MACD3 (MAGN,H1) Request.deviation = 10 DM 0 15:00:03.896 MACD3 (MAGN,H1) Request.type = ORDER_TYPE_BUY_LIMIT (2) ID 0 15:00:03.896 MACD3 (MAGN,H1) Request.type_filling = ORDER_FILLING_RETURN (2) LD 0 15:00:03.896 MACD3 (MAGN,H1) Request.type_time = ORDER_TIME_DAY (1) OQ 0 15:00:03.896 MACD3 (MAGN,H1) Request.expiration = 1970.01.01 00:00:00 FE 0 15:00:03.896 MACD3 (MAGN,H1) Request.comment = PQ 0 15:00:03.896 MACD3 (MAGN,H1) Request.position = 0 LF 0 15:00:03.896 MACD3 (MAGN,H1) Request.position_by = 0 OS 0 15:00:03.896 MACD3 (MAGN,H1) Result.retcode = 10009 ME 0 15:00:03.896 MACD3 (MAGN,H1) Result.deal = 0 KE 0 15:00:03.896 MACD3 (MAGN,H1) Result.order = 195416657 KQ 0 15:00:03.896 MACD3 (MAGN,H1) Result.volume = 82.0 CD 0 15:00:03.896 MACD3 (MAGN,H1) Result.price = 60.924999999999997 RO 0 15:00:03.896 MACD3 (MAGN,H1) Result.bid = 0.0 DG 0 15:00:03.896 MACD3 (MAGN,H1) Result.ask = 0.0 HN 0 15:00:03.896 MACD3 (MAGN,H1) Result.comment = Request executed 24.445 + 1000.080 (12527100) ms. IH 0 15:00:03.896 MACD3 (MAGN,H1) Result.request_id = 7 CQ 0 15:00:03.896 MACD3 (MAGN,H1) Result.retcode_external = 0 RJ 0 15:00:03.896 MACD3 (MAGN,H1) MT4ORDERS::OrderSend_MaxPause = 1000000 ER 0 15:00:03.896 MACD3 (MAGN,H1) MG 0 15:00:03.926 MACD3 (MAGN,H1) Ордер на покупку успешно помещен с тикетом #195416665!! CR 0 15:00:03.926 MACD3 (MAGN,H1) Position by MAGN to be opened 我在股票市场经纪人开盘时进行交易,结果开了两次仓,这并不重要,但也许有办法避免这种情况? fxsaber 2022.02.02 18:40 #694 Александр Кувакин #:@fxsaber 请提示,有这样的日志: 感谢您提供的日志,问题已经很清楚了。修复程序将在下一个版本中提供。 ersan yurdakul 2022.02.07 17:41 #695 fxsaber #:感谢您提供的日志,问题已经很清楚了。修复程序将在下一个版本中提供。 您好,期待更新,谢谢.....。 prostotrader 2022.02.07 21:14 #696 fxsaber #:感谢您提供的日志,问题已经很清楚了。修复程序将在下一个版本中提供。 第六年的修复,值得吗(无意冒犯,只是想知道)? 已添加 7 年前我写了这个,但从未修复过一次 https://www.mql5.com/ru/blogs/post/557544 Отслеживание ордера, после команды OrderSendAsync 2016.10.29www.mql5.com Отслеживание ордера, после команды OrderSendAsync Михаил | 23 апреля, 2015 В статье рассказывается принцип отслеживания ордера после команды OrderSendAsync, если нет события TradeTransaction Vitaly Muzichenko 2022.02.07 21:26 #697 prostotrader #:第六年修复它,值得去做吗(无意冒犯,只是想知道)?已添加7 年前写的,从未修改过一次https://www.mql5.com/ru/blogs/post/557544 这完全是另一部歌剧的内容。 prostotrader 2022.02.07 21:31 #698 Vitaly Muzichenko #:这是一部完全不同的歌剧。 是因为代码有半吨重吗? 那么是的,歌剧是不同的....:) fxsaber 2022.02.07 22:27 #699 prostotrader #:第六年修复它,值得去做吗(无意冒犯,只是想知道)? 自以为了解 MT5 功能的人明显多于真正了解的人。 这是我 7 年前写的,从未更正过一次 https://www.mql5.com/ru/blogs/post/557544 米莫。请克制你的***欲望。 fxsaber 2022.02.08 09:00 #700 // 更改列表: // 08.02.2022 // 修正:在设置/修改挂单时,考虑到了执行挂单时没有 MT5 中间步骤的可能性。 1...636465666768697071727374757677...95 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
真实账户库的技术压力测试数据。
在此模式下,库处理所有 MT5 非同步。MT4 逻辑未被破坏。
在处理历史记录时发现了性能问题,这也是更新程序库的原因。
热插拔 EX5 后,同步数据如下。
不到 0.1% 的运行时间用于 MT5 同步。平均时间为 22 微秒。最长时间为 225 毫秒。在 2.5 小时的工作时间中,有 51 秒用于同步器调用(0.5%)。
该库的可靠性相当高。值得推荐。
图书馆的技术压力测试数据在战斗账户上。
该库的可靠性相当高。值得推荐。
该程序库可以处理如此极端的负载,但也存在困难。必须奇迹般地想出办法来减轻极端负荷。
@fxsaber 请给我建议,我得到了这个日志:
我在股票市场经纪人开盘时进行交易,结果开了两次仓,这并不重要,但也许有办法避免这种情况?
@fxsaber 请提示,有这样的日志:
感谢您提供的日志,问题已经很清楚了。修复程序将在下一个版本中提供。
感谢您提供的日志,问题已经很清楚了。修复程序将在下一个版本中提供。
您好,期待更新,谢谢.....。
感谢您提供的日志,问题已经很清楚了。修复程序将在下一个版本中提供。
第六年的修复,值得吗(无意冒犯,只是想知道)?
已添加
7 年前我写了这个,但从未修复过一次
https://www.mql5.com/ru/blogs/post/557544
第六年修复它,值得去做吗(无意冒犯,只是想知道)?
已添加
7 年前写的,从未修改过一次
https://www.mql5.com/ru/blogs/post/557544
这完全是另一部歌剧的内容。
这是一部完全不同的歌剧。
是因为代码有半吨重吗?
那么是的,歌剧是不同的....:)
第六年修复它,值得去做吗(无意冒犯,只是想知道)?
自以为了解 MT5 功能的人明显多于真正了解的人。
这是我 7 年前写的,从未更正过一次
https://www.mql5.com/ru/blogs/post/557544
米莫。请克制你的***欲望。