OI em atraso (interesse aberto) - página 8

 
Alena Lysenkova:
então por que você está escrevendo aqui?

à vontade

ido

 

Alena Lysenkova

Você está perdendo seu tempo, os clientes estão esperando...

Alena Lysenkova
Alena Lysenkova
  • 2021.01.04
  • www.mql5.com
Профиль трейдера
 
prostotrader:

É o que eu digo "rabiscadores" e seus defensores.

Por que copiar todos os carrapatos quando você está interessado nos negócios?

No código.

Tem que ser.

Renat Akhtyamov:

O que há de errado com isso?

Nem sequer sabe qual deve ser o resultado ou o que fazer por ele.

mesmo os mais experientes não me disseram a resposta a esta pergunta complicada porque é proibido falar sobre ela em cada esquina

Mas sei como conseguir o resultado certo, porque estudo este tema há cerca de 5 anos.

Eu não notei isso, honestamente. A garota fez uma pergunta, cuja essência e você não conhece realmente e poucas pessoas neste fórum para descobri-la, admita com franqueza.

Isto é, com o resto das minúcias ela pode obviamente resolver, ao contrário de muitos "rabiscos" que fazem perguntas de 1ª classe.

E bisbilhotando nas minúcias, ostentando seu suposto conhecimento universal, e até mesmo cometendo erros na mosca em pequenos assuntos, não é tão profissional, e como não é nem como um homem, e como uma avó rabugenta e rabugenta no banco.

 
Aleksey Mavrin:

Eu não notei isso, honestamente. A garota fez uma pergunta, cuja essência você não conhece realmente e poucas pessoas no fórum a descobriram, admita com franqueza.

Isto é, com o resto das minúcias, ela obviamente vai descobrir, ao contrário de muitos "rabiscos" que fazem perguntas de 1ª classe.

E bisbilhotando nas minúcias, mostrando seu suposto conhecimento universal, e até mesmo cometendo erros na mosca em questões menores, não é que não seja tão profissional, e de alguma forma nem mesmo como um homem, e como uma avó rabugenta em um banco.

É isso mesmo.

O OI não é uma coisa tão simples como poderia parecer à primeira vista, que eles ficam felizes em escrever por centavos a qualquer um que o deseje.

e o que tem sido discutido aqui desde a página 2 não está nem perto.
 
Renat Akhtyamov:

É isso mesmo.

O OI não é uma coisa tão simples como poderia parecer à primeira vista, que eles estão felizes em escrever por centavos a qualquer um que o deseje.

E o que tem sido discutido aqui desde a página 2 não está nem perto.

Bem-vindo de volta)

É isso mesmo, que a pergunta é difícil e específica e feita com o grau de compreensão necessário (bem, talvez sem conhecimento profundo), enquanto todos os "mega-guru" mostram seu ego pegando vírgulas no código de verificação de teste em tom pejorativo, quando eles mesmos ainda estão confusos sobre os conceitos.

Pouco profissional e feio. Os homens normais responderam em essência, acho que a questão está resolvida)

 
Dmi3:

Eu posso ser brusco: preciso de um motor assíncrono, mas o mecanismo com os magos tortos que o prostotrader usa não me convém em nada.

Como escrever este motor corretamente, ainda não entendo. Você quer? ;)

Por que você precisa de um motor assíncrono? Se você dirigir duas pernas, você cita a primeira perna com limite e bate a segunda perna com marcador quando a primeira perna é acionada. É possível e útil fazer sem asinchar aqui. Sintéticos compostos multicaracteres - sim, o asynch será útil. Mas você ainda terá de enfrentar a verificação de liquidez de cada símbolo. Não será suficiente criar uma posição com entradas consistentes. A propósito, asynh trabalha tão lentamente quanto a colocação não-síncrona de pedidos. Portanto, se você precisa de rapidez para fazer um único pedido, ele certamente não deve ser assíncrono.

 
Alena Lysenkova:

Por que em mudança terminal de interesse aberto:
SymbolInfoDouble(Symbol(),SYMBOL_SESSION_INTEREST)
vive sua vida em relação à fita?
Válido OnBookEvent(const string& symbol)

Até onde eu entendo o mercado futuro, as transações na fita não podem causar mudanças no OI. Mas por que o OI muda por si só sem nenhuma transação?
Isto já foi visto antes:


OI no terminal é atualizado com que periodicidade, do que depende?
Como sincronizar as mudanças de OI com as trocas na alimentação? Quero obter uma alimentação completa com OI.

O OI muda se e somente se houver um comércio (Último). A rigor, um participante pode entrar no mercado após concluir um negócio e o outro participante sai do mercado com o mesmo negócio. Neste caso, mesmo quando um acordo é feito, a OM não mudará. Portanto, o evento OnTick() deve ser sincronizado com as mudanças de OI. Se não for assim no caso da MT, significa que os canais de comercialização de OI e carrapatos são diferentes. Estas são fontes diferentes que estarão ligeiramente fora de sincronia no tempo. Entretanto, este é o máximo que pode ser alcançado. Análise de alimentos comerciais, temporizadores - tudo isso é algo sem sentido. O programador neste caso tem apenas uma possibilidade: obter o valor mais próximo conhecido de OM, no momento da chegada de um novo tick. Os dois valores serão sincronizados um com o outro na medida do possível. Mas não haverá uma sincronização perfeita.

