Quais os instrumentos para negociar na Otkritie - página 9

 
Anton Zverev:

Preciso escrever uma função que devolva carrapatos de uma data para a outra. Se bem-sucedido, seria verdade, caso contrário seria falso.

E eu não consigo escrever um disparate desses. Porque eu não sei o que fazer com a assincronia. O exemplo de Renat através do OnTimer é provavelmente uma opção. Mas definitivamente não da maneira que ele citou. OnTimer pode ser usado para muitas coisas.

Em resumo, uma função elementar de data até a data pode ser trazida para fazer com que ela funcione.

Os volumes dos carrapatos das barras são completamente inconsistentes com o que está sentado nos carrapatos, portanto não está claro quantos carrapatos consultar.

O roteiro pede dados de uma determinada data.

Aqui está o resultado de duas execuções do roteiro em intervalos de poucos minutos:

2016.04.22 11:32:38.538 CopyTicks_1_02 (RTS-6.16,H3)    Получено тиков: 409 код ошибки: 0
2016.04.22 11:32:38.538 CopyTicks_1_02 (RTS-6.16,H3)    Тик: 2016.04.22 11:30:00 bid: 92480.0 ask: 92540.0 last: 92520.0 [0]
2016.04.22 11:32:38.538 CopyTicks_1_02 (RTS-6.16,H3)    Тик: 2016.04.22 11:32:38 bid: 92380.0 ask: 92390.0 last: 92380.0 [408]
2016.04.22 11:32:38.538 CopyTicks_1_02 (RTS-6.16,H3)    Size 0 Mb
2016.04.22 11:34:26.502 CopyTicks_1_02 (RTS-6.16,H3)    Получено тиков: 632 код ошибки: 0
2016.04.22 11:34:26.502 CopyTicks_1_02 (RTS-6.16,H3)    Тик: 2016.04.22 11:30:00 bid: 92480.0 ask: 92540.0 last: 92520.0 [0]
2016.04.22 11:34:26.502 CopyTicks_1_02 (RTS-6.16,H3)    Тик: 2016.04.22 11:34:26 bid: 92410.0 ask: 92440.0 last: 92420.0 [631]
2016.04.22 11:34:26.502 CopyTicks_1_02 (RTS-6.16,H3)    Size 0 Mb

Ou seja, os carrapatos são solicitados a partir de uma determinada data até o momento atual.

Arquivos anexados:
 
Karputov Vladimir:

O roteiro pede dados de uma determinada data.

Este é o resultado de duas execuções do roteiro em intervalos de poucos minutos:

Ou seja, os carrapatos são solicitados a partir de uma determinada data até o momento atual.

Não entendo porque você cita um código inferior até mesmo à documentação em termos de informação. Obrigado, é claro. Mas não foi nada disso que eu pedi.

O código de Renate é muito melhor, mas não é o mesmo de todo.

 
Renat Fatkhullin:

Não, todos os ticks previamente baixados para cada servidor comercial são armazenados em cache localmente e extraídos automaticamente.

Há uma captura de tela dos arquivos de tick na página anterior.

Obrigado, eu não estudei a pasta Bases em detalhes.

Como posso solicitar copyticks no OnTester para obter todos os ticks que foram passados?

 
Anton Zverev:
Como podemos consultar os copyticks no OnTester para obter todos os ticks que foram passados?

No atual beta (lançamento de hoje), ligue para CopyTicks e receba as últimas dezenas de milhares de carrapatos.

O testador usa um buffer de anel para armazenar carrapatos sem a capacidade de obter milhões de carrapatos. É caro armazenar todos os carrapatos, daí o buffer de anéis. Mas talvez possamos mudar este comportamento.

 
Anton Zverev:

Não entendo porque você cita um código menos informativo do que até mesmo a documentação. Obrigado, é claro. Mas não foi nada disso que eu perguntei.

O código de Renate é muito melhor, mas não é de modo algum.

Meu código é apenas para demonstração de princípio "para receber carrapatos muito profundos você deve ligar para CopyTicks várias vezes para esperar pela paginação". OnTimer é bom para isso.
 
Renat Fatkhullin:

No atual beta (lançamento de hoje), ligue para CopyTicks e receba as últimas dezenas de milhares de carrapatos.

O testador usa um buffer de anel para armazenar carrapatos sem a capacidade de obter milhões de carrapatos. É caro armazenar todos os carrapatos, daí o buffer de anéis. No entanto, podemos mudar este comportamento.

Como podemos determinar o tamanho do buffer de anéis sem ter que consultar cada carrapato (muito caro de se fazer no testador)?

Digamos que o buffer de anéis é 10000. Depois, chamarei copyticks a cada 10000 para ter certeza de que não haverá saltos. Mas parece haver um problema na forma de carrapatos com uma única vez (com precisão a msec). Eu os tenho na troca. Não quero contá-los duas vezes, solicitando copyticks desta vez em ms.

 
Renat Fatkhullin:
Meu código é apenas para demonstrar o princípio "para receber carrapatos muito profundos você tem que ligar várias vezes para CopyTicks para esperar pela paginação". O OnTimer se adapta bem a ele.

Percebi que era para fins de demonstração. É por isso que a OnCopyTicks veio imediatamente à mente.

Ajude-me com isto, estou tendo problemas com um ou outro.

Anton Zverev:

Preciso escrever uma função que devolva carrapatos de uma data para outra. Se tivesse sucesso, seria verdade, caso contrário seria falso.

 
Anton Zverev:

Não entendo porque você cita um código menos informativo do que até mesmo a documentação. Obrigado, é claro. Mas não foi nada disso que eu perguntei.

O código de Renate é muito melhor, mas não é o mesmo de todo.

Se você precisa ir de (data antiga) para (data jovem), você precisa assim:

Tiquetaques de consulta (com uma margem) de "data antiga". Na matriz recebida vá do índice "0" e verifique a data. Assim que você encontrar a primeira ocorrência (data jovem), você a memoriza (indexar data jovem). Neste ponto, você determinou que o conjunto de carrapatos do índice 0 até (indexar data jovem) contém os carrapatos que você deseja.

 
Seria bom adicionar uma função para verificar o status de ticks carregados/injetados - no banco de dados do terminal local. Algo como CheckXXX( símbolo ). Para que você não tenha que continuar puxando a copiadora o tempo todo.
 
Karputov Vladimir:

Se você quiser ir de (data antiga) para (data jovem), faça o seguinte:

Tiquetaques de consulta(com uma margem) de "data antiga". Na matriz recebida, vá do índice "0" e verifique a data. Assim que você encontrar a primeira ocorrência (data jovem), você a memoriza (indexar data jovem). Neste ponto, você determinou que o conjunto de carrapatos do índice 0 até (data do índice jovem) contém os carrapatos que você deseja.

Com uma reserva é um desperdício. Eu faço o pedido padrão (2000 carrapatos, eu acho), e continuo a partir do ponto (é fácil conseguir carrapatos duplicados), onde eu terminei.

Não entendo por que não existe tal função por parte dos próprios desenvolvedores. Por que não sobrecarregar os copyticks com outra opção de trabalho?

Razão: