Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1285
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
Se houver 1440 pedidos por dia, deve haver um cheque no início do minuto, ou mais simplesmente na aparência da barra de minutos. E neste ponto, para abrir. Você não a tem, então a EA abre uma posição a cada tic, o que é uma condição estrita em si, de acordo com a condição em nosso símbolo na citação atual. Esta condição pode não ser cumprida, e os carrapatos não serão cumpridos. E em algum momento, um erro crítico ocorrerá.
Além disso, o tipo de execução da ordem (ordem para realizar uma negociação para criar uma posição) tudo ou nada.
Eu entendo. Obrigado pela ajuda.
Eu também achei difícil para minha EA abrir tantas encomendas. Eu tentei limitar o número de pedidos com este código
Ou seja, abrir um pedido somente às 10:00 horas. Mas o resultado é o mesmo.
2020.10.27 10:25:17.548 Core 1 272 Mb de memória utilizada incluindo 36 Mb de dados históricos, 64 Mb de dados de tick
O que eu estou fazendo de errado?
Eu colori o código que adicionei e mudei
Isto é o que diz no arquivo de registro
FD 0 10:57:05.453 Processo do agente Core 1 iniciado em 127.0.0.0.1:3000
CS 0 10:57:05.453 Core 1 conectando a 127.0.0.0.1:3000
JD 0 10:57:05.953 Core 1 conectado
OD 0 10:57:05.975 Core 1 autorizado (agente build 2650)
JL 0 10:57:05.980 Testador EURUSD,M1 (Alpari-MT5-Demo): teste de especialistas\GRAAL.ex5 de 2020.09.01 00:00 até 2020.09.10 00:00
ON 0 10:57:05.997 Core 1 sincronização comum concluída
CJ 0 10:57:06.223 Testador a qualidade da história analisada é 100%
LM 0 10:57:06.248 Core 1 MetaTester 5 iniciado em 127.0.0.1:3000
EJ 0 10:57:06.248 Core 1 inicialização concluída
LS 0 10:57:06.248 Core 1 login (build 2650)
KO 0 10:57:06.248 Core 1 4372 bytes de informação de conta carregada
LI 0 10:57:06.248 Core 1 1482 bytes de parâmetros de teste carregados
FN 0 10:57:06.248 Core 1 1724 bytes de parâmetros de entrada carregados
OK 0 10:57:06.248 Core 1 423 bytes de lista de símbolos carregados (72 símbolos)
HO 0 10:57:06.248 Core 1 arquivo de especialista adicionado: Experts\GRAAL.ex5 13680 bytes carregados
CP 0 10:57:06.248 Core 1 4077 Mb disponível, conjunto de 50 blocos para geração de carrapatos
DI 0 10:57:06.248 Core 1 calcular lucro em pips, depósito inicial 10000, alavancagem 1:100
LP 0 10:57:06.248 Core 1 inicializado com sucesso
RI 0 10:57:06.248 Core 1 15 Kb de dados totais de inicialização recebidos
DN 0 10:57:06.248 Core 1 Intel Core i5-6400 @ 2.70GHz, 7883 MB
IG 0 10:57:06.248 Core 1 EURUSD: símbolo a ser sincronizado
RS 0 10:57:06.248 Core 1 EURUSD: símbolo sincronizado, 3720 bytes de informações do símbolo recebido
OL 0 10:57:06.248 Core 1 EURUSD: carregar 27 bytes de dados históricos para sincronizar em 0:00:00.003
EK 0 10:57:06.248 Core 1 EURUSD: história sincronizada de 2019.01.02 a 2020.10.23
LK 0 10:57:06.248 Core 1 EURUSD,M1: cache histórico alocado para 628432 barras e contém 619175 barras de 2019.01.02 06:00 a 2020.08.31 23:59
LH 0 10:57:06.248 Core 1 EURUSD,M1: a história começa a partir de 2019.01.02 06:00
LN 0 10:57:06.248 Core 1 EURUSD,M1 (Alpari-MT5-Demo): OHLC bar states generating. OnTick execução na barra começa apenas
JM 0 10:57:06.248 Core 1 EURUSD,M1: teste de especialistas\GRAAL.ex5 de 2020.09.01 00:00 até 2020.09.10 00:00 começou com insumos:
LS 0 10:57:06.248 Core 1 StopLoss=30
PL 0 10:57:06.248 Core 1 TakeProfit=100
FJ 0 10:57:06.248 Core 1 Lote=0,1
DP 0 10:57:06.248 Core 1 balanço final 10000.00 pips
EE 0 10:57:06.248 Core 1 EURUSD,M1: 39553 carrapatos, 10068 barras geradas. Ambiente sincronizado às 0:00:00.031. Teste aprovado em 0:00:00.247 (incluindo pré-processamento de carrapatos 0:00:00.016).
DE 0 10:57:06.248 Core 1 EURUSD,M1: tempo total desde o login até a interrupção dos testes 0:00:00.278 (incluindo 0:00:00.031 para sincronização dos dados do histórico)
NQ 0 10:57:06.248 Core 1 272 Mb de memória utilizada incluindo 36 Mb de dados históricos, 64 Mb de dados de tick
KE 0 10:57:06.248 Core 1 log file "C:\Users\a1960\AppData\Roaming\MetaQuotes\Tester\36A64B8C79A6163D85E6173B54096685\Agent-127.0.0.1-3000\logs\20201027.log" escrito
OS 0 10:57:06.260 Núcleo 1 conexão fechada
Por favor, avise!
Por que o tempo do servidor não é atualizado quando novos tiquetaques chegam?
No momento em que a EA começa, tudo funciona como deveria, mas depois o tempo passa, mas o novo valor do minuto atual não entra na variável.
Ou seja, o Expert Advisor trabalha dependendo do número obtido na variável int M = TimeMinute(TimeCurrent());
Na verdade, esta linha de código é da referência e não funciona.
Por exemplo, eu o inicio às 12-o tempoatual retornado pelo servidor corresponde ao tempo na variável, mas então a variável permanece às 12, embora já esteja de 15-20 minutos no relógio
O código é completamente melhor, mais precisamente onde você cria a função e em qual função (OnInit, OnTick, OnTime) obtém o valor dos minutos e chama a função de impressão. Se no OnInit ou fora dos campos de função do terminal, é assim que deve ser. Se no OnTick, ele imprimirá em cada tick e atualizará o valor com um novo minuto.
Valeriy Yastremskiy:
O código é completamente melhor, ou melhor, onde você cria a função e em qual função (OnInit, OnTick, OnTime) você obtém o valor dos minutos e chama a função de impressão. Se no OnInit ou fora dos campos de função do terminal, é assim que deve ser. Se no OnTick, ele imprimirá em cada tick e atualizará o valor com um novo minuto.
Bem, aqui está o código completo. Na função OnTick() vazia é acionada logo no início pela primeira linha a ser executada.
Ele é acionado somente no momento da recompilação ou anexado ao campo de programação/apagamento/apagamento. Durante o restante do tempo, a variável M detém o valor do minuto obtido durante a primeira execução da EA.
Bem, há todo um código aqui, é tudo o que há para isso. O OnTick() vazio é acionado logo no início pela primeira linha a ser executada.
Ele é acionado somente no momento da recompilação ou da junção ao campo gráfico/deleção/ . Durante o restante do tempo, a variável M detém o valor do minuto obtido durante a primeira execução da EA.
Entendi, obrigado!
Eu deveria ter
colocá-lo no corpo da função, e não na frente dele, atribuindo-lhe o valor M
Entendi, obrigado!
Eu deveria ter
colocá-lo no corpo da função, em vez de atribuir o valor M antes dele.
Você pode fazer isso de diferentes maneiras. Leia as variáveis globais e locais e sua visibilidade.
Boa tarde. Tentando obter o ângulo da linha de tendência a partir do ângulo. Aqui está o código:
ângulo é sempre 0. Independentemente do uso de métodos de biblioteca padrão ou funções incorporadas. Ao mesmo tempo, a linha é traçada. O que está errado? Como obter o ângulo?
Boa tarde. Tentando obter o ângulo da linha de tendência a partir do ângulo. Aqui está o código:
ângulo é sempre 0. Independentemente do uso de métodos de biblioteca padrão ou funções incorporadas. Ao mesmo tempo, a linha é traçada. O que está errado? Como faço para obter o ângulo?
https://www.mql5.com/ru/forum/103591
Estou vendo, mas como você calcula o ângulo?
https://www.mql5.com/ru/forum/103591
Estou vendo, mas como você calcula o ângulo?
Você é um comediante.
Quem eu estou enganando?
Fórum sobre comércio, sistemas automatizados de comércio e testes estratégicos
Qualquer pergunta de novatos sobre MQL4 e MQL5, qualquer ajuda e discussão de algoritmos e códigos
Nikolai Semko, 2020.10.26 00:34
Você não deve ter medo da velocidade. É apenas uma condicionalidade para a conversão do tipo.
Como uma variante da função de definição de ângulos:
Depois do MT5, a sensação do MT4 é simplesmente horrível. O acesso ao histórico é de alguma forma emasculado. Não estou nem mesmo falando dos carrapatos.
Você pode me dizer se esta seleção de fonte é possível no indicador?