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
E não é zeragem incondicional, mas somente se last_error_fifo == 0. Em resumo, é o mesmo que ovos em perfil. verifique o que a função retornou antes de verificar a existência de erros.
Desenvolva o tema.
Exatamente para você, veja :
Opções de rescisão OrderSend();
1. Sem erros. Você ainda chama GetLastError() - em princípio não há problema se o erro anterior for lido, processado e reinicializado.
IMHO - você não precisa fazer isso.
2. Há um erro - ao chamar GetLastError (), pelo que entendi, você analisa um único erro, embora possa haver muitos deles.
IMHO, é mais correto:
A última é ErrReaction(err) - isto é manipulação de erros.
Por exemplo, assim :
A função de processamento divide os erros em "corrigível" e "irrecuperável" - o "corrigível" tenta eliminar, o código do irrecuperável retorna - para processamento em um procedimento (de chamada) externo.
Enfim, minhas baratas estão mais frias porque não há necessidade de verificar o que cada função retornou para que o código pareça melhor... Além disso, você pode organizar seus próprios códigos de erro.
Além disso, você pode organizar seus próprios códigos de erro.
de alguma forma, temos o suficiente para fazer o nosso próprio também.
Depende de sua lógica. Afinal, você pode fazer o processamento de cada erro, e só pode fazer aqueles que são importantes nesta situação.
É desejável, é claro, ter uma função para processar todos os erros mais significativos, e então a lógica inerente ao Expert Advisor irá "ajustar" as prioridades.
Separadamente, peço desculpas ao iniciador do tópico se minha pergunta me afastar da direção principal do tópico.
De alguma forma, temos o suficiente para fazer o nosso próprio também.
Quem fazem os inventores da MQL5 se esforçam tanto para criar o SetUserError. eles reservaram até 65535 códigos de erro para si mesmos, e qualquer coisa acima que esteja ok, você pode organizar seu próprio :)
Só para você, veja :
2. Há um erro - ao chamar GetLastError () até onde eu entendo você analisa um único erro, embora possa haver muitos.
IMHO - variante mais correta:
A última é ErrReaction(err) - isto é manipulação de erros.
vit46:
Ознакомьтесь с этим материалом. imho, не повредит.
https://www.mql5.com/ru/forum/131373
É desejável, é claro, ter uma função para processar todos os erros mais significativos, e então a lógica inerente ao Expert Advisor irá "corrigir" as prioridades.
Por exemplo, acredito que é suficiente tentar abrir um pedido 5 vezes e depois parar de tentar, enquanto você pode pensar que precisa abrir um pedido 20 vezes ou "para ganhar".
Eu, por exemplo, acho que basta tentar abrir um pedido 5 vezes e depois parar de tentar, mas você pode pensar que tem que tentar 20 vezes ou abrir "até ganhar".
Não, eu não estou contando nada. Eu não tenho minha própria opinião firme e inequívoca, é por isso que estou pedindo que você recomende o recurso de correção de erros mais decente.