Erros, bugs, perguntas - página 1850
![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
um insecto quando se usa um modelador?
Vamos supor que estávamos a escrever usando o separador.
Não há erro.
depois usamos o estilizador, obtemos
ou seja, o modelador apaga o espaço entre oTWO_DIM(10000)
Resultado
Qual é o caminho certo?
1. se anteriormente não recebeu qualquer cotação para um tic-tac, não abriu um gráfico, etc. (depende do ping, velocidade da Internet, disco rígido, preparação do ficheiro Bases/Broker/histórico/ticker/cache/)
2. se as aspas tiverem sido previamente recebidas e depois o terminal tiver sido recarregado, desde que não tenha sido aberto nenhum gráfico deste ticker (preparação do ficheiro Bases/Base/Broker/História/Ticker/Cache/)
o tempo é 10-15 vezes menos do que p.1
para comparação o tempo de acesso em МТ4 de acordo com o ponto 2, ou seja, após o reset do terminal
ou seja, o tempo após o reinício do terminal MT4 é de algumas ordens de magnitude a menos.
Desta vez verifiquei tudo no Windows, sem SSD!
Se obtive as citações, o terminal não foi reinicializado, os dados foram acedidos
Acertei que depois de carregar a cache, o terminal precisa de muito menos tempo para mais pedidos (a partir do 2º pedido)?
Podemos de alguma forma reduzir o tempo para a primeira chamada após o reinício do terminal para o fazer como no MT4?
O código estava em https://www.mql5.com/ru/forum/1111/page1870#comment_4856899
Tem um método de teste muito sujo, uma vez que não existe qualquer descrição do ambiente e do método de reprodução.
Não especificado:
Sem isto, as conclusões são infundadas.
Por exemplo, veja EURUSD M1 - MT5 tem lá mais de 6 milhões de barras (se ilimitado no modo em gráficos), mas MT4 tem quantas? Um par de dezenas de milhares de barras M1 na base de dados real?
Tem um método de teste muito confuso, uma vez que não há qualquer descrição do ambiente e do método de reprodução.
Não especificado:
limites das barras na janela
Sem isso as conclusões são infundadas.
Fiz a maioria das perguntas no meu posto, sem problemas, vou dar-vos agora todos os dados.
primeiro de tudo a resposta ao
servidor MQ-demo, os dados são carregados, pois estamos a falar do ponto 2 e do ponto 3 no post anterior. Com o ponto 1 tudo é claro e não há dúvidas - como foi escrito - os dados são carregados, a cache é formada no caminho especificado.
MT4
MT5
MT4
MT5
ganhar XP 32bit, todas as construções de MT todas as mais recentes
MT4 - abrir 1 gráfico, verificar com outro símbolo
MT5 - 1 gráfico aberto, verificar com outro símbolo
repetir, recarregar o terminal, enviar o script para a carta, seleccionar OUTRO símbolo, cujos dados foram carregados ANTES de recarregar o terminal
MT4
MT5
Aqui está o meu teste com mais detalhe e mais precisão:
Os ficheiros dos testes são anexados e estão sempre em microssegundos (não milissegundos, 1 milissegundo = 1000 microssegundos).
Agora as conclusões:
Aqui não há problema - o levantamento custa sempre recursos.
Especialmente quando são usadas arquitecturas conceptualmente diferentes: MT5 tem caches mais complexos (os ficheiros *.hc são construídos a partir de *.hcc originais) para o bem da escala + controlo de sincronização total obrigatório com os dados do servidor (binários *.hcc em pedaços).
Não há falhas na implementação de ambos os terminais e tudo funciona rapidamente.
Obrigado pela sua resposta.
Globalmente, os resultados são os que mostrei nos meus cargos.
Tenho estado a testar regularmente.
E ainda assim os resultados entre MT4 e MT5 são quase 200 vezes diferentes (devido a -deve controlar a sincronização total com os dados do servidor?? e ping? ).
Habituei-me a isso antes de afixar aqui que é provavelmente uma característica do terminal. Posso até viver com isso, mas é difícil em alguns pontos. Por exemplo, como não há nenhum ecrã de mercado no MT, escrevi um pequeno guião, que acrescenta símbolos ao relógio do mercado, mas os preços só estão disponíveis via CopyClose, não estão disponíveis via SymbolInfoDouble ou via MqlTick até que o símbolo seja acrescentado ao relógio, por isso este guião corre "infinitamente" quando corre com uma aposta muito grande. Isto é apenas um exemplo.