Verificar Posição Aberta em Conta Hedge

 

Eu tentei rodar meu EA em uma conta Hedge, mas parece que a verificação de ordem não está funcionando como na conta Netting. Na conta Hedge toda vez que o preço toca na minha zona de entrada, o EA faz uma nova entrada. Mesmo com a verificação de posição aberta.


Eu estou usando esse código para verificar posição aberta:

PosicaoAberta = false;
   for(int i = PositionsTotal()-1; i>=0; i--)
     {
      string symbol = PositionGetSymbol(i);
      ulong magic = PositionGetInteger(POSITION_MAGIC);
      if(symbol == _Symbol && magic == magicnum)
        {
         PosicaoAberta = true;
         break;
        }
     }


E ai uso isso na abertura de ordem


if(cande[1].low > MA[1] && tick.last>candle[1].high && novabarra()==true && !PosicaoAberta){
trade.Buy(Contratos,Symbol(),ask,0,ask+TakeProfit,"Compra - Entrada Simples");
}


Mas aparentemente ele simplesmente ignora isso na conta Hedge:


 
HENRIQUE ARAUJO DOS SANTOS:


Bom dia,

em cada Hedge cada ordem abre um nova posição, para encerrar, total ou parcialmente, uma posição, você precisa colocar uma ordem oposta com nº do Ticket da posição.

Razão: