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
Favor me mostrar o código de referência do indicador, que sempre guarda os últimos 2000 ticks de cada símbolo do Market Watch.
Caso contrário, você fica adivinhando de um lado e apenas recomendações na forma de palavras do outro lado.
Tenho que olhar para o código.
O código acima tem claramente um monte de problemas lógicos e de recursos.
Estou fazendo algo como isto, por favor, aconselhe como e o que ajustar se necessário:
Tenho que olhar para o código.
O código acima tem claramente um monte de problemas lógicos e de recursos.
Há algum problema lógico neste código, ou estou perdendo alguma coisa?
Fórum sobre comércio, sistemas automatizados de comércio e testes estratégicos
Bug MQL5 em acesso iClose/iOpen time series, etc.
Stanislav Dray, 2018.11.14 16:28
Sua atitude em relação aos relatos de insetos é estranha. Não é como se eu fosse pago para provar nada. Eu expus a situação o melhor que pude.
Não sou o único com o problema, o problema surgiu após sua 30ª atualização, mas ainda assim você insinua que eu sou um tolo e culpa alguns indicadores retardados.
Eles não foram lentos por um ano antes disso?
Aqui está um exemplo de código que fica pendurado 25 minutos após o início na M30:
Você deve escrever o indicador com um claro entendimento de que não receberá tudo de uma só vez.
No OnInit você deve estimular o carregamento do histórico dos instrumentos necessários através de chamadas individuais do CopyXXX, mas você tem que esperar pela inicialização completa no OnCalculate.
Sua fase de inicialização parece ter um erro - você está aguardando os dados incorretamente e bloqueando-os.
Vou tentar fazer isso,
Agora eu faço pedidos à OnCalculate e espero lá (não a cada carrapato, é claro, mas apenas a primeira vez do cálculo).
Por favor, mostre-me o código de referência do indicador, que sempre guarda os últimos 2000 ticks de cada símbolo do Market Watch.
Não tenho certeza de como usá-lo, mas tenho certeza de que tenho o direito de usá-lo.
Concordo! É melhor nem mesmo para carrapatos, mas para barras.
Você precisa de um exemplo de um Código Verdadeiro Multimoedas Aprovado.
Caso contrário, ficaremos no escuro.
Tentarei localizar o erro e relatarei à medida que o encontrar.
Concordo! Melhor nem mesmo carrapatos, mas barras.
Precisamos de um exemplo de um Código Verdadeiro Multimoedas Aprovado.
Caso contrário, ainda estaremos no escuro...
Também sempre foi recomendado que, se você estiver trabalhando com o cronograma de outra pessoa - você deve obter OHLC desse cronograma uma vez por minuto (qualquer função CopyXXXX). Este tem sido sempre o caso.
Eu já queria cuspir em tudo o que está acontecendo aqui, mas infelizmente passei cerca de 10 anos com o produto MQ.
Agora é tudo negócio. Vladimir seu conselho sobre o uso das funções CopyXXXX foi usado por mim, porque não foi nenhuma dificuldade do ponto de vista de meu código não-profissional escrito.
Honestamente, eu queria que o problema estivesse apenas em minhas mãos tortas, mas não é só nelas que o problema está. Tenho uma captura de tela abaixo, antecipando explicações estranhas do suporte técnico dizendo que codifiquei incorretamente e 100500 outros indicadores, então o que você quer, haverá problemas. Não tenho outros 100500 indicadores, não há nenhum especialista, tenho apenas duas ferramentas abertas no terminal, o teste do indicador está rodando em EURUSD 1M, o indicador chama os dados do cronograma M15 da mesma ferramenta, não estou tentando carregar outros dados de símbolos, há apenas alguns deles na revisão do mercado.
É uma situação ideal para o terminal em termos de carregamento, o que naturalmente não será o caso em condições de trabalho, mas mesmo neste caso há um problema e, em minha opinião, este problema se chama "BAG".
No indicador as funções iClose e iBars são chamadas apenas para refletir o estado em Commet(). Na revisão do mercado no momento da criação da captura de tela, o estado atual das funções iClose e iBars está na janela do terminal, além disso, a parte de cálculo do indicador usa a função CopyXXXX.
Como você pode ver, o indicador foi recarregado às 16:31 e funcionou com sucesso (eu até estava ficando feliz), mas iClose a atualização de dados parou após 00:15, respectivamente, a função CopyXXXX também não retorna nenhum dado atualizado, ou seja, o erro ocorre em algum lugar nas profundezas da MT.
Na minha opinião, há uma falha ao ler os dados do servidor, os motivos podem ser em massa (sem internet, o servidor estava ocupado, etc.), mas por que o reinício do trabalho após a eliminação das causas de comunicação não acontece, então concluo que você pode testar o código fonte dos usuários tanto quanto quiser, mas se você tiver um servidor ao lado, este problema nunca será identificado, e ele existe e não ocorre apenas por causa do codificador de mão ruim.
Também decidiu testar o código de Stanislav ontem. Após algumas horas, a atualização de tempo parou. Não alterei os prazos, apenas os atualizei através do menu de contexto do gráfico e o tempo continuou.
Hoje modifiquei um pouco o código, para observar também a hora do tempo atual.
Em 15 minutos parou de se atualizar em um prazo "não nativo", mas com o prazo atual estava se atualizando normalmente. Depois de refrescar o gráfico, o tempo começou novamente.
O terminal está funcionando no modo portátil. O sistema e o próprio terminal estão localizados em um disco SSD.
Não sei o que aconteceu, mas quando escrevi o bot para o último campeonato MQ em MQL5, era multimoeda e não notei nenhum problema com o carregamento de dados de outros instrumentos.
Pode ter consumido muitos recursos, mas deu o resultado esperado, e não um jogo de roleta como agora.
Este problema, por exemplo, como desenvolvedor de produtos comerciais para a MQL5, não me caracteriza de forma muito boa e será duplamente desagradável se uma pessoa pagar por um produto comprado no Mercado e parece apenas com defeito por causa de tal "BOGS".