Quando faz sentido manter parte do código do robô em um indicador? - página 5

 
Andrei01:
Mentira! (c) Uma chamada de função é sempre mais lenta do que o mesmo código sem uma chamada. Basta contar o número de operações de montagem e seu tempo de execução. Só é possível se algum freio for colocado especialmente no Expert Advisor na partida simultaneamente com o indicador (se alguém quiser comparar o desempenho).


Você mesmo em seu fanatismo conta operações de montagem, eu propus uma competição concreta. Vá em frente, escreva um EA com cálculo de EMA nele, você não precisa de nada além de cálculo de EMA, e eu escrevo um indicador EMA e um EA chamando-o - vamos comparar a velocidade de operação.

 
Integer:


Além disso, em um EA, você vai se cansar de fazer algumas das coisas que você faria em um indicador como 2x2.

Tais como?
 
- Diga-me como chegar lá. perguntou Alice.

- Aonde você quer ir? Respondeu o Cheshire Cat.
- Não me interessa.
- Então, você não se importa para onde quer ir.

 
Integer:


Também no Expert Advisor você simplesmente se cansará de fazer algumas coisas, o que no indicador pode ser feito como 2x2.

Se os cálculos forem absolutamente idênticos, por exemplo, o SMA na EA e no indicador é calculado através do ciclo para todo o período, então quando você chama o indicador externo, o teste será um pouco mais longo, em 10-30%.


Por que você usaria um ciclo para calcular o SMA? multiplicar, subtrair, adicionar, dividir e nenhum ciclo. Você não precisa de um indicador para isso. Mas cabe ao usuário descobrir isso. Os cálculos ideais são outra ciência.
 
Vinin:

Então por que usar um ciclo para calcular o SMA? multiplicar, subtrair, adicionar, dividir e nenhum ciclo

Este é um exemplo para comparação. Cálculos idênticos no mesmo volume com e sem chamada de indicador externo.
 
Integer:


Você mesmo pode calcular as operações de montagem em seu fanatismo, eu propus uma competição específica. Vá em frente, escreva um Expert Advisor com cálculo EMA nele, você não precisa de nada além de cálculo EMA, e eu escrevo um indicador EMA e um Expert Advisor chamando-o - vamos comparar a velocidade do trabalho.

Não acredito em movimentos perpétuos e outras maravilhas extraterrestres. ))
A única coisa que resta é o trabalho impróprio do compilador que permite tais coisas.
 
Andrei01:
Infelizmente não acredito em movimentos perpétuos ou outras maravilhas extraterrestres. ))
Isto deixa apenas um compilador defeituoso que permite tais coisas.

Não é o mau funcionamento do compilador, mas o mau funcionamento do codificador
 
Andrei01:
Infelizmente não acredito em movimentos perpétuos ou outras maravilhas extraterrestres. ))
Isto deixa apenas um compilador defeituoso que permite tais coisas.

Não estou sugerindo acreditar, estou sugerindo ser específico - você calcula o EMA somente em Expert Advisor, eu o calculo em indicador e chamo este indicador de Expert Advisor e comparo sua velocidade.
 
Vinin:

Então por que usar um ciclo para calcular o SMA? multiplicar, subtrair, adicionar, dividir e nenhum ciclo. Você não precisa de um indicador para isso. Mas cabe ao usuário descobrir isso. A computação otimizada é uma ciência completamente diferente.
Eu acrescentaria aos cálculos um algoritmo para uma estratégia comercial lucrativa - Diamond Words.
 
Integer:

Não estou sugerindo acreditar, estou sugerindo ser específico - você calcula o EMA somente no Expert Advisor, eu o calculo no Indicator e chamo este indicador de Expert Advisor e comparo sua velocidade.

Então você afirma que o mesmo código no indicador funcionará mais rápido que no Expert Advisor, mesmo sem considerar o tempo de manuseio?
Razão: