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 objeto de banco de dados de símbolos sincronizados. Os locos de leitura/escrita são misturados, uma vez que há um tick constante de escrita.
Existe um objeto de banco de dados de símbolos para todos os símbolos ao mesmo tempo? Se for o caso, então acontece que o pedido de um tick para EURUSD retarda potencialmente o pedido de um tick para GBPUSD.
Você pode preparar um MqlTick para ele no momento em que o OnTick for chamado, para que ele não seja solicitado do banco de dados em geral?
Você pode preparar um MqlTick para o OnTick, para que ele não seja chamado do banco de dados em geral?
Isso seria bom, então talvez a MQL5 tenha variáveis pré-definidas como em 4 - Ask and Bid
O mais provável é que a desaceleração seja causada pelo alto consumo de CPU no lado MT5, quando muitos EAs estão em execução. Não sei como é com o MT4. Caso contrário, é difícil explicar por que os atrasos aparecem em um terminal vazio que funciona paralelamente.
Definitivamente, a minimização do uso do ambiente comercial API irá resolver o problema. Após a dança do pandeiro, comunicarei os resultados.
Você entendeu errado. Cada EA é puramente comercial (no Testador por carrapatos reais que não diminuem de velocidade) e não depende de outros. Toda lógica de negociação é executada apenas no OnTick, sem spam das ordens de negociação, sem recorrência, sem globalização e sem recursos.
OnTrade*, OnBook não são utilizados. Segundo timer e OnChartEvent para o caso quando certas teclas são pressionadas.
Estou certo de que a implementação adequada (por você ou por mim) de instantâneos reduzirá muito o número de chamadas de funções ambientais regulares. Da mesma forma, os atrasos serão drasticamente reduzidos.
Nunca pensei que isso chegaria a truques de instantâneo. Estou estudando a questão, porque a implementação padrão do MT5 EA é, infelizmente, coxa.
Não acredito em seu caso de forma alguma.
Através do TeamViewer ou similar, pronto para demonstrar.
Por favor, informe como reduzir o consumo de memória pelo Terminal? Estou usando carrapatos frescos do CopyTicks para 16 caracteres. Parece que cada CopyTicks mantém em memória 128K ticks. Eu não preciso deles, mas os guardo na memória. O que é preciso quase 1,5 GB? Os desenvolvedores podem ver que parte da memória é usada para quê? Algum gestor de tarefas rudimentares.
O mais provável é que a desaceleração seja causada pelo alto consumo de CPU no lado MT5, quando muitos EAs estão em execução. Não sei como é com o MT4. Caso contrário, é difícil explicar por que os atrasos aparecem em um Terminal vazio que funciona paralelamente.
Definitivamente, a minimização do uso do ambiente comercial API irá resolver o problema. Escreverei sobre os resultados depois de dançar com pandeiros.
Era exatamente disto que eu estava falando há algumas páginas atrás. Além disso, os EAs podem ser bastante simples e baseados em símbolos não líquidos, ou seja, a questão não é o número de operações matemáticas que ocorrem dentro do código de cada um dos EAs. O problema reside no próprio terminal e não conseguiremos resolvê-lo melhorando nosso código. Infelizmente :(
P.S. Eu reescrevi a lógica usada em metade dos meus EAs do OnBook de volta para o OnTick e substituí o Core i5 por Xeon E5-2678. Parece que a velocidade deveria aumentar, mas, infelizmente, um milagre não aconteceu :(
Em quase todos os passos.
Esperamos que a construção do cache não demore tanto, e este atraso se deve ao acesso ao banco de dados durante a atualização do banco.
Alguma idéia por que o mt5 não possui o separador "Comissões"? Eles só aparecem após o fechamento de um comércio.
Alguma idéia por que o mt5 não possui o separador "Comissões"? Eles só aparecem após o fechamento de um comércio.
Se você executar esta EA em uma conta sem posições ou ordens atuais.
e depois fechar manualmente a posição aberta pela EA, então haverá três posições abertas na sebe (na posição de rede de triplo volume).
É este o comportamento correto? Provavelmente não entendo bem o Terminal. Então, por favor, explique.