Mas o acesso OI em tempo real, proporcionado pela troca, é a exceção e não a regra. Em outros intercâmbios, o OI é apenas um valor de referência publicado no final do dia. Portanto, a MOEX deve ser elogiada por esta incrível oportunidade de observar a OM em [quase] tempo real.

 
Vasiliy Sokolov:

O programador tem apenas uma opção neste caso: obter o valor de OI mais próximo conhecido, no momento em que o novo tick chega. Os dois valores estarão o mais sincronizados possível um com o outro. Mas não haverá uma sincronização perfeita.

Assim o fiz, e já descobri que os dados não estão sincronizados.

Vasiliy Sokolov:

A análise da alimentação dos ofícios, os temporizadores são todos algos inúteis.

É mais para experimentação, a fim de entender pelo menos alguma correlação.

Vasiliy Sokolov:

Entretanto, observarei que o acesso OI em tempo real proporcionado pela troca é a exceção e não a regra. Em outros intercâmbios, o OI é apenas um valor de referência publicado no final do dia. Portanto, o MOEX deve ser elogiado por uma oportunidade tão fantástica de observar a OM em [quase] tempo real.

O Volfix nos mesmos instrumentos dá uma mudança na OI imediatamente na alimentação. Portanto, MOEX fornece tais dados. Mas em Mt5 não há sincronização por algum motivo.


Seria bom apenas entender como isto funciona em geral no terminal. O OI é atualizado com alguma periodicidade, ou apenas atrasa.
Como isto permitiria ao menos que a mudança de OI fosse ligada à fita, com o mesmo atraso.

 
Vasiliy Sokolov:

Por que você precisa de um motor assíncrono? Se você dirigir duas pernas, você cita a primeira com limite e acerta a segunda com marcador quando a primeira é acionada. Aqui você pode fazer sem assíncrono e útil. Sintéticos compostos multicaracteres - sim, o asynch será útil. Mas você ainda terá de enfrentar a verificação de liquidez de cada símbolo. Não será suficiente criar uma posição com entradas consistentes. A propósito, asynh trabalha tão lentamente quanto a colocação não-síncrona de pedidos. Portanto, se você precisa de velocidade para a abertura de um único pedido, não deve se concentrar no asynch.

De fato, ela só é necessária para arbitrageurs com três e quatro pernas. Eu não tenho tantos deles, apenas algumas dezenas, e por enquanto uso apenas o motor síncrono.

Sei que o assíncrono não aumenta a velocidade, entendo a física do processo e também entendo porque os números mostrados pelo terminal para assíncrono são menores do que os síncronos.

É por isso que decidi que eu mesmo não quero lidar com um assíncrono. Prefiro fazer algo mais útil para o comércio. E não há ninguém para encomendá-lo, porque não há especialistas que entendam todas as armadilhas que ocorrem no comércio real, não no comércio de provadores.

E quanto à velocidade, há apenas um sonhador ridículo aqui neste fórum que planeja um dia ganhar o LCI com o HFT:) no MT5 e certamente não sou eu.
 
Alena Lysenkova:

Eu fiz, e descobri que os dados estavam dessincronizados.

Isto é mais uma experiência para ver se existe alguma correlação.

O Volfix nos mesmos instrumentos dá uma mudança no OI imediatamente na fita. Por isso, MOEX fornece tais dados. Mas em Mt5 não há sincronização por algum motivo.


Seria bom apenas entender como funciona em geral no terminal. A atualização do OI acontece com alguma periodicidade, ou apenas com um atraso.
Uma vez que isso lhe permitiria, pelo menos de alguma forma, amarrar a mudança de OI à fita, com o mesmo atraso.

Bem, como você o ligaria? Suponha que a chegada do OI fique atrás dos carrapatos. Então na OnTick, você precisa obter a última e antiga OI (ainda não há nenhuma nova na MT5) e estar satisfeito com ela. Se os carrapatos, ao contrário, ficam para trás, então, falando de modo geral, é porque os carrapatos na MT5 ficam atrás de todo o fluxo de dados, o que é visto por outros participantes do mercado. Mas vamos supor. Em seguida, ajustamos o temporizador para receber um novo valor de tick o mais rápido possível, e o tick antigo é salvo e combinado com este OM. Mesmo assim, é ruim - haverá um OM atual e um velho e irrelevante último tique associado a ele. Além disso, o timer normal é inferior a 16 msec. Você não vai - multithreading preemptivo. Você terá um temporizador torto com um intervalo bastante grande de vários msec, o que é difícil de entender quando ele será chamado. Você também não será capaz de encher o Expert Advisor com Sleep() de uma maneira normal. Requer uma resolução muito alta. Em qualquer caso, ou você terá um OM atrasado ou um tick.

Razão: