Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 845
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
Pokrov, Eu lhe disse o que você está olhando...
Aqui está a respostahttps://www.mql5.com/ru/forum/131277/page295#455199
Graças ao autor.
Você pode me dizer se o bloco de erros abaixo está escrito corretamente ou se há algo errado? Não jure de imediato ))))
Como o indicador pode salvar o histórico de valores em um arquivo (e carregá-lo mais tarde)? Existe alguma solução pronta?
Você pode me dizer se o bloco de erros abaixo está escrito corretamente ou se há algo errado? Não jure de imediato ))))
Na minha opinião, o tratamento de erros deve ser na forma de uma função definida pelo usuário, que deve ser chamada após qualquer ação que envolva acesso ao servidor.
Por exemplo OrderSend() devolve o bilhete de pedido ou -1 em caso de falha, ou seja, em caso de erro. Portanto, você deve chamar o manipulador de erros em caso de execução mal sucedida do comando e passar o código de erro para ele. E no manipulador de erros, devemos fornecer um valor de retorno no qual a ação falhada é repetida ou em outro valor é interrompida.
Por exemplo, os preços mudaram, RefreshRates(); e tente novamente, e se não houver dinheiro suficiente, provavelmente é melhor parar de tentar.
Na minha opinião, o tratamento de erros deve ser na forma de uma função definida pelo usuário, que deve ser chamada após qualquer ação relacionada ao acesso ao servidor.
Por exemplo OrderSend() devolve o bilhete de pedido ou -1 em caso de falha, ou seja, em caso de erro. Portanto, você deve chamar o manipulador de erros em caso de execução mal sucedida do comando e passar o código de erro para ele. E no manipulador de erros, devemos fornecer um valor de retorno no qual a ação falhada é repetida ou em outro valor é interrompida.
Por exemplo, os preços mudaram, RefreshRates(); e reentrada, e no caso de fundos insuficientes é provavelmente melhor parar de tentar.
Eu tenho funções após GetLastError e se houver um erro, ele não irá para este bloco (como escrito) e os comandos não serão executados? Entendo a corrente, por exemplo, OrderSend() -> GetLastError -> error block Sleep(3000) RefreshRates() -> sair do bloco e se as condições permanecerem OrderSend() é solicitado novamente. Ou meu raciocínio e meus conceitos estão errados. Entendo que você queira escrever o valor de retorno 1 ou 0 no bloco, mas minhas funções são simples não relacionadas a valores booleanos como SignalBuy, se eu entendi corretamente, os valores de retorno devem ser devolvidos lá.