1. novo tick
2. novo acordo no feed
3. mudança de OI (com precisão de 1ms)
mostra que as mudanças de OI acontecem por si só sem carrapatos e sem acordos no feed.
long bool_event_time_last = 0; int OnInit() { EventSetMillisecondTimer(1); MarketBookAdd(_Symbol); MqlTick tick[]; CopyTicks(_Symbol,tick,COPY_TICKS_ALL,0,1); bool_event_time_last = tick[0].time_msc; return(INIT_SUCCEEDED); } void OnDeinit(const int reason) { EventKillTimer(); } void OnTick() { Print("1. tick"); } void OnTimer() { static double open_last = SymbolInfoDouble(Symbol(),SYMBOL_SESSION_INTEREST); double open_current = SymbolInfoDouble(Symbol(),SYMBOL_SESSION_INTEREST); if(NormalizeDouble(open_current,0) != NormalizeDouble(open_last,0)) { open_last = open_current; Print("3. oi change"); } } void OnBookEvent (const string& symbol) { MqlTick tick[]; int ticks = CopyTicks(_Symbol,tick,COPY_TICKS_ALL,0,100); if(ticks<20) return; for(int i=ticks-1;i>=0;i--) { if(tick[i].time_msc <= bool_event_time_last) break; if((int)tick[0].flags<32) continue; Print("2. book deal"); } bool_event_time_last = tick[ticks-1].time_msc; }
Uma pequena EA que marca eventos no log:
1. novo tick
2. novo acordo no feed
3. mudança de OI (com precisão de 1ms)
Mostra que as mudanças de OI acontecem por si mesmas sem carrapatos e sem acordos no feed.
Você mesmo escreveu o código?
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:
https://www.mql5.com/ru/forum/165157/page2#comment_3989978
OI no terminal é atualizado com que periodicidade, do que depende?
Como sincronizar as mudanças de OI com as trocas na alimentação? Quero ter uma alimentação completa com OI.
Se você quiser um livro de pedidos completo, conecte-se através do Plaza. É improvável que o MT5 seja redesenhado para fluxos de estoque.
Outra questão é se você precisa dessa informação completa.
@Andrey Khatimlianskii @Dmitriy Skub
Talvez não haja sincronização no terminal, mas com o código que
apresentado, há algo a falar?
@Andrey Khatimlianskii @Dmitriy Skub
Talvez não haja sincronização no terminal, mas com o código que
apresentado, há algo a falar?
@Andrey Khatimlianskii @Dmitriy Skub
Talvez não haja sincronização no terminal, mas com o código que
É possível dizer alguma coisa?
O que exatamente sobre este código você acha insatisfatório?
O que exatamente está errado com o código?
Tudo de...
CopyTicks(_Symbol,tick,COPY_TICKS_ALL,0,1);
Você não precisa de nenhum temporizador.
É uma obra-prima.
if(ticks<20) return;
e assim por diante...
Tudo de.
Não há nenhuma necessidade de um temporizador.
É uma obra-prima.
e assim por diante...
É muito profissional dar uma olhada no código que você construiu de joelhos em alguns minutos para mostrar a essência do assunto.
O timer é necessário lá, leia o tópico cuidadosamente
É muito profissional dar uma olhada em código que você construiu sozinho em alguns minutos para mostrar a essência da questão.
Precisa de um temporizador, leia cuidadosamente a rosca.
O temporizador NÃO é necessário.
O OnBookEvent não é acionado apenas quando uma transação acontece.
e você DEVE filtrar o símbolo nesta função
void OnBookEvent (const string& symbol) { if(symbol == Symbol()) { .. } }
Esta função "preenche" tudo o que está na análise do mercado.
Por que postar "joelhos descalços"?
Adicionado
"Muito profissional" para aceitar o trabalho
100.00 USD
Нужен софт для отслеживания ленты сделок по каждому тику с указанием изменения ОИ (аналог Time&Sales в платформе Volfix)
E não saber como fazê-lo.
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
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:
https://www.mql5.com/ru/forum/165157/page2#comment_3989978
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.