Boa tarde senhores e senhoras...
Estou procurando na documentação do MQL5 e não encontrei a informação de maneira clara sobre a função OnTrade() no que se refere a ordens pendentes.
Minha dúvida é:
Caso tenha uma Ordem Sell (pendente) e em algum momento eu exclua essa Ordem Sell (pendente), a função OnTrade() é chamada no mento dessa exclusão?
O que encontrei sobre o assunto foi...
https://www.mql5.com/pt/docs/event_handlers/ontrade
https://www.mql5.com/pt/docs/event_handlers/ontradetransaction
rmca,
Eu nunca usei o OnTrade, mas no que diz nessa documentação é exatamente isso que você falou, ou seja, na exclusão de uma ordem pendente gera uma chamada para o OnTrade.
Eu li isso em: https://www.mql5.com/pt/docs/event_handlers/ontrade
![Documentação sobre MQL5: Manipulação de eventos / OnTrade Documentação sobre MQL5: Manipulação de eventos / OnTrade](https://c.mql5.com/36/40/documenta-o-sobre-mql5-manipula__2.png)
- www.mql5.com
Sugiro que use OnTradeTransaction() em vez de OnTrade().
Eu uso OnTradeTransaction() e praticamente todos esses eventos que acontecem com as ordens, inclusive exclusão de ordens, são notificados por meio dessa função.
Ela me parece ser uma versão melhor organizada e mais completa da OnTrade() ... e pra mim tem funcionado muito bem.
https://www.mql5.com/pt/docs/event_handlers/ontradetransaction
![Documentação sobre MQL5: Manipulação de eventos / OnTradeTransaction Documentação sobre MQL5: Manipulação de eventos / OnTradeTransaction](https://c.mql5.com/36/40/documenta-o-sobre-mql5-manipula__3.png)
- www.mql5.com
Sugiro que use OnTradeTransaction() em vez de OnTrade().
Eu uso OnTradeTransaction() e praticamente todos esses eventos que acontecem com as ordens, inclusive exclusão de ordens, são notificados por meio dessa função.
Ela me parece ser uma versão melhor organizada e mais completa da OnTrade() ... e pra mim tem funcionado muito bem.
https://www.mql5.com/pt/docs/event_handlers/ontradetransaction
Obrigado meu amigo... Dei uma olhada na documentação e realmente parece ser uma versão mais "completa" do OnTrade().
Aproveitando o tópico, me tira uma dúvida?
Peguei alguns EA's no código livre para fazer certos estudos e análises e observei que a maioria deles utiliza uma sequencia de comandos no OnInit():
m_trade.SetExpertMagicNumber(magic); m_trade.SetTypeFillingBySymbol(symbol); m_trade.SetMarginMode();
Minha dúvida é, a função SetMagicNumber(magic) define o número mágico da ordem que será enviada certo?
A função SetTypeFillingBySymbol(symbol) define em qual ativo a ordem será enviada?
A função SetMarginMode() define o que exatamente?
Há necessidade desses comandos antes da execução de uma ordem?
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Boa tarde senhores e senhoras...
Estou procurando na documentação do MQL5 e não encontrei a informação de maneira clara sobre a função OnTrade() no que se refere a ordens pendentes.
Minha dúvida é:
Caso tenha uma Ordem Sell (pendente) e em algum momento eu exclua essa Ordem Sell (pendente), a função OnTrade() é chamada no mento dessa exclusão?
O que encontrei sobre o assunto foi...
https://www.mql5.com/pt/docs/event_handlers/ontrade
https://www.mql5.com/pt/docs/event_handlers/ontradetransaction