Friday 8 December 2017

Erro de divisão de forex zero


Boa prática para evitar erros de divisão zero: 1) Deixe sempre um espaço antes e depois do símbolo de divisão em cálculos. Dessa forma, é mais fácil usar a função de pesquisa CtrlF para encontrar todas as divisões sem ter que passar por todas as pré-correcções de comentários também. 2) Coloque sempre cálculos que usam o símbolo de divisão dentro das chaves de comando de um condicional que verifique se o número que você está dividindo não é igual a zero. Isso impedirá que o programa pare com um erro de divisão zero se o denominador nunca for zero. por exemplo. 3) É uma boa idéia adicionar algum tipo de relatório de erros para se certificar de que o programa não prossegue sem avisar que o cálculo dentro desses aparelhos de comando não foi realizado quando o denominador é igual a zero - caso contrário você nunca pode perceber, porque O erro de divisão zero não ocorreria mais. Provavelmente é correto supor que, se o denominador for sempre zero, algo já deu errado antes que o erro de divisão zero possa ocorrer e você gostaria de saber sobre isso. por exemplo. Essas três adições podem levar alguns segundos extras para digitar cada vez no código, mas eles economizarão minutos ou horas na prevenção de um erro de divisão zero sempre ocorrendo. Adicione estes em seu código e o problema se revelará. Pontos bons para lembrar, clerin6 Divide por zero erros são bastante fáceis de evitar dessa maneira ou se você sabe como os cálculos são feitos nas variáveis ​​envolvidas em uma operação de divisão. Relacionados, embora um pouco diferente seja a criação não intencional e sinistro de zero através de erros de divisão inteira. Por exemplo, se o comprimento for uma entrada int externa e a saída desejada é um número de ponto flutuante: se o comprimento for um número inteiro, a linha acima irá produzir um zero para a maioria dos comprimentos. Enquanto o seguinte é o que realmente se destina: (produzirá um peso em ponto flutuante que pode ser usado como parte de um cálculo de ponderação exponencial). Por pouco tempo, com a mudança para a nova versão do MT4 (compilação 610), eu tenho o mesmo erro no meu indicador quando eu o uso com iCustom na minha EA. Este indicador é o famoso Hull Moving Average 2.0 (bicolor sminged MA). Seu novo nome é HMA agora. Alguns erros de sintaxe são corrigidos como quotchar por quechic. Alguém pode me ajudar Zero Divide Error Deve ser tarde e eu não posso encontrá-lo. Está em um indicador, que quando carregado em um gráfico, ele funciona bem. Mas quando eu chamo isso de uma EA, obtenho Zero Divide. Nota: eu liguei para isso de outras 9 EAs. Cada chamada me dá o mesmo resultado no Journal for Strategy Tester. Heres o código de chamada na EA: Heres o código do indicador: Qualquer idéia seria útil TIA Ingressou em novembro de 2009 Status: Membro 12 Posts thats only way to get a Div0. Verifique-os antes do cálculo de PercentB. (Ou seja, se (bbUpper bbLower) o pânico é bbPrice chegando em OK. Outra coisa a tentar é mudar o 100 a 100.0 no cálculo PercentB. Misturar ints e dobrar em um calc pode produzir resultados imprevisíveis. Iniciado em Abr 2007 Status: Gettin kick in the nutz Todos os dias 725 postagens Obrigado pelas idéias. BbPrice está se deparando com o que eu posso dizer. Não tenho certeza do que pergunta. Eu mudei o 100 para 100.0. Sem efeito. Também joguei meus EAs com um comentário mostrando o valor que eu era Voltando. Está enviando de volta o mesmo valor que o indicador tem no gráfico. Então, estou realmente preso. Essa é apenas a maneira de obter um Div0. Verifique-os antes do cálculo de PercentB. (Ou seja, se o pânico bbUpper bbLower for bbPrice Através de OK Outra coisa a tentar é mudar o 100 a 100.0 no cálculo PercentB. Misturar ints e duplos em um calc pode produzir resultados imprevisíveis.

No comments:

Post a Comment