接受SL/TP订单 - 页 5

 
Renat Fatkhullin:

你 "忘记 "了一个非常小的细节--你检查了58,000个订单,发现只有一个300毫秒的弹射。而这(58000人中的1人)显然应该是这种检查的重点。

是的,我没有更客观地收集状况。

无论如何,我们将继续分析它,尽管在任何系统中都可能出现单一的异常值。

我非常详细地研究了RannForex公司,因为它是一个战斗的。在那里,绝对每个订单都有2-3毫秒,不管是什么符号。

而关于ticks的状态是在另一个地方收集的,终端位于服务器所在的同一台机器上。

 
2021.02.05 17:00:47.044 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.044 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.044 CheckOrders (EURUSD,D1) Start CheckOrders, inFrom = 2021.01.01 00:00:00, inTicket = 0
2021.02.05 17:00:47.044 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.045 CheckOrders (EURUSD,D1) Last Tick 2021.02.05 15:34:01.326 1.08224 1.08233
2021.02.05 17:00:47.045 CheckOrders (EURUSD,D1) LatTick Length = 5 ms.
2021.02.05 17:00:47.045 CheckOrders (EURUSD,D1) Accepted Tick 2021.02.05 15:34:01.326 1.08224 1.08233
2021.02.05 17:00:47.045 CheckOrders (EURUSD,D1) Accepted Length = 5 ms.
2021.02.05 17:00:47.045 CheckOrders (EURUSD,D1) Order 123333339 ORDER_TYPE_BUY EURCHF 2021.02.05 15:34:01.331 1.08233 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.05 15:34:01.373, Position 123263232 created 2021.02.05 13:10:32.521, StopLevel = 0
2021.02.05 17:00:47.045 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.046 CheckOrders (EURUSD,D1) Last Tick 2021.02.04 21:44:22.384 1.08132 1.08136
2021.02.05 17:00:47.046 CheckOrders (EURUSD,D1) LatTick Length = 6 ms.
2021.02.05 17:00:47.046 CheckOrders (EURUSD,D1) Accepted Tick 2021.02.04 21:44:22.384 1.08132 1.08136
2021.02.05 17:00:47.046 CheckOrders (EURUSD,D1) Accepted Length = 6 ms.
2021.02.05 17:00:47.046 CheckOrders (EURUSD,D1) Order 123050627 ORDER_TYPE_SELL EURCHF 2021.02.04 21:44:22.390 1.08132 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.04 21:44:22.431, Position 123024385 created 2021.02.04 20:52:15.142, StopLevel = 0
2021.02.05 17:00:47.046 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.046 CheckOrders (EURUSD,D1) Last Tick 2021.02.04 17:22:02.377 1.08189 1.08189
2021.02.05 17:00:47.046 CheckOrders (EURUSD,D1) LatTick Length = 7 ms.
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Accepted Tick 2021.02.04 17:22:02.377 1.08189 1.08189
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Accepted Length = 7 ms.
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122938233 ORDER_TYPE_SELL EURCHF 2021.02.04 17:22:02.384 1.08189 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.04 17:22:02.442, Position 122928144 created 2021.02.04 17:16:43.333, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Last Tick 2021.02.04 17:16:42.786 1.08168 1.08168
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) LatTick Length = 51 ms.
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Accepted Tick 2021.02.04 17:16:42.786 1.08168 1.08168
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Accepted Length = 51 ms.
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122933325 ORDER_TYPE_BUY EURCHF 2021.02.04 17:16:42.837 1.08171 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.04 17:16:43.335, Position 122905671 created 2021.02.04 17:09:03.783, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 11:38:04.424, 2021.02.03 12:38:04.424) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122248978 ORDER_TYPE_SELL NZDCAD 2021.02.03 12:38:04.424 0.92108 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 12:38:04.469, Position 122078077 created 2021.02.03 08:49:03.466, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 11:37:56.905, 2021.02.03 12:37:56.905) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122248934 ORDER_TYPE_SELL NZDCAD 2021.02.03 12:37:56.905 0.92104 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 12:37:56.953, Position 122077808 created 2021.02.03 08:47:33.346, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 07:47:33.344, 2021.02.03 09:24:40.310) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122149815 ORDER_TYPE_SELL NZDCAD 2021.02.03 09:24:40.310 0.92254 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 09:24:40.355, Position 122077761 created 2021.02.03 08:47:33.344, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 07:46:05.065, 2021.02.03 09:24:38.641) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122149805 ORDER_TYPE_SELL NZDCAD 2021.02.03 09:24:38.641 0.92252 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 09:24:38.680, Position 122077760 created 2021.02.03 08:46:05.065, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 07:49:03.438, 2021.02.03 08:49:03.438) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122139945 ORDER_TYPE_BUY NZDCAD 2021.02.03 08:49:03.438 0.92213 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 08:49:03.482, Position 122071277 created 2021.02.03 02:39:05.643, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 07:47:33.323, 2021.02.03 08:47:33.323) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122139669 ORDER_TYPE_BUY NZDCAD 2021.02.03 08:47:33.323 0.92218 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 08:47:33.376, Position 122071588 created 2021.02.03 02:38:27.630, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 07:47:33.323, 2021.02.03 08:47:33.323) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122139668 ORDER_TYPE_BUY NZDCAD 2021.02.03 08:47:33.323 0.92219 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 08:47:33.367, Position 122070905 created 2021.02.03 02:38:45.648, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 07:46:05.018, 2021.02.03 08:46:05.018) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122139354 ORDER_TYPE_BUY NZDCAD 2021.02.03 08:46:05.018 0.92227 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 08:46:05.068, Position 122070794 created 2021.02.03 02:38:27.343, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 00:58:12.164, 2021.02.03 02:39:05.594) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122078065 ORDER_TYPE_SELL NZDCAD 2021.02.03 02:39:05.594 0.92066 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 02:39:05.631, Position 122005391 created 2021.02.03 01:58:12.164, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 00:55:04.419, 2021.02.03 02:38:45.600) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122077803 ORDER_TYPE_SELL NZDCAD 2021.02.03 02:38:45.600 0.92056 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 02:38:45.631, Position 122016550 created 2021.02.03 01:55:04.419, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 00:59:34.647, 2021.02.03 02:38:27.594) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122077754 ORDER_TYPE_SELL NZDCAD 2021.02.03 02:38:27.594 0.92048 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 02:38:27.648, Position 122016553 created 2021.02.03 01:59:34.647, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 00:54:36.785, 2021.02.03 02:38:27.292) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122077748 ORDER_TYPE_SELL NZDCAD 2021.02.03 02:38:27.292 0.92042 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 02:38:27.344, Position 122004723 created 2021.02.03 01:54:36.785, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 00:59:34.603, 2021.02.03 01:59:34.603) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122071584 ORDER_TYPE_BUY NZDCAD 2021.02.03 01:59:34.603 0.91993 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 01:59:34.623, Position 121900746 created 2021.02.02 21:33:29.598, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 00:58:12.125, 2021.02.03 01:58:12.125) = 0, _LastError = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) Order 122071259 ORDER_TYPE_BUY NZDCAD 2021.02.03 01:58:12.125 0.92016 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 01:58:12.165, Position 121910314 created 2021.02.02 20:42:24.207, StopLevel = 0
2021.02.05 17:00:47.047 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 00:55:04.388, 2021.02.03 01:55:04.388) = 0, _LastError = 0
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) Order 122070902 ORDER_TYPE_BUY NZDCAD 2021.02.03 01:55:04.388 0.92053 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 01:55:04.411, Position 121945533 created 2021.02.02 21:33:29.593, StopLevel = 0
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.03 00:54:36.744, 2021.02.03 01:54:36.744) = 0, _LastError = 0
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) Order 122070780 ORDER_TYPE_BUY NZDCAD 2021.02.03 01:54:36.744 0.92064 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.03 01:54:36.791, Position 121900844 created 2021.02.02 20:39:22.457, StopLevel = 0
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.02 20:33:29.555, 2021.02.02 21:33:29.555) = 0, _LastError = 0
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) Order 122016544 ORDER_TYPE_SELL NZDCAD 2021.02.02 21:33:29.555 0.91619 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.02 21:33:29.591, Position 121849527 created 2021.02.02 18:01:22.267, StopLevel = 0
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.02 20:33:29.555, 2021.02.02 21:33:29.555) = 0, _LastError = 0
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) Order 122016543 ORDER_TYPE_SELL NZDCAD 2021.02.02 21:33:29.555 0.91619 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.02 21:33:29.585, Position 121804705 created 2021.02.02 16:52:35.900, StopLevel = 0
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.02 19:42:24.179, 2021.02.02 20:42:24.179) = 0, _LastError = 0
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) Order 122005386 ORDER_TYPE_SELL NZDCAD 2021.02.02 20:42:24.179 0.91665 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.02 20:42:24.232, Position 121804706 created 2021.02.02 17:01:15.335, StopLevel = 0
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) 
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) Alert: bool GetAcceptedTick(const ulong,MqlTick&,const bool): CopyTicksRange(NZDCAD, 2021.02.02 19:39:22.423, 2021.02.02 20:39:22.423) = 0, _LastError = 0
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) Order 122004709 ORDER_TYPE_SELL NZDCAD 2021.02.02 20:39:22.423 0.91662 ORDER_REASON_TP ORDER_STATE_FILLED 2021.02.02 20:39:22.476, Position 121829876 created 2021.02.02 16:52:39.474, StopLevel = 0
2021.02.05 17:00:47.048 CheckOrders (EURUSD,D1) 
2021.02.05 17:01:08.998 CheckOrders (EURUSD,D1) Last Tick 2021.01.07 16:31:09.714 1.06933 1.06938
2021.02.05 17:01:08.998 CheckOrders (EURUSD,D1) LatTick Length = 133 ms.
2021.02.05 17:01:08.998 CheckOrders (EURUSD,D1) Accepted Tick 2021.01.07 16:31:09.581 1.06936 1.06941
2021.02.05 17:01:08.998 CheckOrders (EURUSD,D1) Accepted Length = 266 ms.
2021.02.05 17:01:08.998 CheckOrders (EURUSD,D1) Order 115585098 ORDER_TYPE_SELL AUDNZD 2021.01.07 16:31:09.847 1.06936 ORDER_REASON_TP ORDER_STATE_FILLED 2021.01.07 16:31:09.907, Position 115540426 created 2021.01.07 16:24:36.081, StopLevel = 0
2021.02.05 17:01:08.998 CheckOrders (EURUSD,D1) 
2021.02.05 17:01:10.935 CheckOrders (EURUSD,D1) Total Orders (from 2021.01.01 00:00:00) = 1343, calculated = 583
2021.02.05 17:01:10.935 CheckOrders (EURUSD,D1) Calculation time = 00:00:23.890, Performance = 24.0 orders/sec.
2021.02.05 17:01:10.935 CheckOrders (EURUSD,D1) 
2021.02.05 17:01:10.935 CheckOrders (EURUSD,D1) ServerName: ICMarkets-MT5
2021.02.05 17:01:10.935 CheckOrders (EURUSD,D1) 
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) Last Tick 2021.01.07 16:31:09.714 1.06933 1.06938
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) LatTick Length = 133 ms.
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) Accepted Tick 2021.01.07 16:31:09.581 1.06936 1.06941
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) Accepted Length = 266 ms.
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) Order 115585098 ORDER_TYPE_SELL AUDNZD 2021.01.07 16:31:09.847 1.06936 ORDER_REASON_TP ORDER_STATE_FILLED 2021.01.07 16:31:09.907, Position 115540426 created 2021.01.07 16:24:36.081, StopLevel = 0
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) 
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) Orders (2) before 115585098 with PositionID = 115540426:
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) ------------------------
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) Checked Orders = 0
 

关于交易、自动交易系统和测试交易策略的论坛

接受SL/TP订单

Dzmitry Manannikov, 2021.02.05 15:10

2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) Last Tick 2021.01.07 16:31:09.714 1.06933 1.06938
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) LatTick Length = 133 ms.
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) Accepted Tick 2021.01.07 16:31:09.581 1.06936 1.06941
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) Accepted Length = 266 ms.
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) Order 115585098 ORDER_TYPE_SELL AUDNZD 2021.01.07 16:31:09.847 1.06936 ORDER_REASON_TP ORDER_STATE_FILLED 2021.01.07 16:31:09.907, Position 115540426 created 2021.01.07 16:24:36.081, StopLevel = 0
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) 
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) Orders (2) before 115585098 with PositionID = 115540426:
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) ------------------------
2021.02.05 17:01:10.950 CheckOrders (EURUSD,D1) Checked Orders = 0

谢谢,我将解释突出的问题。一个TP订单在价格开始满足它之后被接受了266毫秒。同时,接受前的最后一次勾选是在133ms。

这是无法理解的,所以在一个更简单的例子。


一个嘀嗒声传来,应该接受一个未平仓的TP。MT5创建一个TP订单,一个或多个依次进行(如果之前的订单被取消)。

但我们可以确切地说,这个序列中的最后一个顺序。它不是在最后一个tick到来时立即形成的,满足了TP水平,而是在133ms之后才形成的。


想象一下,一个虱子来了。而MT5-服务器只在133毫秒后才启动!雷纳特会说这是高峰值,他是对的。这就是为什么我在分支中给出了一个脚本,它给出了平均滞后值

这也是几毫秒的时间。


SZY 订单的接受只是其产生的事实。它不是把它发送到某个地方,而只是在MT5服务器上创建它。只要价格达到适当的水平,它就应该立即发生。

 

在战斗中我遇到过,有时MT4接受限制器的速度比MT5快。因此,在这些情况下,MT4有时间抓住流动性,MT5则没有。

请克服MT5服务器的滞后问题。

 
情况并没有改善。
 

关于交易、自动交易系统和测试交易策略的论坛

接受SL/TP订单

fxsaber, 2020.11.27 21:20

似乎已经找到了原因。在服务器机上运行该脚本。

// Преобразование времени в миллисекундах в строку.
string TimeToString( const long time, const int FlagTime = TIME_DATE | TIME_SECONDS)
{
  return(TimeToString((datetime)time / 1000, FlagTime) + "." + IntegerToString(time % 1000, 3, '0'));
}

// Преобразование тика в строку.
string TickToString( const MqlTick &Tick, const int digits )
{
  return(TimeToString(Tick.time_msc) + " " + DoubleToString(Tick.bid, digits) + " " + DoubleToString(Tick.ask, digits));
}

void OnTick()
{
  MqlTick Tick;
  
  if (SymbolInfoTick(_Symbol, Tick))
    Print(TickToString(Tick, _Digits));
}


结果。

2020.11.27 22:13:44.156 2020.11.27 22:13:44.149 1.59953 1.59993
2020.11.27 22:13:44.862 2020.11.27 22:13:44.855 0.98789 0.98837
2020.11.27 22:13:45.263 2020.11.27 22:13:45.258 0.98789 0.98839
2020.11.27 22:13:46.878 2020.11.27 22:13:46.873 10.15554 10.16084
2020.11.27 22:13:48.993 2020.11.27 22:13:48.991 10.15554 10.16106
2020.11.27 22:13:51.722 2020.11.27 22:13:51.716 0.98789 0.98840
2020.11.27 22:13:53.035 2020.11.27 22:13:53.027 1.59950 1.59995
2020.11.27 22:13:53.134 2020.11.27 22:13:53.128 1.59954 1.59995
2020.11.27 22:13:53.737 2020.11.27 22:13:53.734 0.98789 0.98839
2020.11.27 22:13:54.745 2020.11.27 22:13:54.743 0.98789 0.98840
2020.11.27 22:13:56.768 2020.11.27 22:13:56.761 0.98789 0.98839
2020.11.27 22:13:57.977 2020.11.27 22:13:57.973 1.59954 1.59994
2020.11.27 22:14:00.293 2020.11.27 22:14:00.292 10.15554 10.16093
2020.11.27 22:14:04.131 2020.11.27 22:14:04.125 1.59954 1.59995
2020.11.27 22:14:08.868 2020.11.27 22:14:08.866 0.98789 0.98841
2020.11.27 22:14:09.780 2020.11.27 22:14:09.773 0.98789 0.98840
2020.11.27 22:14:09.981 2020.11.27 22:14:09.975 1.59955 1.59994
2020.11.27 22:14:10.085 2020.11.27 22:14:10.076 1.59957 1.59994
2020.11.27 22:14:10.180 2020.11.27 22:14:10.177 1.59957 1.59995

左边是打印时间。右边是传入的勾股的时间。可以清楚地看到滞后的情况。看起来,OnTick的触发时间比tick被写入交易服务器的时间晚了几毫秒。


看来,负责激活订单的服务器部分已经收到了延迟的蜱虫,因为它们到达终端时发生了延迟。


终端/服务器=2920。不幸的是,情况还没有改变。

2021.05.19 12:39:02.082 Test9   2021.05.19 12:39:02.080 1.62642 1.62654
2021.05.19 12:39:02.284 Test9   2021.05.19 12:39:02.282 1.62641 1.62651
2021.05.19 12:39:04.305 Test9   2021.05.19 12:39:04.299 1.62645 1.62655
2021.05.19 12:39:06.823 Test9   2021.05.19 12:39:06.821 1.62647 1.62658
2021.05.19 12:39:13.791 Test9   2021.05.19 12:39:13.785 1.62647 1.62659
2021.05.19 12:39:13.891 Test9   2021.05.19 12:39:13.886 1.62649 1.62659
2021.05.19 12:39:15.103 Test9   2021.05.19 12:39:15.097 1.62651 1.62661
2021.05.19 12:39:18.534 Test9   2021.05.19 12:39:18.527 1.62653 1.62663
2021.05.19 12:39:19.238 Test9   2021.05.19 12:39:19.232 1.62650 1.62660
 

检查了经纪人在b2940交易服务器上接受的订单(几千个)。

显著的改善!滞后达2毫秒,但这些可能是尖峰,不会破坏整体的新画面。

现在用MT5交易肯定更有利可图,因为订单会提前几毫秒执行,而且几乎没有滞后。


我没有检查其他的滞后情况。

 

OrderGetTicket 列表中的所有EA都看到了这些订单)。当这些订单消失时,它们并不在订单历史中。他们根本没有出现在订单历史中。

我用手检查了这一点--它是不存在的。我已经联系了经纪人。经纪人已经检查了服务器,它们(票据)不在历史或日志中。

经纪人报告说,如果订单按票据排序,这些地方就会出现漏洞--票据跳过这些数值。


MT5-服务器b2940。一个令人震惊的错误。我建议经纪人检查订单票的漏洞--没有明确的门票顺序编号。


ZZY 这些订单没有出现在终端日志中,因为它们是TP订单--当价格达到开仓的TP水平时,它们会自动创建。

ZZZY 采取什么行动来帮助摆脱问题?

Библиотеки: TradesID
Библиотеки: TradesID
  • 2021.03.29
  • www.mql5.com
Статьи и техническая библиотека по автоматическому трейдингу: Библиотеки: TradesID
 
fxsaber:

OrderGetTicket 列表中的所有EA都看到了这些订单)。当这些订单消失时,它们并不在订单历史中。他们根本没有出现在订单历史中。

我用手检查了这个--完全没有顺序。我已经联系了经纪人。经纪人检查了服务器,它们(票据报告)都不在历史或日志中。

经纪人报告说,如果订单按票据排序,这些地方就会出现漏洞--票据跳过这些数值。


MT5-服务器b2940。一个令人震惊的错误。我建议经纪人检查订单票的漏洞--没有明确的门票顺序编号。


ZZY 这些订单没有出现在终端日志中,因为它们是TP订单--当价格达到开仓的TP水平时,它们会自动创建。

ZZZY 我应该做些什么来帮助摆脱这个问题?

Pirs, plugins, add-ons, scripts, server filters 当然不是问题...

我理解每个人都是过热的,但这有点幼稚......错误报告看起来不同

 
Maxim Kuznetsov:

Pirs, plugins, add-ons, scripts, server filters are certainly not involved...

我理解每个人都是过热的,但这有点幼稚......错误报告看起来不同

你在终端看到一个订单,然后它就消失了。那么它就不会出现在服务器上--票据被放弃。请不要介入。