Neste artigo
Depois deste artigo, saberá…
- Separar ligação, relógio geral e tick do símbolo.
- Interpretar ausência ou idade negativa como incerteza.
- Criar registo diagnóstico sem enviar ordem.
Conceitos sem sair do artigo
Expert Advisor (EA) Bid e Ask Execução de ordemO que confirma o indicador de ligação?
TERMINAL_CONNECTED descreve ligação do terminal ao servidor de negociação. Ligação, idade da cotação e permissão para operar são factos separados. Outros instrumentos podem atualizar enquanto o símbolo pretendido permanece sem nova observação. Silêncio do EA também pode resultar de sessão fechada, símbolo diferente ou condição de entrada não cumprida.
Confirme servidor, conta, terminal do programa e nome completo do instrumento, incluindo sufixo. Registe símbolo usado no código, sem copiar apenas etiqueta do telefone. Num VPS, leia instância remota real; ecrã local não prova estado remoto. VPS para Forex: continuidade, respostas em falta e passagem de instâncias desenvolve monitorização. Antes de reiniciar, preserve diário e determine que cópia controla a conta.
Três leituras, três perguntas
| Leitura | Descreve | Não prova |
|---|---|---|
| TimeCurrent em OnTimer | Última quote Market Watch | Atualidade do par pretendido |
| TimeTradeServer | Tempo de servidor calculado no cliente | Chegada de quote |
| SymbolInfoTick do símbolo | Última atualização e dados desse instrumento | Aceitação de ordem |
Dentro de OnTick, TimeCurrent corresponde ao tick tratado; em OnTimer e outros handlers, pode refletir outro símbolo selecionado. TimeTradeServer depende do cálculo no terminal e relógio do computador. Não subtraia relógio local bruto de timestamp do servidor sem alinhar bases.
Peça SymbolInfoTick do símbolo exato, verifique sucesso e guarde time_msc, Bid e Ask. Falha, tempo ausente ou idade negativa significam incerteza, não zero segundos nem preço válido. Estes dados permitem investigar sem enviar operação de teste.
Relógio recente, par mais antigo
Modelo diagnóstico próprio com um único eixo de tempo de servidor ilustrativo. Às 12:00:00, lê TimeCurrent em OnTimer. EUR/USD atualizou 11:59:59; GBP/JPY última 11:59:35. São registos inventados, não observações de corretora e não limiar de idade aceitável.
EUR/USD recente não atualiza GBP/JPY. 25 segundos não é limiar universal de falha.
- GBP/JPY
- 11:59:35 – 25 segundos
- EUR/USD
- 11:59:59 – 1 segundo
Um segundo no relógio, 25 no par
Desloque horizontalmente ou amplie o diagrama para ler todos os detalhes.
Relógio geral fica só um segundo atrás, mas dados do par pretendido GBP/JPY têm 25 segundos. Verificar só TimeCurrent omite distinção. Isso não demonstra falha da corretora: confirme sessão, disponibilidade e condições do programa. Um intervalo de 25 segundos não é norma universal de avaria.
Repita leitura após intervalo medido por contador de tempo decorrido. Se time_msc não muda, sabe que nessas leituras não apareceu atualização mais recente. Não mediu atraso de transporte de um tick desde origem ao computador. Timestamp de servidor e estimativa local não dão essa precisão por si; conserve observação separada da causa suspeita.
Mercado silencioso ou programa?
Compare horário de quotes e de negociação, convenção temporal do fornecedor, pausas e avisos de feriados. Fora da sessão, preço antigo pode ser esperado. Não aplique horário de par principal a índice ou metal. Dentro da sessão, ausência repetida merece investigação conforme atividade e requisitos da estratégia, sem número universal de segundos.
OnTick pertence ao símbolo do gráfico anfitrião. Se NewTick já está na fila ou a ser processado, novo evento não entra; número de linhas OnTick no diário não precisa de igualar ticks. Num EA multissímbolo, distinga gráfico anfitrião e todos os instrumentos usados na decisão.
Desativar AutoTrading impede pedidos de negociação do EA, sem parar cálculos. Registe atividade do programa, atualização dos dados, condições e resposta separadamente. «Sem sinal», «sem dados» e «negociação não permitida» exigem ações diferentes. Um heartbeat confirma só atividade que escreveu essa linha, não condição satisfeita ou dados frescos.
Diagnóstico não resolve pedidos anteriores
Ficha mínima: hora/base temporal, servidor/símbolo, ligação, sucesso da leitura, ticktime/Bid/Ask, sessão, programa e última resposta. Exemplo:12:00:00 eixo servidor;GBP/JPY;leitura bem sucedida;tick 11:59:35;sessão por confirmar;novas entradas pausadas. Omitir informação é diferente de inventar conclusão. No suporte, não inclua password ou identificador completo.
Se houve envio com erro ou resposta incerta, reconcilie posições, pendentes e história antes de repetir. Voltar a receber dados não revela resultado do pedido anterior. Erros de ordens MT4/MT5: corrigir sem aumentar risco trata essa sequência. Exposição existente precisa de verificação de proteção atualmente aceite, mesmo com novas entradas suspensas.
Modelo EUR adicional separado, sem operação inferida das horas acima:20 000 EUR de quantidade EUR/USD e diferença hipotética de preço 0,0010 representam 20 USD antes de custos. À conversão fixa 1,10 USD/EUR, cerca de 18,18 EUR. É sensibilidade de exposição, não perda observada, previsão de slippage ou justificação para negociar com dados antigos.
Duas observações sem negociar
- Registe símbolo real e horários de quotes/negociação com base do servidor. Confirme se esperar atualização era razoável.
- Em demo, leia ticktime, Bid/Ask, ligação e programa duas vezes com intervalo conhecido. Marque falhas como desconhecidas.
- Antes de retomar, reconcilie conta e requisitos próprios de atualidade. Envie registos anonimizados ao programador/fornecedor se causa continuar incerta.
Este procedimento gera evidência para um símbolo e ambiente MT5/MQL5. Não certifica rede, servidor ou robô, nem recomenda abrir posição para descobrir se «funciona».
Verifique o que aprendeu
Aprox. 2 minutos de prática.
Ver resposta e explicação
Verifique sessão e requisitos;25 não é limiar universal de falha.
Mais perguntas
Relógio recente prova quote recente?
Não. Identifique função/handler e símbolo; leia sucesso/timestamp próprios e sessão. Tempo calculado não confirma chegada de preço. Falha ou idade negativa é incerteza.
Quantos segundos provam avaria?
Não há limite universal. 25 é exemplo de relógios diferentes. Considere sessão, atividade e regra da estratégia; tempo sozinho não identifica terminal, servidor ou programa culpado.
Reiniciar e repetir resolve?
Preserve diário e reconcilie antes. Pedido anterior pode ter executado; dados restaurados não provam rejeição. Num VPS identifique cópia e proteção aceite das posições existentes.
Preço e diário parados provam EA bloqueado?
Não. Pode haver sessão fechada, preço igual ou registo seletivo. Verifique timestamp, triggers de diagnóstico, gráfico anfitrião e condições. Compare comportamento esperado com observações.
Fontes e verificação
- MQL5: TimeCurrent
OnTick versus outros handlers e último símbolo Market Watch.
- MQL5: TimeTradeServer
Cálculo no terminal depende de relógio local; não chegada de tick.
- MQL5: SymbolInfoTick
Resultado de leitura e dados/timestamp do símbolo.
- MQL5: OnTick
Gráfico anfitrião, fila e AutoTrading sem parar cálculos.
- MQL5: terminal
TERMINAL_CONNECTED é estado de ligação e não atualidade de cada símbolo.
Os cálculos usam pressupostos explícitos. Não substituem os dados atuais do mercado nem as condições do prestador.
