![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Surge a pergunta, qual é o efeito - claro que eu vi do código, que na verdade eles removeram "se"? Mas gostaria de fazer um comentário, porque não está claro qual é o ganho em termos de uma lógica mais rápida.
Solução intuitiva - mover o código grande para a função (melhor ainda estaria em separado), livrar-se do if, incrementar e quebrar.
Também estou muito confuso sobre a obtenção dos valores das variáveis a serem analisadas. No exemplo de teste, estes são randoms, mas na realidade? Eu já deixaria lá valores booleanos puros para verificar (bool_a > 10.0) em vez de (double_a).
Nova construção, novo testador, novo compilador... falta a coluna "construir mt5" na tabela de resumo
Até agora o resultado é estável - verificado ontem, portanto não espere saltos de desempenho de construção para construção.
A solução intuitiva é colocar o código grande em uma função (ou melhor ainda, em um inlude separado) e se livrar do if, incrementar e quebrar.
Na verdade, já é uma função, então não está claro porque há tal ganho de desempenho!
Eu uso inlude em meu código de trabalho, mas é puramente migração em código, como você se propõe a organizá-la? O Bray aumenta significativamente o desempenho - como eu me livro dele para não perder velocidade?
Também estou muito confuso ao obter os valores das variáveis analisadas. No exemplo de teste são os randoms, mas na realidade? Eu já deixaria lá valores booleanos puros, para que eu pudesse verificar (bool_a > 10.0) em vez de (double_a).
Na realidade é o mesmo que o dobro - os dados são tirados de um arquivo externo, que é lido completamente no buffer durante a inicialização. Então eu não entendia exatamente como fazer deles um bool.
O 3800x quase alcançou o i7 8700 em termos de desempenho no fluxo. E saiu do 2700.
e o 3800X não deve se afastar do 2700?
Então vou assumir que durante a otimização a freqüência cai simplesmente por ideologia. Por uma questão de interesse, faça um período mais longo de qualquer EA - não 16 passes, mas diga 160 - eu me pergunto como isso muda o tempo do passe - a diferença deve ser mínima - dentro de 1 segundo.
F
PS Talvez você tenha um teste que carrega RAM?
F
PS Talvez você tenha um teste que carrega RAM?
Obrigado, a média foi aproximadamente a mesma dos 16 passes - vamos supor que esses são os dados corretos.
Para a memória, infelizmente, não há nada adequado no domínio público.
O 3800X não deveria ter se separado do 2700?
Eu deveria ter, assumi as razões, para que eu tenha algo em que basear minha escolha de ferro no futuro.
Entendi, obrigado.
O Bray aumenta significativamente o desempenho - como eu me livro dele para não perder velocidade?
Substitui-la por um retorno, como no meu exemplo.
Na realidade também é o dobro - os dados são retirados de um arquivo externo, que é lido completamente em buffer durante a inicialização. É por isso que eu não entendia exatamente como fazer disso um bool.
Em vez de
Faça
Substituir por um retournee, como no meu exemplo.
Em vez de
Faça
Infelizmente, eu não sou inteligente, mas X>=0 pode ser maior que qualquer outro número - há muitas combinações - você não pode prever tudo no código, e o código crescerá em muitas ordens de magnitude devido a várias combinações.