Como verificar se uma ordem foi finalizada(Negociada).

 

Olá Comunidade!

Preciso obter dados de uma ordem no histórico de negociação após ela ser negociada(após o gain ou loss) , consigo obter o ticket dela com o ctrade.ResultOrder() na hora que lanço a ordem.

Porem preciso dos dados após ela ser negociada(após o gain ou loss). Tentei obter através de HistorySelect(), porem a ordem aparece no histórico mesmo estando em negociação.

tentei HistoryOrderGetInteger(Index, ORDER_TICKET) , mas retorna que a ordem foi executada estando ela em negociação ou já negociada. 

Preciso saber quando a ordem foi negociada(após o gain ou loss), e pegar os dados após a negociação. 

Alguém poderia me ajudar?

Grato

 

Olá Comunidade.

Consegui resolver meus problemas usando os Manipulação de eventosOnTrade e  OnTradeTransaction . Lá tem todos os eventos que preciso. :)

Fica a dica para os iniciantes como eu. rs


Agradeço a atenção de todos


Abraços

Documentação sobre MQL5: Manipulação de eventos / OnTrade
Documentação sobre MQL5: Manipulação de eventos / OnTrade
  • www.mql5.com
OnTrade - Manipulação de eventos - Referência MQL5 - Referência sobre algorítimo/automatização de negociação na linguagem para MetaTrader 5