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 185
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
Boa tarde.
Preciso que a EA desista após um determinado evento.
Entendo que esta é a função deinit(), eu preciso chamá-la de alguma forma. Esta é uma citação do tutorial:
"A função especial deinit() é chamada para execução pelo terminal do cliente também quando o terminal do cliente é desligado, quando a janela do instrumento financeiro é fechada, pouco antes de alterar um instrumento financeiro e/ou período do gráfico, quando o programa é recompilado com sucesso no MetaEditor, quando os parâmetros de entrada são alterados, e quando a conta é alterada. "
Então eu tenho que fechar o terminal manualmente, por exemplo, para que esta função seja chamada?
Tentei chamar esta função quando uma condição desencadeou, ela foi executada, mas um novo tique veio e a função de início foi iniciada novamente.
Como eu ainda termino o programa?
Obrigado.
Boa tarde.
Preciso que a EA pare depois de um certo evento.
Entendo que esta é a função deinit(), eu preciso chamá-la de alguma forma. Esta é uma citação do tutorial:
"A função especial deinit() é chamada para execução pelo terminal do cliente também quando o terminal do cliente é desligado, quando a janela do instrumento financeiro é fechada, pouco antes de alterar um instrumento financeiro e/ou período do gráfico, quando o programa é recompilado com sucesso no MetaEditor, quando os parâmetros de entrada são alterados, e quando a conta é alterada. "
Então eu tenho que fechar o terminal manualmente, por exemplo, para que esta função seja chamada?
Tentei chamar esta função quando uma condição desencadeou, ela foi executada, mas um novo tique veio e a função de início foi iniciada novamente.
Como eu ainda termino o programa?
Obrigado.
Para fechar o terminal programmaticamente, insira logo no início do código antes da função start():
Na função start(), quando você precisar fechar o terminal, ligue para ExitMT4(), que você declara fora da função start()
Para fechar o terminal programmaticamente, insira logo no início do código antes da função start():
Na função start(), quando você precisar fechar o terminal, ligue para ExitMT4(), que você declara fora da função start()
Muito obrigado por sua resposta abrangente.
Basicamente, seria suficiente para mim apenas terminar a EA, não preciso fechar o terminal. Não há uma maneira fácil de fazer isso?
Acho que deinit() deveria de alguma forma resolver esta questão, mas devo estar fazendo algo errado...
Não posso remover o Terminal.exe da Alpari Limited, construa o 509.
Ao utilizar o painel de controle para desinstalar, um "Você não tem direitos suficientes para desinstalar". Contate seu administrador de sistema".
Ao utilizar o Uninstall.exe ele exibe "Server has retornado o link".
O suporte técnico da Alpari não consegue dizer nada compreensível. Eles apenas sugeriram que eu deveria apagar a pasta inteira e instalar o terminal em outro diretório.
Eu tenho Win 7, Ultimate. Direitos de Administrador ativado, eu executei Uninstall.exe como Administrador.
Eu ficaria muito grato por qualquer ajuda para resolver este problema.
Muito obrigado pela resposta detalhada.
Em princípio, seria suficiente para mim apenas terminar a EA, não há necessidade de fechar o terminal. Não há uma maneira fácil?
Acho que deinit() deveria de alguma forma resolver esta questão, mas devo estar fazendo algo errado...
Não deinit() mas return(0);
Se não me engano, o return(0) simplesmente terminará a função atual start() e aguardará o próximo tick, enquanto eu preciso que a EA termine seu trabalho, como se eu o tivesse separado manualmente do gráfico.
Eu o verifiquei na prática e ele continua exibindo "0 ordens em aberto" de alerta a cada tique.
Eu não esperei pelo querido "Tchau".
Não é possível desinstalar o Terminal.exe da Alpari Limited, construa o 509.
Ao utilizar o painel de controle para desinstalar, um "Você não tem direitos suficientes para desinstalar". Contate seu administrador de sistema".
Ao utilizar o Uninstall.exe ele exibe "Server has retornado o link".
O suporte técnico da Alpari não consegue dizer nada compreensível. Eles apenas sugeriram que eu deveria apagar a pasta inteira e instalar o terminal em outro diretório.
Eu tenho Win 7, Ultimate. Direitos de administrador ativado, desinstalar.exe executado como administrador.
Será muito grato por qualquer conselho para resolver este problema
Alguns programas maliciosos (mail.ru, eu tinha) redistribuem os direitos de acesso, de modo que você com privilégios de administrador não tem acesso à sua remoção.
O problema foi resolvido pelo método de poke científico na redistribuição de direitos (clique sobre a pasta, propriedades, segurança, alterar, adicionar, opcional, tipos de objetos, search.......)
Mas depois conheci o "Revo uninstaller" e todo o incômodo de apagar algo desapareceu + a certeza de que o registro foi limpo de suas atividades.
Se não me engano, o return(0) simplesmente terminará a função atual start() e aguardará o próximo tick. Preciso que a EA termine seu trabalho como se eu o tivesse separado manualmente do gráfico.
Verifiquei na prática - interminavelmente a cada tique dá o alerta "Ordens abertas - 0".
Eu não esperei pelo querido "Adeus".
Alguns programas maliciosos (mail.ru que eu tinha) redistribuem os direitos de acesso e fazem com que você com direitos de administrador não tenha acesso à sua eliminação.
O problema foi resolvido pelo método científico de redistribuição de permissões (PCM na pasta, propriedades, segurança, alterar, adicionar, opcional, tipos de objetos, search.......)
Mas depois conheci o "Revo uninstaller" e todo o incômodo de apagar algo desapareceu, + a certeza de que o registro foi limpo de suas atividades.
Seu desejo faz lembrar a piada do "desenhista". Se você quiser que o consultor pare de negociar, então pela ativação da bandeira (global) (após algumas condições), a interrupção do início da função() (saída via retorno) dará o resultado esperado.
Isto é mais ou menos o que parece: