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
Mais ou menos cozinhado. As críticas são bem-vindas.
Uma vez que provavelmente vai ser um perito, então:
и:
Aposto em que isso seja garantido. Pelo menos conto com isso a toda a hora, e o problema nunca surgiu.
De qualquer modo, é um momento delicado.
tioVic
Isso é verdade. Mas no meu caso é redundante:
Como se pode ver, se houver um erro nas ferramentas no último ciclo no OnTick, não haverá iteração.
De qualquer modo, é um momento delicado.
tioVic
Isso é verdade. Mas no meu caso é redundante:
Como se pode ver, se houver um erro nas ferramentas no último ciclo, não haverá uma única iteração no OnTick.
Eu não insisto. É só que verificar o resultado da execução é a coisa certa a fazer.
Não estou a forçar. A simples verificação do resultado da execução é a coisa certa a fazer.
Descobri este truque. Se eu executar este guião, ele "fica pendurado".
Mas se estas três linhas (código) forem inseridas primeiro na função OnInit() do Expert Advisor e executar esse Expert Advisor em modo de teste, o resultado será o seguinte:
Primeiro, o código funciona de alguma forma em modo de teste.
Segundo, (mais importante), a história dos primeiros dias de testes perde-se. Assim, no exemplo acima, os testes foram iniciados em 2011.01.03 (como se pode ver nas duas primeiras linhas), mas o testador saltou imediatamente para a frente em 17 dias após o processamento do código (neste caso trata-se de uma linha 2-3), e os testes são continuados sem ter em conta estes 17 dias.
resultando num período de espera de 17,5 dias.
Acabou de apanhar um transbordo aritmético em
e está à espera há 17,5 dias.
Apanhou um transbordo aritmético em
como resultado, tem uma espera de 17,5 dias.
Não estou a discutir sobre "apanhado a transbordar" porque não sei :) A questão é que tal situação deve ser suprimida ou por um compilador ou um testador com um resultado de erro crítico (ou de outra forma). Nem todos serão meticulosos sobre como funcionam os seus programas na ausência de avisos do terminal.
O problema também é visto no facto de o código ser colocado nas primeiras linhas do OnInit() (isto é, antes de qualquer dado histórico ser descarregado) - mas por alguma razão, os dados dos primeiros 17,5 dias são perdidos.
Sim, e funciona no testador porque o Sono é ignorado nele.
Tem tanta certeza de que Sleep() é ignorado? - Veja-se a diferença de tempo terminal entre as linhas 2 e 3.