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
Oh, luz ao fundo do túnel! Deve chamar o EventSetTimer( ) dentro do próprio OnTimer()? Irei sem dúvida tentar quando chegar ao terminal. Obrigado pela solução inteligente!
Eu sempre vi esta solução.
Só ainda não tentei a melhor maneira de
EventKillTimer() ou EventSetTimer(0); para matar o temporizador.
Milissegundos é muito desejado. Associo-me aos desejos.
Agora é perigoso em Expert Advisor. Por exemplo, a função sincronizada MessageBox() pode rapidamente fazer fila quando o utilizador deixa o terminal (claro que se pode dizer que o temporizador pode ser desactivado antes de tais funções).
Mas se eles fizessem o tratamento de interrupções...
Já não é possível ir a milissegundos.
Quantos Consultores Especialistas que já foram escritos irão começar a gerar 1000 vezes mais eventos temporais do que o pretendido pelo autor?
Não, não... Não é necessário mudá-lo dessa forma. Basta adicionar uma nova função EventSetTimerMS(long ms);
É necessário deixar o antigo, apenas por compatibilidade. (Pode ser facilmente emulado chamando EventSetTimerMS(1000); )
Isto é agora perigoso no Expert Advisor. Por exemplo, a função sincronizada MessageBox() pode rapidamente fazer fila quando o utilizador deixa o terminal (claro que se pode dizer que o temporizador pode ser desactivado antes de tais funções).
Se ao menos fizessem um tratamento de interrupção...
Não use interrupções. Mas não sei a que se refere, talvez seja uma boa... :)
Sobre filas - também podem ser usados segundos, se for dormir. :) Não a utilize se não souber como processar as consequências - é uma receita simples e universal.
......... Por exemplo, a função sincronizada MessageBox(), pode rapidamente fazer fila quando o utilizador se afasta do terminal.(Claro que pode dizer que pode desactivar o temporizador antes de tais funções) ........
Quantos peritos já escritos irão começar a gerar 1000 vezes mais eventos temporais do que o autor pretendia?
Apenas uma opinião: e se existe a própria possibilidade de adicionar milissegundos para aqueles que o querem, e o problema está apenas nos antigos EAs, então porque não introduzir uma nova função
Faça tudo em vários segundos, e se a troca===falso, multiplique o valor de segundos uma vez por 1000 (para os antigos EAs, por exemplo).
Isto é agora perigoso no Expert Advisor. Por exemplo, a função sincronizada MessageBox() pode rapidamente fazer fila quando o utilizador deixa o terminal (claro que se pode dizer que o temporizador pode ser desactivado antes de tais funções).
Mas se eles fizessem o tratamento de interrupções...
OnTimer, OnTick, OnTrade... Estas são as interrupções.
OnTimer, OnTick, OnTrade... Estas são interrupções.
Uma interrupção é quando o OnTick está a ser executado e um evento mais importante, como o OnTimer, chegou. OnTick é pausado, o código OnTimer é executado, depois OnTick continua a correr novamente.