![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
Vejo que a confusão se resume a uma coisa: como é que ela se manifesta?
Deixe-me explicar : quando chega um novo tick, há uma pausa de meio segundo e nenhuma função é executada, após a qual a execução continua como se as funções paradas já tivessem sido executadas,
portanto, se numerar a matriz 1 2 3 4 5 6 e um tick entrar no número 4, a matriz será numerada 1 2 3 5 6
(este é um exemplo, não uma execução específica).
Mas a execução é a mesma,
Em cada iteração, as bolas são deslocadas por uma posição,
quando chega um tick, algumas bolas podem até cair do ecrã (é claramente visível se colocar um atraso no guião abaixo de 500, bem, para máquinas diferentes é diferente, talvez numa máquina poderosa o atraso deve ser de 100 para manifestar uma falha) ,
e depois em novas iterações, o mesmo acontece quando se carrega o fundo (especialmente em alta resolução Passo 4-3 e abaixo)
Aparece mais frequentemente em pilhas mais baixas apenas porque o tempo de carga de fundo com tantos objectos a mais, respectivamente, e maior probabilidade de ficar sob a pressão de um novo tick.
Quando um tick chega ao terminal do cliente, deve ser aplicado em vários locais ao mesmo tempo - na visão geral do mercado, na história, em gráficos abertos. Ao mesmo tempo, os indicadores são recalculados. O que é que pretende?
Se tiver um único núcleo, e os gráficos estiverem abertos ao máximo, é claro que a implementação de outros componentes irá abrandar - os recursos devem ser partilhados.
Geralmente, uma forma estranha de o dizer. O que é que o OnTick() tem a ver com ele e como é que interfere com outras funções?
Num sistema, um programa MT-5 está a correr em modo visual, um gráfico é aberto em MT-5, um script (ou conselheiro) está a correr no gráfico.
E com tudo isto para alterar as coordenadas de três objectos, não há tempo de máquina suficiente quando chega um novo tick ????.
E com tudo isto para alterar as coordenadas de três objectos, não há tempo de máquina suficiente quando chega um novo tick ????.
Não esquecer que existem 3600 objectos de texto de etiqueta no ecrã ao mesmo tempo, desenhados de uma forma não muito económica (desenhar círculos em fonte é obviamente de vistas curtas).
Tente colocar uma imagem BMP em vez de 3600 objectos para obter um melhor desempenho.
Sem substrato de 3600 objectos, tudo voa.
Não se deve esquecer que existem 3600 objectos de texto de etiqueta no ecrã simultaneamente, desenhados de uma forma não muito económica (os círculos de desenho em fonte são obviamente de visão curta).
Tente colocar uma imagem BMP em vez de 3600 objectos - será muito mais lenta.
Sem um substrato de 3600 objectos, tudo voa.
Este era o meu plano inicial (os antecedentes devem ser realmente criados ao carregar, dependendo da situação actual do mercado),
Não posso fazer um fundo de pontos, mas é guardado apenas em gif,
Tenho de descarregar bmp,
Não se pode usar ferramentas mql, é preciso uma ferramenta de tradução mql de terceiros (eu queria fazer tudo em mql).
Gostaria de mostrar como é fácil fazer com que os comerciantes trabalhem comigo.
(e tem de a vincular ao preço e ao tempo).
Como se pode saber quando se tem um 3.600-rouble com step=3?
Com toda a probabilidade, vamos transformar o novo objecto gráfico num bitmap editável e num conjunto de operações primitivas sobre ele.
Ao fazê-lo, será possível desenhar gráficos complexos dentro de um único objecto, eliminando assim a necessidade de gerir centenas ou milhares de objectos.
Muito provavelmente, faremos um novo objecto gráfico sob a forma de um bitmap editável e um conjunto de operações primitivas sobre ele.
Assim, será possível desenhar gráficos complexos dentro de um único objecto, o que eliminará a necessidade de gerir centenas ou milhares de objectos.
Isso seria óptimo, porque já enfrentei tais situações com bastante frequência em 4,
É evidente que investiu em ordens comerciais em primeiro lugar, e os gráficos em segundo.
tudo está desactivado, a auto-comercialização é proibida, mas as mensagens continuam a chegar, ou seja, acontece que o perito está a trabalhar, são as mensagens do perito... não deveria ser assim
tudo é desactivado, o comércio automático é proibido, mas as mensagens vão, ou seja, acontece que o Expert Advisor funciona, são as mensagens do Expert Advisor... não deveria ser assim
tudo está desactivado, a auto-comercialização é proibida, mas as mensagens continuam a chegar, ou seja, acontece que o perito está a trabalhar, são as mensagens do perito... não deveria ser assim
Tem razão. O Expert Advisor não é proibido, o autotrading só é proibido
Aqui está uma referência
Разрешить/запретить совершение торговых операций советниками и скриптами. Функция данной кнопки аналогична настройке терминала на вкладке "Советники".
Penso que esta proibição está a vir do terminal.
Portanto, deve utilizar a função AccountInfoInteger(ACCOUNT_TRADE_EXPERT) antes das ordens de negociação para evitar receber mensagens de erro no registo ao colocar ordens
Apenas as operações comerciais são proibidas, e o Conselheiro Especialista está a trabalhar, tentando negociar com os erros correspondentes. Para evitar que isto aconteça, deve verificar o estado do terminal antes de analisar para as trocas usando