Como limitar colocação de ordens stop?

 

Fala galera,

Meu EA coloca ordem buy e sell stop em determinada condição.

Como crio uma limitação, caso esta condição se repita antes da ordem pendente ser executada?

Preciso que o EA coloque apenas uma ordem pendente e desconsidere novo sinal caso já tenha uma ordem pendente?

Até +.

 

Olá, existe várias formas de você fazer isso. Por exemplo:

  • Verificar antes de abrir uma nova ordem se já existe uma ordem de tipo stop 
  • Trabalhar com número magico e verificar se o número magica está em uso no ciclo de ordens totais
  • Se souber a quantidade exatas de ordem que cada gráfico deve ter, pode limitar a quantidade de ordens de acordo com a quantidade exata
 
Davi Silva:

Olá, existe várias formas de você fazer isso. Por exemplo:

  • Verificar antes de abrir uma nova ordem se já existe uma ordem de tipo stop 
  • Trabalhar com número magico e verificar se o número magica está em uso no ciclo de ordens totais
  • Se souber a quantidade exatas de ordem que cada gráfico deve ter, pode limitar a quantidade de ordens de acordo com a quantidade exata

Não estou conseguindo. O que pode estar errado?


int OpenOrdersStop(int type){

int total=0,ot=OrdersTotal();


  for(int i=ot-MaxTradesSimultaneo;i>=0;i--){  

    ulong ticket=OrderGetTicket(i);  

    if(PositionSelectByTicket(ticket)){

      if(OrderGetInteger(ORDER_MAGIC)==MagicNumber){    

        if(OrderGetInteger(ORDER_TYPE)==type || type==-1){

          total++;

        }

      }

    }

  }

  return (total);

}

Razão: