Um minuto e meio de diferença entre a hora local e a hora do novo tick. O que fazer. - página 5
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
Eu sei, qual é o seu objetivo?
A que:
Na visão geral do mercado ainda há colunas "Volume" "Último comércio" Há uma suspeita de que esta função simplesmente retorna o tempo do último tick.
A funçãoSymbolInfoInteger(_Symbol,SYMBOL_TIME) retorna apenas o momento do último tick. Porque a mudança de uma citação provoca o aparecimento de um novo tique informativo.
Você quer medir o tempo entre a chegada da última cotação e a hora do último tick. Em segundos, parece ser sempre 0. Por isso, o terminal devolve tudo prontamente.
Para:
A funçãoSymbolInfoInteger(_Symbol,SYMBOL_TIME) retorna apenas o momento do último tick. Porque a mudança de uma cotação leva a um novo tique informativo.
Você quer medir o tempo entre a chegada da última cotação e a hora do último tick. Em segundos, parece ser sempre 0. Por isso, o terminal devolve tudo prontamente.
Mais uma vez, o que eu vejo como o problema.
Dado:
A hora local e a hora do servidor estão mais ou menos sincronizadas, ou seja, a diferença entre .time_msc de novos ticks e a hora local é de alguns segundos.
Às 18:00: 00, horário local, você está tentando obter um novo tick por símbolo da SBER com SymbolInfoTick, você obtém um tick com o horário 17:57:00
Às 18:00:01, tentamos fazer um novo tique com o SymbolInfoTick, conseguimos um tique com o horário 17 :58:30.
Eu não acho que isto possa ser chamado de operacional.
Agora eu me afastei do tempo do computador local e uso em vez disso o tempo máximo do último tick entre todos os símbolos da visão geral do mercado.
Mais uma vez, o que eu vejo como o problema.
Dado:
A hora local e a hora do servidor estão mais ou menos sincronizadas, ou seja, a diferença entre .time_msc do novo tick e a hora local é de poucos segundos.
Às 18:00: 00, horário local, você está tentando obter um novo tick por símbolo da SBER com SymbolInfoTick, você obtém um tick com o horário 17:57:00
Às 18:00:01, tentamos fazer um novo tique com o SymbolInfoTick, conseguimos um tique com o horário 17 :58:30.
Eu não acho que isto possa ser chamado de operacional.
Agora eu me afastei do tempo do computador local e utilizo o tempo máximo do último tick entre todos os símbolos da visão geral do mercado.
Você entende que você pode definir qualquer hora no computador? Você não pode usá-lo. Isso já lhe foi dito. Esta é a primeira coisa.
Em segundo lugar, o tempo máximo do último tick entre todos os símbolos da visão geral do mercado não pode ser usado. Você quer encontrar a defasagem do tempo da última citação do símbolo da SBER (SymbolInfoTick) a partir do tempo da última citação do símbolo da SBER (SymbolInfoInteger). Isto é, você tem que fazê-lo mais ou menos como eu escrevi (mais ou menos porque você precisa usar um secador para maior precisão, como você foi aconselhado).
Em terceiro lugar, isto:
É reivindicado sem provas. Se você considerar seu código como prova, veja "segundo".
Você percebe que pode definir o tempo do computador para qualquer coisa? Você não pode estar vinculado a ela. Isso já lhe foi dito. Antes de mais nada.
Você não pode definir a qualquer momento se estiver falando de milissegundos ou mesmo de segundos. Falar de atrasos de minutos é bem possível. Não estou medindo a diferença com ele agora, mas com o tempo máximo .time_msc do último tick para todos os símbolos da visão geral do mercado.
Você quer encontrar a defasagem do tempo da última citação do símbolo da SBER (SymbolInfoTick) a partir do tempo da última citação do símbolo da SBER (SymbolInfoInteger).
Eu não tenho.
Segundo, você também não pode usar o tempo máximo do último tick entre todos os símbolos da visão geral do mercado.
Por que ? Não estou comparando o tempo do último tick ( por computador ) , estou comparando o tempo_msc .
Eu não posso usar seu código sem prova. Se você considerar seu código como prova - veja "segundo".
Normalmente, os desenvolvedores pedem código para reproduzir o problema. Aqui está um atraso de 2 segundos recentemente capturado.
(aproximadamente porque você precisa usar um secador para maior precisão, como você foi aconselhado).
pivomoe:
Somente por estas linhas, parece claro o que você quer. Você está interessado em algo como a sincronização entre símbolos. Ou seja, a relevância geral dos dados sobre os instrumentos que você deseja.
Não posso ajudá-lo com isto no momento, eu não estava envolvido nesta questão. Pergunte aos desenvolvedores.
Somente por estas linhas, parece claro o que você quer. Você está interessado em algo como a sincronização entre símbolos. Ou seja, a relevância geral dos dados sobre os instrumentos que você deseja.
Não posso ajudá-lo com isto no momento, eu não estava envolvido nesta questão. Endereço para desenvolvedores.
Alexey (não queria participar, mas...).
Não é o código de "relevância" (NEW_TICK) da página 2 deste tópico?
Adicionado
Com CUR_TICK, você ainda pode fazer verificações de que é o mesmo carrapato que era ou
o novo pacote de carrapatos contém um carrapato que não estava no pacote anterior.
Alexey (não queria se envolver, mas...).
Este não é o código de "relevância" (NEW_TICK) da página 2 deste tópico?
Aparentemente, não. Desde então:
TimeTradeServer
Retorna o tempo atual estimado do servidor comercial. Ao contrário doTimeCurrent(), o valor de tempo é calculado no terminal do cliente e depende das configurações de tempo no computador do usuário.
Isto é, depende do tempo do computador (não deve ser assim para a exatidão da medição).
O bom aqui, é claro, é verificarse o códigopivomoe está correto, e se realmente houver um bug - entre em contato com os desenvolvedores.
A verificação parece precisar ser feita via TimeGMTOffset. Mais tarde vou esboçar um exemplo.
Aparentemente, não. Porque:
Você olha o código com cuidado!
TimeTradeServer() só é tomado para determinar o dia e pronto (esta verificação é feita "só por precaução")!
TimeTradeServer() não pode ser feito de forma alguma!
Adicionado por
Repito
"Com CUR_TICK, você ainda pode verificar se é o mesmo carrapato que era, ou
o novo pacote de carrapato contém um carrapato não passado no pacote anterior, e o pacote contém 1 carrapato ("antigo")".
O bom aqui, naturalmente, é verificarse o códigopivomoe está correto e, se de fato houver um bug, contatar os desenvolvedores.
O bug aparece ou se há dezenas de caracteres na revisão do mercado ou se há vários caracteres abertos na revisão, mas há várias dezenas de abas no navegador da ópera. Escrevi para os desenvolvedores através de uma mensagem privada.
Como escrevi anteriormente, o problema é resolvido com um sono suficientemente grande entre chamadas, para 40 caracteres o sono(10) é suficiente. À medida que o número de personagens cresce, mais e mais sono é necessário.