Atualmente, o mql4 só pode fornecer tempo até o segundo mais próximo para a entrada de carrapatos. Usamos a seguinte função:
MarketInfo(Symbol(), MODE_TIME)
1) Existe alguma função diferente que possa fornecer um carimbo de tempo de milissegundos ou que possa ser usado para determinar milissegundos para os dados de carrapato que chegam à plataforma?
2) o novo mql4 que combina funções mql5 será capaz de solicitar ou obter carimbos de tempo de milissegundos (ou subsegundos) nos carimbos de entrada?
Então como a plataforma mt4 (e mt5) deve distinguir corretamente entre carrapatos que chegam "ao mesmo tempo"?
1) GetTickCount(), deve funcionar ao vivo. Sem sentido nos dados históricos.
2) Mesmo o mt5_data não é salvo em milissegundos. No entanto, no_problem Live.
3) Não vejo aonde você quer chegar com isso. Se é o mesmo tempo em milissegundos, então ter milissegundos não ajudaria. Se for diferente em milissegundos do que GetTickCount() pode ajudar. Ajuda no sentido de que seu código processa o tick atual em menos de um milissegundo. O quão importante tudo depende do que você está tentando realizar... eu acho.
4evermaat: Acho que os carrapatos se distinguem pelo Volume. Cada vez que um novo tique é enviado pelo corretor, o Volume aumentará em um. Por exemplo, se você estiver olhando para um gráfico M1, o volume para uma determinada barra é quantos carrapatos foram enviados naquele minuto.
Na verdade, ontem eu tentei fazer uma função que registra o tempo com milissegundos. Ele usou TimeCurrent() e GetTickCount(). Matematicamente, estava certo... mas GetTickCount() não é suficientemente preciso. Descobri que os tempos de eventos de arredondamento até o último segundo (ou seja, apenas usando TimeCurrent() ) tinham erros menores do que minha função... :/
Vou tentar novamente outro dia, mas até onde posso ver, você não pode confiar no GetTickCount() se precisar de precisão dentro de um segundo.
Talvez os especialistas em C++ possam acessar equivalentes mais precisos de GetTickCount()...?
Você tem pelo menos duas opções.
1. Distinguir os carrapatos com o GetTickCount() da MQL, que tem 16 ms de precisão.
2. Acessar o tempo do PC usando GetLocalTime() da Kernell32.dll com precisão de nanossegundos (isto não funciona com emuladores em linux, eles ainda retornam a precisão de 16 ms).
1) Pelos meus testes, não acredito que GetTickCount() tenha uma precisão de 16ms. É verdade, 16ms é o pequeno valor que recebo (com exceção de 0), mas não acho que valores sobre 16ms sejam precisos para os 16ms mais próximos :/
2) Ah, essa é uma ótima idéia. Vou tentar isso.
1) Pelos meus testes, não acredito que GetTickCount() tenha uma precisão de 16ms. É verdade, 16ms é o pequeno valor que recebo (com exceção de 0), mas não acho que valores sobre 16ms sejam precisos para os 16ms mais próximos. :/
2) Ah, essa é uma ótima idéia. Vou tentar isso.
Desculpe, muitas vezes eu mexo com a precisão, não tenho certeza nem mesmo agora qual é qual.
Desculpe, muitas vezes eu mexo com a precisão, não tenho certeza nem mesmo agora qual é qual.
Nem eu, só sei que tenho uma fórmula que deveria funcionar matematicamente, mas na vida real não funciona... então estou culpando a GetTickCount() :)
4evermaat: Acho que os carrapatos se distinguem pelo Volume. Cada vez que um novo tique é enviado pelo corretor, o Volume aumentará em um. Por exemplo, se você estiver olhando para um gráfico M1, o volume para uma determinada barra é quantos carrapatos foram enviados naquele minuto.
Eu já vi isso muitas vezes antes, mas você tem certeza disso? Verifiquei isto algumas vezes em meu corretor ECN e o volume aumenta de forma bem diferente a cada tick, provavelmente são os lotes efetivamente negociados que fluem por meio daquele corretor. Por exemplo, quando eu vender 10 lotes, os próximos lotes de tick serão +10, e não +1.
O volume aumenta em 10 quando você negocia 10 lotes?!? Eu ainda não experimentei isso. Eu dirijo um coletor de carrapatos que registra cada carrapato. Às vezes o volume sobe por 2 ou 3, mas eu adivinhei que eram carrapatos muito rápidos que ou o corretor não enviava, ou chegava enquanto a função Start do meu coletor de carrapatos ainda estava funcionando.
Sim, eu só acho que volume = ticks do googling, mas parece encaixar com os dados que eu estou vendo
Eu já vi isso muitas vezes antes, mas você tem certeza disso? Verifiquei isto algumas vezes em meu corretor ECN e o volume aumenta de forma bem diferente a cada tick, provavelmente são os lotes efetivamente negociados que fluem por meio daquele corretor. Por exemplo, quando eu vender 10 lotes, os próximos lotes de tick serão +10, e não +1.
Atualmente, o mql4 só pode fornecer tempo até o segundo mais próximo para a entrada de carrapatos. Usamos a seguinte função:
MarketInfo(Symbol(), MODE_TIME)
1) Existe alguma função diferente que possa fornecer um carimbo de tempo de milissegundos ou que possa ser usado para determinar milissegundos para os dados de carrapato que chegam à plataforma?
2) o novo mql4 que combina funções mql5 será capaz de solicitar ou obter carimbos de tempo de milissegundos (ou subsegundos) nos carimbos de entrada?
Então como a plataforma mt4 (e mt5) deve distinguir corretamente entre carrapatos que chegam "ao mesmo tempo"?

- 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
Atualmente, o mql4 só pode fornecer tempo até o segundo mais próximo para a entrada de carrapatos. Usamos a seguinte função:
MarketInfo(Symbol(), MODE_TIME)
1) Existe alguma função diferente que possa fornecer um carimbo de tempo de milissegundos ou que possa ser usado para determinar milissegundos para os dados de carrapato que chegam à plataforma?
2) o novo mql4 que combina funções mql5 será capaz de solicitar ou obter carimbos de tempo de milissegundos (ou subsegundos) nos carimbos de entrada?
Então como a plataforma mt4 (e mt5) deve distinguir corretamente entre carrapatos que chegam "ao mesmo tempo"?