Open order price = 0

 

Galera, dúvida básica eu acho.


Tenho um EA com quase 2000 linhas, mas não sei se é cansaço ou sei lá. O código abaixo não funciona, alguém me da uma luz?

void OnTick()
  {
//---

double op;
   if(OrdersTotal() >= 1)
     {
      int orders = OrdersTotal();

      for(int i=0; i<=orders-1; i++)
        {
         op = OrderGetDouble(ORDER_PRICE_OPEN);
         Comment(op);
        }
     }
  }

O valor de op é sempre 0.0, sendo que eu tenho uma ordem limite aberta (venda ou compra, não importa), alguém sabe pq?

 
matheus:


Olá

precisa obter a ordem antes de trabalhar com ela, recomendo ler a documentação.


OrderGetTicket


Retorna o ticket de uma ordem correspondente, selecionando automaticamente a ordem para trabalhos posteriores usando funções.

ulong  OrderGetTicket(
   int  index      // Número na lista de ordens
   );

Razão: