![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Talvez apenas fazer alguns testes e as perguntas desapareçam?
Talvez. Eu gostaria de ter mais tempo para fazer os testes eu mesmo :(
Talvez apenas fazer alguns testes e as perguntas desapareçam?
Os testes só mostram uma diferença na primeira vez que você começa.
Símbolo(), _Entradas de símbolo são equivalentes a NULL (onde NULL é permitido ao invés do nome do símbolo).
Neste caso, não há verificação extra da existência do símbolo atual, da presença do símbolo atual no Market Watch e das propriedades de chamada desnecessárias do símbolo atual, uma vez que as propriedades do personagem atual estão em cache.
Ou seja, se um parâmetro de string normal for especificado em vez de Symbol(), _Symbol ou NULL, então verifica o programa completo e mais chamadas de propriedade
Pergunta:
- comportamento das chamadas SymbolInfoXXX nestes dois casos, será que elas serão diferentes por mais do que um cheque?
?
A propósito, a partir dos novos registros de hoje da última versão de lançamento do MT5:
Eram 3 EAs pairando em 1 símbolo, cada um em seu próprio gráfico. E o pedido continua a cada tique. Tais picos são naturalmente pouco freqüentes, mas na verdade 1 pedido de novos carrapatos vindos do último carrapato foi executado 700 ms.
Estou monitorando há cerca de 12 horas, mas já posso ver os atrasos ultrapassando todos os limites.
3 EAs, cada um em seu próprio gráfico, todos em 1 símbolo, estão solicitando carrapatos antigos do tick anterior via CopyTicksRange. E a defasagem é de quase 9 segundos. E parece que este não é o limite. O mais provável é que o tick store seja um recurso compartilhado ao qual o acesso é sincronizado, mas mesmo com uma sincronização muito horrível não deveria haver tais momentos.
Alguns diriam que se trata de uma falha única. Nessas 12 horas de monitoramento, infelizmente, houve mais de cem saídas de 1 segundo. E estas não mais parecem explosões pontuais. Parece que muitas vezes havia vários carrapatos entrando ao mesmo tempo, que é o que está causando estes picos.
Mesmo que fechemos os olhos para o fato de que 3 EAs lutaram por um recurso comum, vamos olhar para o outro monitoramento:
Havia apenas 1 Expert Advisor sobre o símbolo. E ainda um segundo e meio. Não foi o único, havia outros EAs em outros símbolos, mas não é multi-tarefa? Ou carrapatos para símbolos diferentes ainda podem se retardar um ao outro?
Esta é uma funcionalidade básica para EAs básicos. A plataforma é posicionada como uma plataforma de negociação algorítmica. Dito isto, a funcionalidade básica levanta fortes questões. Um grande pedido para voltar a olhar para ele. Tenho quase certeza de que há espaço para melhorias em algum lugar. Ou seria muito grato por poder receber os últimos carrapatos desde que a função foi chamada, como sugerido aqui
Fórum sobre comércio, sistemas comerciais automatizados e estratégias comerciais de teste
MT5 e Velocidade em Ação
fxsaber, 2021.03.01 07:28
Por favor, pense em tal característica.
O problema de obter NOVOS carrapatos sem saltos agora só é resolvido através de CopyTicks*. É um mecanismo muito pesado para esta tarefa generalizada. É como atirar em pássaros com um canhão.
Daí os freios, retenção de enormes caches, etc.
Minimizou o número de chamadas para SymbolInfoTick e CopyTicksRange:
O terminal e a máquina (arquivo swap desativado) com esta carga.
Como resultado, foi possível reduzir significativamente o número de mensagens de atraso (menos chamadas foram feitas) das funções regulares.
Registrar por 50 minutos:
Não parece muito ruim. Não houve transações comerciais. Que tal eles, vou ver.
ENTANTO, o fragmento destacado mostra que três EAs (caracteres diferentes) ficaram desfasados quase simultaneamente. Isto é, o atraso é universal para o Terminal.
Símbolo(), _Entradas de símbolo são equivalentes a NULL (onde NULL é permitido ao invés do nome do símbolo).
Neste caso, não há verificação extra da existência do símbolo atual, da presença do símbolo atual no Market Watch e das propriedades de chamada desnecessárias do símbolo atual, pois as propriedades do nó atual estão em cache.
Ou seja, se você especificar um parâmetro de string simples em vez de Symbol(), _Symbol ou NULL, então há verificações para o programa completo e mais propriedades de solicitação
Por favor, explique novamente, porque as interpretações de suas palavras são diferentes das dos usuários do fórum.
Em Terminal com uma EA/chart/símbolo.
Tal registro em 15 minutos. Afinal de contas, parece ser uma questão de janelas lentas. Neste caso, é.
Um exemplo claro dos freios que a Market Watch causa.
Veja os valores na coluna Processador (segundo da direita).
Fórum sobre comércio, sistemas comerciais automatizados e estratégias comerciais de teste
Indicadores: Ping
fxsaber, 2021.03.12 10:56
Acabei de me lembrar deste grande indicador.
É uma foto da máquina com zero ping. Acontece que a média de atraso interno do terminal é de ~2ms. Ele salta entre 0-9 ms.
Por exemplo, o servidor recebeu dois tiquetaques: primeiro um, depois o segundo após 10 ms. Assim, no Terminal o segundo tique pode ser recebido não em 10 ms após o primeiro, mas em 10-19 ms. Em média, são 12 ms depois.
Se você negocia a partir do mercado (marts de mercado ou ordens pendentes ao preço atual), será especialmente difícil de administrar. É difícil dizer se os Desenvolvedores serão capazes de melhorar alguma coisa aqui.
Olhando para a bolsa de Moscou, a situação lá é semelhante. De fato, negociando através do MT5 algo, você está quase garantido de estar no final da fila de execução, não tendo tempo para pegar o material bom, infelizmente.