Discussão do artigo "Biblioteca para criação simples e rápida de programas para MetaTrader (Parte XXIII): classe básica de negociação, controle de parâmetros válidos"
![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Novo artigo Biblioteca para criação simples e rápida de programas para MetaTrader (Parte XXIII): classe básica de negociação, controle de parâmetros válidos foi publicado:
Neste artigo, continuaremos a acompanhar o desenvolvimento da classe de negociação, criaremos um controle que encontre valores incorretos nos parâmetros da ordem de negociação e sonorizaremos eventos de negociação.
Compilamos e executamos o EA no testador, tendo previamente definido nos parâmetros o valor Lots como 10,
enquanto os valores StopLoss in points e TakeProfit in points, como 1 ponto:
Assim, tentaremos abrir uma posição com um tamanho de lote inválido (parecendo que não há dinheiro suficiente) e violar os requisitos de distância mínima para definir stops, distância essa regulada pelo parâmetro StopLevel do símbolo:
Nosso EA exibiu no log dois erros: "não há fundos suficientes para concluir a operação de negociação" e "o valor StopLoss não cumpre os requisitos segundo o parâmetro StopLevel do símbolo". Mas também definimos o TakeProfit como um ponto. Por que ele não imprimiu uma mensagem sobre esse erro? Porque não há erro, pois os níveis de TakeProfit e StopLoss dentro do nível mínimo SYMBOL_TRADE_STOPS_LEVEL estão definidos segundo a regra.
Os níveis TakeProfit e StopLoss devem ser comparados com o preço atual com base no qual pode ser executada uma operação de direção oposta.
Autor: Artyom Trishkin