Erro de preço inválido com ordem sell limit

 

Boa noite pessoal!


Preciso da ajuda de vocês. Estou criando um EA que envia ordens limit, porém estou encontrando o erro de preço inválido toda vez que ele envia a ordem.

Mesmo eu colocando uma distancia mínima do preço de venda para o preço ASK continuo com o erro.

Vou deixar um print do erro, os valores da ordem e os valores de BID e ASK.


if(PositionsTotal() == 0 && OrdersTotal() == 0){
         double pontosSlaFundo = NormalizeDouble(Topoanterior-Fundoanterior, _Digits);
         double pontosSlaFundoDivididopor2 = NormalizeDouble(pontosSlaFundo / 2, _Digits);
         double sell = NormalizeDouble(Topoanterior - pontosSlaFundoDivididopor2,_Digits);
         double sl = NormalizeDouble(Topoanterior,_Digits);
         double slemPontos = NormalizeDouble((sl - sell) / _Point,0);
         double slemDigitos = NormalizeDouble((sl - sell),_Digits);
         double tp  = NormalizeDouble(sell-(slemDigitos*0.8),_Digits);
         double Bid =  NormalizeDouble(SymbolInfoDouble(_Symbol, SYMBOL_BID), _Digits);
         double Ask =  NormalizeDouble(SymbolInfoDouble(_Symbol, SYMBOL_ASK), _Digits);
         
         if(Ask<(sell-0.00100)){       
            trade.SellLimit(tamanhoDoLote(slemPontos), sell, _Symbol, sl, tp, ORDER_TIME_GTC,0,0);
            
            Print(
               "Bid: ", Bid,
               " Ask: ", Ask);
         }
         }

debug

Razão: