EA trava ao realizar cancelamento de ordem

 

Boa tarde.


Programei um EA para realizar algumas operações e estou sendo amplamente prejudicado em minha operação pelo motivo do robô simplesmente parar de funcionar em um determinado momento do código e retornar com o retcode "Request timeout". Abaixo o hisórico do diário no momento que isso acontece:

Vejam que meu robô ficou 3 min parado até receber o 


2020.12.11 16:12:33.375 Trades buy limit 1 BIDI11F at 83.94

2020.12.11 16:12:33.434 Notifications invalid settings (notifications not enabled)

2020.12.11 16:12:33.434 Trades accepted buy limit 1 BIDI11F at 83.94

2020.12.11 16:12:33.434 Trades buy limit 1 BIDI11F at 83.94 placed for execution (Order Ack. Sending to OMS...)

2020.12.11 16:12:33.442 Notifications invalid settings (notifications not enabled)

2020.12.11 16:12:33.442 Trades order #741246186 buy limit 1 / 1 BIDI11F at 83.94 done in 66.953 ms

2020.12.11 16:12:33.555 Trades cancel order #741246186 buy limit 1 BIDI11F at 83.94

2020.12.11 16:12:33.611 Trades accepted cancel order #741246186 buy limit 1 BIDI11F at 83.94

2020.12.11 16:12:33.612 Trades cancel order #741246186 buy limit 1 BIDI11F at 83.94 placed for execution (Cancel received. Sending to OMS)

2020.12.11 16:12:33.619 Notifications invalid settings (notifications not enabled)

2020.12.11 16:15:33.543 Trades failed cancel order #741246186 buy 0  at market [Request timeout] (Cancel received. Sending to OMS)


Aqui a parte do código que gera esse travamento:

void DeletaOrdens()
   {
   for(int i = OrdersTotal()-1;i>=0;i--)
      {
      ulong ticket = OrderGetTicket(i);
      string symbol = OrderGetString(ORDER_SYMBOL);
      ulong magic = OrderGetInteger(ORDER_MAGIC);
      if(magic == magicNum)
         {
         if(trade.OrderDelete(ticket))
            {
            Print("Ordem Deletada sem falha. ResultRetcode: ",trade.ResultRetcode()," RetcodeDescription: ",trade.ResultRetcodeDescription());
            }
         else
            {
            Print("Ordem Deletada com falha. ResultRetcode: ",trade.ResultRetcode()," RetcodeDescription: ",trade.ResultRetcodeDescription());
            }            
         }
      }
   }




 

Oi Lucas, boa tarde.

Estou com mesmo problema e acabei de publicar um tópico no Forum.

Você conseguiu algo com este problema?

 
André Barbisan:

Oi Lucas, boa tarde.

Estou com mesmo problema e acabei de publicar um tópico no Forum.

Você conseguiu algo com este problema?


André, passei a utilizar o a função OrderSendAsync. resolveu o meu problema.

Razão: