
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
Veja o cronograma do registro. Tudo isso aconteceu em um ms, e ao lado dele (no mesmo ms) um monte de OnBooks.
Você pode contar todos os eventos por balcões, mas mesmo visualmente você pode ver que há mais OnBooks.
Você não escreveu que usa encomendas da Async?
Eu estava me perguntando, que algoritmo você usa para controlar a execução dos negócios?
Andrew, os números lá são fixos em microssegundos quando o OnFunctions é acionado, e tudo é impresso junto, então, a partir da matriz. OnBooks no total pode ser mais - eu vou contar, mas não está claro porque eles saltam à frente dos OnTicks na fila ou o quê. Ou nem todo OnTick corresponde a um OnBook?
bem-vindo ao mundo do trabalho em rede ))))
A coisa mais fácil a fazer é administrar oNetstat - a -b sob o administrador.
Você verá portas e software, eu não quero incomodar, mas acho que o servidor MT5 passa de forma assíncrona pacotes com informações diferentes que o terminal coloca nas "prateleiras" necessárias.
SZZY: sobre a impressão() e a omissão de impressões se você imprimir muitas de cada vez, você sabe? - Basta escrever suas informações no arquivo - assim você salvará tudo e em ordem, mas não se esqueça de fechar o arquivo antes de fechá-lo. Em teoria e impressão() nos logs do arquivo devem estar completos, mas não verificaram e, em geral, não confio se muitos dados saem. Discutido aquihttps://www.mql5.com/ru/forum/329730, muito freqüentemente "impressões faltantes" são discutidas )))) - pesquisa
Andrew, os números são fixos em microssegundos quando o OnFunctions é acionado, e depois impressos todos juntos a partir da matriz. Talvez haja mais OnBooks no total - eu os contarei, mas não está claro porque eles saltam à frente dos OnTicks na fila. Ou nem todo OnTick corresponde a um OnBook?
Entendi.
Bem, há muitos OnBooks por aí de qualquer maneira. É difícil tirar qualquer conclusão com um tronco como esse.
Pensei que você tinha escrito que estava usando pedidos da Async?
Eu estava me perguntando, que algoritmo você usa para controlar a execução do comércio?
Na OnTradeTransaction()+ função de verificação se não houver resposta do servidor por um longo tempo.
Geralmente por magia.
Eu reservo 65535 símbolos mágicos para cada símbolo ao definir um EA,
e ao enviar um pedido eu lhe atribuo um número mágico único que não intercepta de forma alguma outros símbolos.
que não se sobrepõe de forma alguma a outros instrumentos.
É assim que eu defino o número mágico inicial para um símbolo
Magia - ulong (8 bytes), por exemplo
GAZR-3.12
Byte[7] (byte alto) é "G".
Byte[6] é "A".
Byte[5] para "Z".
Byte[4] é "R
Byte[3] é "3
Byte[2] é "12".
Byte[1] e Byte[0] são magiks de reserva (65535)
É assim que eu passo pelos magos ao enviar um pedido:
Mas isso só funciona para FORTS, pois os nomes dos símbolos são padronizados!
Adicionado
Se o pedido for enviado com sucesso, então
lembrar o tempo
E então (se não houver resposta na OnTradeTransaction)
E então a própria funçãoFindOrderBuyMagic
Adicionado por
"Boa idéia" para adicionar o identificador EA (0-255) ao primeiro byte do automágico,
mas ainda não preciso disso, então ainda não o fiz :)
Na OnTradeTransaction()+ função de verificação se não houver resposta do servidor por um longo tempo.
Obrigado pela dica.
1. O segundo terminal e os terminais subseqüentes no corretor são pay-as-you-go e eu não tenho estratégias onde eu negocio somente ações(carteiras de ações).
2. Se você vai emitir aGetMicrosecondCount() acumulada, então
fazê-lo sem temporizador no OnDeinit(), quando a EA sair, tudo será impresso.
Por favor, envie-me o link para o corretor, é possível na LC.
Este é um ramo interessante... :-)
bem-vindo ao mundo do trabalho em rede ))))
A coisa mais fácil a fazer é administrar oNetstat - a -b sob o administrador.
Você verá portas e software, eu não quero incomodar, mas acho que o servidor MT5 passa de forma assíncrona pacotes com informações diferentes que o terminal coloca nas "prateleiras" necessárias.
HH: Você sabe sobre Impressão() e pulo de impressões, se você as imprimir muitas de uma só vez? - Basta escrever suas informações no arquivo - assim, você salvará tudo em ordem, mas não se esqueça de fechar o arquivo antes de fechá-lo. Em teoria e impressão() nos logs do arquivo devem estar completos, mas não verificaram e, em geral, não confio se muitos dados saem. Discutido aquihttps://www.mql5.com/ru/forum/329730, muito freqüentemente "impressões faltantes" são discutidas )))) - pesquisa
Igor, a perda de impressões é discutida por aqueles que ainda não abriram o arquivo de registro, cem vezes e o próprio Rinat Fatkullin escreveu que nada está perdido no arquivo de registro. Mas para seu cargo não foi em vão :) Eu adicionei a saída em um arquivo separado, além de ter feito o segundo arquivo, onde eu saio um pouco diferente (coletando todos os eventos no CArrayObj) para contornar possíveis erros do meu projeto, que ordena dois arrays, ou seja, eu coloco tudo no CArrayObj a partir de dois arrays, depois ordeno por microssegundos e saio com marcação de qual evento Tick ou Book.
E sim, o que isso tem a ver com portos, o que isso tem a ver com isso? Estou apenas testando a fila de eventos da EA. Se um tick chegar, dois eventos devem ser formados - OnTick, e OnBook correspondente, e OnBook é sempre colocado em fila, e OnTick pode desaparecer se já houver OnTick na fila (como no manual), ou seja, OnTick pode desaparecer se já houver OnTick na fila (como no manual). a situação quando um após outro OnTick sem o OnTick só pode ser se 1. o OnTicks for "sem fila" 2. houver um atraso do sistema OnBook, isto é o que eu quero verificar, isto pode explicar o atraso de segundos, previamente identificado pelos colegas. O Total OnBooks é 2+ vezes mais em um dia, mas por que eles estão atrasados? Se este atraso é devido a pacotes assíncronos e análise, talvez, mas eu só verifico o fato da chegada deles no Expert Advisor até agora. Como testar com o resto das nuances em mente, ainda não pensei sobre isso.
Aqui está o novo código, ao abrir vou testar a exatidão do trabalho e correr para o dia.
s.w. A razão também pode ser: se Tick passou pelos mesmos preços sem mudar o copo - OnBook não é formado? Eu não sou especialista em negociação de ações, quem pode me dizer. Pensei que OnTick sempre causa OnBook.
Mas me pergunto se o responsável está satisfeito com as respostas à sua pergunta.
Eu já recebi todas as respostas e tirei minhas próprias conclusões.
Preciso analisar a faixa de ofícios por um período fixo de tempo - preços de ofícios, volumes realizados, etc.
Também preciso simular o funcionamento do algoritmo no testador de estratégia.
O evento OnTick lida perfeitamente com isso, os resultados da negociação real e os resultados da modelagem no testador concordam com um pequeno erro para minha satisfação.
Se você precisar de uma análise mais rápida da tira, você pode usar o OnTimer.
E não é necessário que cada carrapato que chega ao terminal seja colocado no OnBook - esta é a especificidade da execução de ordens do mercado.
E cada carrapato que entra no terminal não precisa necessariamente entrar no OnBook - é específico para a execução de ordens de mercado.
Pelo contrário, cada carrapato(evento) que chega ao manipulador OnTick deve ser sincronizado com o OnBook.
Há três eventos no manipulador OnTick, a mudança do preço da melhor oferta, a mudança do preço da melhor oferta, e a(última) negociação.
Se o preço de compra ou venda mudar sem uma negociação, este será um evento e a OnTick receberá estes eventos.
E a OnBook também tem que pegar esses eventos, mas seus próprios eventos, seu manipulador, caso contrário haverá um descompasso de lances e preços de compra entre manipuladores.
E se a OnTick recebe um último evento, significa que uma troca já passou.
O comércio gera o evento na OnTick, porque após o comércio o preço ou o volume das ofertas e pede para mudar no mercado.
É um círculo vicioso.
Tanto no OnTick como no OnBook, há um evento Best Bid e Best Ask.
Estes eventos devem ser sempre síncronos em ambos os manipuladores.
E o evento por si só, ele gera um evento no OnBook após o comércio.
Portanto, qualquer evento que chegue ao manipulador OnTick deve ser refletido de forma sincronizada no OnBook.