Ordem esta expirando mesmo definindo para não haver expiração com ORDER_TIME_GTC.

Para adicionar comentários, por favor Faça o login ou registrar
Luis Paulo Rodrigues Pastor
223
Luis Paulo Rodrigues Pastor  

Estou com um problema de expiração da ordem, se alguém puder me ajudar agradeço.

Desenvolvi um expert para validar estratégias no gráfico semanal ou diário. A situação que descrevo ocorre nos dois:

1. Quando aparece o sinal para uma nova entrada, no candle posterior ao do sinal, posiciono uma compra um tick acima da máxima do candle do sinal, com stop loss e take profit definidos.

2. Recebo a mensagem que a ordem foi colocada com sucesso e é mostrado no gráfico os locais da possivel entrada, stop loss e take profit, conforme defini.

3. O que acontece é que depois de alguns ticks recebo a mensagem de "order expired". O estranho é que isso acontece algumas vezes, em outras a entrada é realizada, assim como os alvos de stop loss ou take profit.


Obs: 

Já utilizei o ORDER_TIME_GTC, desta forma:

trade.BuyStop(volume, priceBuy, symbol, stopLoss, takeProfit, ORDER_TIME_GTC, 0)

e o ORDER_TIME_SPECIFIED (passando uma data de expiração de 1 ano para frente):

trade.BuyStop(volume, priceBuy, symbol, stopLoss, takeProfit, ORDER_TIME_SPECIFIED, expiration)


Já tentei com o TypeFilling configurado como ORDER_FILLING_FOK ou ORDER_FILLING_RETURN:

trade.SetTypeFilling(ORDER_FILLING_FOK);

Para adicionar comentários, por favor Faça o login ou registrar