Подскажите, почему не закрылся ордер?

 

В терминале стоит два одинаковых советника с разными параметрами и мэджиками. Почему ордер #5158316 (первого советника)делал попытку закрыться 3 раза, но закрылся только на четвертый. Ордера второго советника закрывались без проблем. Вот что было в логе

04:23:52 '*****': order #5158316 buy 3.00 EURGBP closing at 0.8974 failed [Trade context is busy]
04:23:52 TradeDispatcher: trade context is busy
04:23:53 '*****: close order #5158311 buy 2.00 EURGBP at 0.8970 sl: 0.8946 tp: 0.0000 at price 0.8974
04:23:53 '*****': request was accepted by server
04:23:53 '******': request in process
04:23:56 '*****': order #5158311 buy 2.00 EURGBP at 0.8970 sl: 0.8946 tp: 0.0000 closed at price 0.8974
.

.

.

04:39:30 '*****': order was opened : #5158498 buy 2.00 EURGBP at 0.8971 sl: 0.8950 tp: 0.0000
04:42:56 '*****': order #5158316 buy 3.00 EURGBP closing at 0.8974 failed [Trade context is busy]
04:42:56 TradeDispatcher: trade context is busy
04:42:57 '*****': close order #5158498 buy 2.00 EURGBP at 0.8971 sl: 0.8950 tp: 0.0000 at price 0.8974
04:42:58 '*****': request was accepted by server
04:42:58 '*****': request in process
04:43:01 '*****': order #5158498 buy 2.00 EURGBP at 0.8971 sl: 0.8950 tp: 0.0000 closed at price 0.8974

.

.

.

05:04:14 '*****': order #5158316 buy 3.00 EURGBP closing at 0.8974 failed [Trade context is busy]
05:04:14 TradeDispatcher: trade context is busy
05:04:15 '*****': order #5158316 buy 3.00 EURGBP closing at 0.8974 failed [Trade context is busy]
05:04:15 TradeDispatcher: trade context is busy
05:04:15 ******': close order #5158550 buy 2.00 EURGBP at 0.8970 sl: 0.8946 tp: 0.0000 at price 0.8974
05:04:15 '*****': order #5158316 buy 3.00 EURGBP closing at 0.8976 failed [Trade context is busy]
05:04:15 TradeDispatcher: trade context is busy
05:04:15 '*****': request was accepted by server
05:04:15 '*****': request in process
05:04:17 '*****': order #5158316 buy 3.00 EURGBP closing at 0.8976 failed [Trade context is busy]
05:04:17 TradeDispatcher: trade context is busy
05:04:18 '*****': order #5158316 buy 3.00 EURGBP closing at 0.8977 failed [Trade context is busy]
05:04:18 TradeDispatcher: trade context is busy
05:04:18 '*****': order #5158550 buy 2.00 EURGBP at 0.8970 sl: 0.8946 tp: 0.0000 closed at price 0.8974
05:04:19 '*****': order #5158316 buy 3.00 EURGBP closing at 0.8977 failed [Trade context is busy]
05:04:19 TradeDispatcher: trade context is busy





 

А если как вариант сделать так-

int orderclose()   // функция закрытия ордера

orderclose(....);

if (getlasterror)==146 orderclose();

return(0);

 

Эту тему здесь очень много обсуждали года 3 или 4 назад. В результате тех обсуждений и родилась вышеупомянутая статья.

Или Вы всё-таки хотите поговорить об этом?

 
Канеш хачу!
 
Поиск Вам поможет.
Причина обращения: