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
Um é suficiente.
Além disso, procuro por "". Eu mesmo sempre uso NULL quando chamo métodos para o personagem atual.
Seu código não dará aceleração.
Acho difícil explicar coisas óbvias. É possível acelerar o GetMarketWatchTick neste código.
Você acha que mesmo que _Symbol seja passado como parâmetro SymbolInfoTick(), uma string será passada para SymbolInfoTick()?
Acho que não há verificações dentro das funções padrão para igualdade de cordas com o símbolo atual, e tais parâmetros explícitos começam a verificar "velocidade total" se um cache para o símbolo atual estiver à mão.
A aceleração ocorre em tempo de compilação, não em tempo de execução.
O compilador faz esta substituição:
Em todos os outros casos, nenhuma substituição é feita.
A aceleração ocorre em tempo de compilação, não em tempo de execução.
O compilador faz esta substituição:
Em todos os outros casos, nenhuma substituição é feita.
Bem. É disso que estou falando - seu código NÃO irá acelerar a função regular para o caráter NÃO atual. Nem irá acelerar o caráter atual.
E o meu não vai. E nunca o fez. Eu também não tinha ilusões a esse respeito. Mas eu sempre uso Symbol() ou NULL ao chamar funções regulares se minha função for passada NULL ou "". Isto chama um código rápido de função regular - onde os dados são retirados do cache para o símbolo atual.
Se minha chamada de função usa Symbol() ou _Symbol - NÃO é verificado dentro da função padrão se ela coincide com o símbolo atual? Será que ele realmente executará o código com verificações de alcance total do símbolo atual? Eu não posso acreditar...
Bem. É disso que estou falando - seu código NÃO irá acelerar a função regular para o caráter NÃO atual. Nem irá acelerar o caráter atual.
Talvez alguém possa lhe explicar isso com mais clareza. Não funcionou para mim.
Talvez alguém possa lhe explicar isso com mais clareza. Eu não entendi.
O que você está fazendo para acelerar as funções regulares?
Você está usando a substituição do valor do caractere atual quando o passa para a função de pessoal para fazê-lo usar os dados para o caractere atual do cache. Isto NÃO acelera a função normal, ele usa sua velocidade para o caráter atual.
Você NÃO PODE acelerar algo do qual não tem acesso à fonte. Você está usando a técnica padrão para chamar a função corretamente. Mas não tenho certeza, se Símbolo é especificado por string como "EURUSD" ao trabalhar em EURUSD, ou seja, está usando o símbolo atual, então a função de pessoal não verificará se a string "EURUSD" é igual a Símbolo() e não usará dados do cache, mas começará a verificar o símbolo na velocidade máxima.
Então, onde está a aceleração da função regular? Se ela existe, é mais do que interessante e útil.
É a mesma coisa no MT4? E no MT5-Tester, como é isso?
É o mesmo com o CopyTicks?
Talvez alguém possa lhe explicar isso com mais clareza. Eu não entendi.
É mais provável que você não tenha entendido minha pergunta. Eu o repeti várias vezes (e esta pergunta NÃO era sobre "acelerar a função regular").
Se um parâmetro de string normal for especificado em vez de Symbol(), _Symbol ou NULL, então são feitas verificações completas e as propriedades são consultadas também.
Por alguma razão, esta explicação não diz que se o parâmetro da string é o mesmo que o caractere atual, então nenhuma verificação é feita em relação ao programa completo.