MT5 peut être connecté alors que la cotation utilisée par votre EA est ancienne. Un marché fermé, un mauvais symbole ou une condition du programme peuvent aussi expliquer son silence. Avant un redémarrage ou un nouvel ordre, distinguez canal de communication, données du symbole et autorisation de négocier. Ce diagnostic produit des éléments vérifiables, pas une attribution automatique de faute au courtier.

Que confirme l’indicateur de connexion ?

TERMINAL_CONNECTED décrit la connexion du terminal au serveur de trading. Il ne certifie pas une nouvelle cotation de l’instrument visé. D’autres symboles peuvent recevoir des données alors que celui de votre programme n’a pas changé dans vos observations. Relevez le serveur, le type de compte et le nom complet, suffixe compris. Un nom repris de l’application mobile n’est pas forcément celui utilisé par l’EA.

Sur VPS, identifiez aussi l’instance distante réellement active. Un écran local récent ne prouve rien sur son programme. Préservez les journaux avant une remise à zéro. Les positions existantes doivent rester suivies pendant le diagnostic : suspendre les nouveaux ordres ne confirme pas leurs protections actuellement acceptées.

Pourquoi trois horloges racontent-elles des choses différentes ?

Dans OnTick, TimeCurrent correspond au tick traité. Dans OnTimer, il peut correspondre à la dernière cotation d’un autre symbole sélectionné dans Market Watch. Une horloge générale récente ne répond donc pas à la question : « Quand ma paire a-t-elle été mise à jour ? » TimeTradeServer est quant à lui calculé par le terminal et dépend des réglages de l’ordinateur. Son avancement ne démontre pas l’arrivée d’un prix.

Pour le symbole exact, SymbolInfoTick renvoie les prix et l’heure de dernière mise à jour si l’appel réussit. Conservez succès ou échec, time_msc, Bid et Ask. Ne soustrayez pas une heure brute d’ordinateur et un horodatage serveur sans aligner leur base. Un âge négatif, absent ou issu d’un appel en échec indique une incertitude, pas une donnée fraîche. Un compteur de temps écoulé aide à espacer deux observations sans confondre les fuseaux.

Comment une horloge récente masque-t-elle une cotation ancienne ?

Conservons le modèle source : toutes les heures sont sur un axe serveur illustratif. À 12:00:00, EUR/USD a reçu un tick à 11:59:59 et GBP/JPY à 11:59:35. TimeCurrent lu dans OnTimer peut être à une seconde seulement du contrôle, tandis que GBP/JPY est à 25 secondes. Ces valeurs sont inventées ; 25 secondes ne constituent pas un seuil universel de panne.

Une connexion active, deux fraîcheurs différentes

Vérifier le symbole, pas seulement l’heure

Vérifier le symbole, pas seulement l’heureModèle de diagnostic, sans seuil de panne : une autre paire peut rafraîchir la lecture générale.Vérifier le symbole, pas seulement l’heureContrôle commun : 12:00:00 sur l’axe serveurEUR/USD : dernier tick 11:59:59 → 1 secondeGBP/JPY : dernier tick 11:59:35 → 25 secondes
Modèle de diagnostic, sans seuil de panne : une autre paire peut rafraîchir la lecture générale.

Faites défiler horizontalement ou agrandissez le schéma pour lire les détails.

Refaites une observation après un intervalle connu. Un time_msc inchangé montre qu’aucune mise à jour plus récente n’est apparue entre ces lectures. Cela ne mesure pas le délai de transport d’un tick depuis son origine. Pour cela, un simple horodatage serveur comparé à une estimation locale ne suffit pas. Séparez ce que vous avez observé de ce que vous soupçonnez.

Ajout distinct pour un utilisateur en France : une fiche d’incident peut stocker l’instant UTC 10:00:00Z, son affichage Europe/Paris approprié à la date, et l’heure serveur avec sa convention. Si deux observations espacées de 10 secondes montrent le même dernier tick, l’absence observée s’allonge de 10 secondes sur cet intervalle. Ne rebaptisez pas l’heure serveur « heure de Paris » et ne fixez pas Paris à UTC+1 toute l’année. La devise EUR du compte ne résout aucun de ces problèmes de temps.

Marché calme ou programme bloqué ?

Comparez horaires de cotation et horaires de négociation du symbole, pauses et avis de jours fériés. Un indice, un métal et une paire de devises du même terminal peuvent avoir des séances différentes. Pendant une fermeture, une ancienne valeur est attendue ; pendant une séance ouverte, son absence répétée mérite une enquête adaptée à l’instrument et à la stratégie.

OnTick concerne le symbole du graphique hébergeant l’EA. Un nouvel événement NewTick n’est pas ajouté s’il est déjà en file ou en traitement : compter les lignes OnTick ne revient pas forcément à compter les ticks. Un EA multidevise peut consulter d’autres symboles. AutoTrading désactivé empêche ses requêtes de trading mais n’arrête pas nécessairement ses calculs. Distinguez « aucun signal », « données absentes » et « trading non autorisé » dans le journal.

Que préserver avant de reprendre les demandes ?

Une fiche utile contient : instant et base horaire, serveur, symbole exact, connexion, résultat de lecture, tick, Bid/Ask, séance, état du programme et dernière réponse d’ordre. Exemple du modèle : « GBP/JPY, tick 11:59:35, lecture réussie, contrôle 12:00:00 serveur, séance non confirmée, nouvelles entrées suspendues ». Aucun mot de passe ou identifiant complet n’est nécessaire pour l’assistance.

Le retour de cotations récentes ne prouve pas ce qui est arrivé à une demande antérieure. En cas de réponse incertaine, rapprochez positions, ordres et historique avant toute répétition. Ordre refusé sur MT4 ou MT5 : diagnostiquer sans augmenter le risque traite cette distinction entre restauration des données et réconciliation d’une demande.

Quelle vérification effectuer sur démonstration ?

  • Noter le symbole exact, le serveur et les deux horaires, cotation et négociation.
  • Effectuer deux lectures sans envoyer de transaction, en marquant explicitement les champs manquants.
  • Conserver l’état du programme et la réponse antérieure avant redémarrage.
  • Rapprocher l’exposition et les protections avant de reprendre des demandes.