[ARQUIVO] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 3. - página 149

 
avatara:

i sempre uso um certo +/-epsilon=Ponto*0,01 ao comparar preços.

Multiplicar por 1.000.000 não vai fazer nada. acredite em mim.

Eu não entendo bem porque deveria haver um problema <- insecto?

Na documentação:

digits   -   Precision format, number of digits after decimal point (0-8). 

ou seja, há um máximo de 8 casas decimais, e a pergunta mencionada 10 - talvez seja essa a questão?

 
Elenn:

Ao comparar duas variáveis de tipo duplo, às vezes se obtém um resultado incorreto. Isto é provavelmente porque uma das variáveis pode ser ligeiramente maior ou menor do que a outra (por exemplo, por 10 dígitos). O uso da função NormalizeDouble não ajuda na maioria dos casos. Algumas pessoas aconselham a subtrair uma variável de outra, mas nesse caso, como construir uma expressão mais corretamente se(a>=b), subtraindo uma variável de outra? Ou talvez haja alguma outra maneira?

Eu me lembrei de um problema que observei há muito tempo (talvez algo tenha mudado desde então, eu não sei):

a=5 e c=4,0.

Do ponto de vista da MQ, não é necessariamente verdade que a>c neste caso particular.

Seria verdade se a=5,0 e c=4,0, ou a=5 e c=4.

 

Boa tarde!

Suponha que tenhamos dois números 1.4451 e 1.4429.

Como tirar o último dígito de 1,445[1] e 1,442[9] destes números ?

 
TEXX:

Boa tarde!

Suponha que tenhamos dois números 1.4451 e 1.4429.

Como tirar o último dígito de 1,445[1] e 1,442[9] destes números ?

x = (10000 * y) % 10
 
Zhunko:
x = (10000 * y) % 10


e pode ser escrito com números para os idiotas...

Obrigado de antemão!!!

 

Bom dia! Posso me repetir? Estou usando MACDAC como um filtro de tendências em minha EA, é possível fazer minha EA começar a analisar os sinais apenas de uma determinada barra em um macdak e então, quando a tendência muda, tudo muda novamente? Por exemplo MAKDAK>0 início de uma tendência, comece a analisar os sinais somente após a 15ª barra de um Makdak que é maior que zero?

OBRIGADO!

 
TEXX:


Pode ser escrito com números, para que para os idiotas...

Obrigado de antemão!!!


1.MQL4 Reference (MetaEditor)-->Language Basics-->Operations and Expressions-->Arithmetic Operations
2.Tutorial -->https://book.mql4.com/ru/basics/expressions
x = (10000 * 1,4451) % 10, onde "%" é a operação aritmética "restante da divisão" (em nosso caso por "10"), " * "é a operação aritmética "multiplicação de valores".
 
SeALALex:

Olá, posso me repetir? Estou usando MACDAC como filtro de tendências em minha EA, é possível fazer minha EA começar a analisar os sinais apenas de uma determinada barra no macdak e, se a tendência mudar, começar a analisar os sinais novamente? Por exemplo, MACD>0 inicia uma tendência, começa a analisar os sinais somente após a 15ª barra do macdak que é maior que zero?

OBRIGADO!

Qual é o problema? Lembre-se da barra (tempo) quando o MACD cruzar 0, e para cada nova barra compare o quão longe ela está dela. Se Delta>15 => vá em frente.

 

Por favor, informe o que está errado!



avatar
1
smith 06.09.2011 13:08
Fiz uma dica, por estratégia devo fazer um pedido por hora ao preço de bar aberto (h1) em relação ao preço de bar aberto. Quando testado na barra resultante tudo está OK, mas quando testado em todos os prazos (no entanto, como no comércio real) o tempo todo com cada mudança de preço coloca um pedido um após o outro! (Como posso controlá-lo!? Eu também experimentei no terminal mt4 e mt4. Sugira uma função para este tipo de problema, de preferência com um exemplo.
 
sergeev:

Por favor, informe o que está errado!



1
smith 06.09.2011 13:08
Fiz uma dica, por estratégia devo fazer um pedido por hora ao preço de bar aberto (h1) em relação ao preço de bar aberto. Quando testado na barra resultante tudo está bem, mas quando testado em todos os prazos (no entanto, como no comércio real) o tempo todo com cada mudança de preço coloca um pedido um após o outro! (Como posso controlá-lo!? Também experimentei no terminal mt4 e mt4. Sugira uma função para este tipo de problema, de preferência com um exemplo.

.. Ao testar usando o método "All Ticks".

No início, a variável global é definida (antes do início() ):

datetime TimeHandle = 0;

start() {
   i = 0;                        // Для Советников
   if(TimeHandle!=Time[i]) {
      TimeHandle = Time[i];

   . . . 

   }
}
Razão: