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
Vamos consertá-la em quatro - exageramos com a descarga agressiva de gráficos não utilizados.
Renat, você leu meu post inicial? Por que não está em uso? Há consultas a cada tique, muito mais frequentemente do que uma vez a cada 10 segundos. Ou não utilizado = não aberto? Por favor, esclareça.
Muito feliz, entretanto, por ter escutado o que eu disse.
Se a função MT5SeriesInfoInteger não for utilizada, e em vez dela utilizarmos as antigas funções MT4, iBars, iTime, MarketInfo, etc., então o problema permanece?
Usando o iTime( _Símbolo, ponto, barras( _Símbolo, ponto )-1 ) podemos obter o tempo da primeira vela disponível no gráfico.
Mas para conseguir o tempo da primeira vela no servidor, ainda não decidi qual a construção a usar.
Usando SeriesInfoInteger fazemos isso de forma muito simples: SeriesInfoInteger( _Símbolo, ponto,SÉRIE_SERVER_FIRSTDATE);
Renat, você leu meu post inicial? Por que ele não está sendo usado? Há consultas a cada tique, muito mais frequentemente do que uma vez a cada 10 segundos. Ou não usado = não aberto? Por favor, explique.
É por isso que escrevo "descarga super-agressiva".
Com certeza, vamos analisar o assunto.
Usando o iTime( _Símbolo, ponto, barras( _Símbolo, ponto )-1 ) podemos obter o tempo da primeira vela disponível no gráfico.
Mas para conseguir o tempo da primeira vela no servidor, ainda não decidi qual a construção a usar.
Tudo é feito simplesmente com SeriesInfoInteger: SeriesInfoInteger( _Symbol, period,SERIES_SERVER_FIRSTDATE);
Mas o MT4 não o carrega completamente antes de chamar as séries cronológicas? Então, se iBar chama uma série de tempos "desconhecida" no script MT4 com um intervalo de um segundo, o resultado será diferente?
Veja também. Você pode limitar a disponibilidade do histórico ajustando o terminal para Max barras na janela. Então, haverá mais histórico no servidor do que no gráfico. É lógico.
Se você se dirigir através da função SeriesInfoInteger(), então, para ter sempre acesso aos dados, se esta função retornar 0, chame a função iTime() a partir do símbolo/período necessário. Mas isto, em primeiro lugar, não está documentado em nenhum lugar e, em segundo lugar, não é correto, porque é garantido obter dados da função, você só pode usar outra função. Então por que precisamos desta função!
Mas como eu disse, a propriedadeSERIES_SERVER_FIRSTDATE não parece estar duplicada. O que significa que, pelo menos por este motivo, a função SeriesInfo... é necessário.
Se, por outro lado, a função SeriesInfoInteger() for chamada, a fim de ter sempre acesso aos dados, se esta função retornar 0 - chamar a função iTime() a partir do caráter/período desejado.
Eu entenderia a relevância deste problema se de repente, em vez de obter dados da TF que você está procurando, as funções do MT4 - iHigh, iLow, ... iBars etc. erro retornado (0). As funções do MT5 simplesmente não são necessárias no MT4, não há carregamento assíncrono de dados, tanto quanto eu entendo. E não vale a pena complicar as coisas.
Se faz sentido ou não, é outra questão.
Mas mais uma vez, não sei como obter a data da primeira barra disponível no servidor por símbolo, a não ser através da função SeriesInfoInteger(). Talvez você saiba?
Se faz sentido ou não, é outra questão.
Mas mais uma vez, não sei como obter a data da primeira barra disponível no servidor por símbolo, a não ser através da função SeriesInfoInteger(). Talvez você saiba?
Por que você precisa obtê-lo?
Se pelo menos porque está declarado na documentação e eu quero utilizá-lo.
Para baixar e verificar o histórico, similar ao MT5: https://www.mql5.com/ru/docs/series/timeseries_access
Repito minha pergunta, você sabe como obter esta data por meio do antigo mql4?