SocketCreate 4014

 

Bonjour :)

Documentation : https://www.mql5.com/en/docs/network/socketcreate

J'essaie de me connecter avec la fonction SocketCreate(), et cela me retourne une 4014 : 

  • J'ai testé avec le code de la documentation (vers mql5.com:80 et en localhost avec l'adresse 127.0.0.1:3000).
  • J'ai modifié mes options pour ajouter 127.0.0.1 et www.mql5.com
  • J'ai ouvert tout ce que je pouvais dans mon firewall

int OnInit()
  {
   Print("----------------------------------------");
   Print("-- Il est temps de démarrer les tests --");
   Print("----------------------------------------");

   socket=SocketCreate();
   
   Print(socket);

   if(socket == INVALID_HANDLE) {
      Print("ERREUR : " , GetLastError());
   }
   if(SocketConnect(socket,"www.mql5.com",80,1000))
     {
      Print("Connexion établie avec mql5.com");
     }
   return(INIT_SUCCEEDED);
  }

Ce que me renvoie l'activité de l'agent local (agent 127.0.0.1:3000)

2023.08.14 20:29:31.877 myServiceTest (AUDUSD,M1)       2023.08.01 00:00:00   ----------------------------------------
2023.08.14 20:29:31.877 myServiceTest (AUDUSD,M1)       2023.08.01 00:00:00   -- Il est temps de démarrer les tests --
2023.08.14 20:29:31.877 myServiceTest (AUDUSD,M1)       2023.08.01 00:00:00   ----------------------------------------
2023.08.14 20:29:31.877 myServiceTest (AUDUSD,M1)       2023.08.01 00:00:00   -1
2023.08.14 20:29:31.877 myServiceTest (AUDUSD,M1)       2023.08.01 00:00:00   ERREUR : 4014

Capture de mes options paramétrées

Auriez vous une idée ? Merci d'avance de votre aide :)

Documentation on MQL5: Network Functions / SocketCreate
Documentation on MQL5: Network Functions / SocketCreate
  • www.mql5.com
SocketCreate - Network Functions - MQL5 Reference - Reference on algorithmic/automated trading language for MetaTrader 5
 

Avez-vous lu la documentation sur le lien que vous avez posté ?

Quel type de programme utilisez-vous ? (Expert, Script, Indicateur...)

 

J'ai lu toute la documentation - des tonnes et j'ai fait plusieurs heures de recherches avant de poser mes questions, j'ai également demandé à CoPilot, mais j'en ai lu tellement que j'ai pu passer à côté de quelque chose ... 

C'est un Expert en cours de développement, l'objectif est d'appeler un service en local (donc 127.0.0.1). 

Je viens également de vérifier mes paramètres antivirus et d'exclure tous les dossier meta trader. 

 
mcorgnet #:

J'ai lu toute la documentation - des tonnes et j'ai fait plusieurs heures de recherches avant de poser mes questions, j'ai également demandé à CoPilot, mais j'en ai lu tellement que j'ai pu passer à côté de quelque chose ... 

C'est un Expert en cours de développement, l'objectif est d'appeler un service en local (donc 127.0.0.1). 

Je viens également de vérifier mes paramètres antivirus et d'exclure tous les dossier meta trader. 

Etes-vous certain que c'est un Expert ?


 

J'imagine que la capture que vous m'envoyez devrait me mettre la puce à l'oreille mais je ne vois pas trop à vrai dire ... 

Le fichier est dans le dossier Expert: 

L'intégralité du fichier : 

//+------------------------------------------------------------------+
//|                                                myServiceTest.mq5 |
//|                                  Copyright 2023, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2023, MetaQuotes Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"

bool         ExtTLS = false;
int         socket;

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
   Print("----------------------------------------");
   Print("-- Il est temps de démarrer les tests --");
   Print("----------------------------------------");

   socket=SocketCreate();
   
   Print(socket);

   if(socket == INVALID_HANDLE) {
      Print("ERREUR : " , GetLastError());
   }
   if(SocketConnect(socket,"www.mql5.com",80,1000))
     {
      Print("Connexion établie avec mql5.com");
     }
   return(INIT_SUCCEEDED);
  }

//+------------------------------------------------------------------+
//| OnTick function                                                  |
//+------------------------------------------------------------------+
void OnTick() {

}


Cela dit il y a quelque chose de bizarre entre les deux journaux - Le journal de meta trader semble me dire que tout va bien :  journal meta trader 5

2023.08.14 20:53:12.105 Tester  EURUSD: history data begins from 2021.04.09 00:00
2023.08.14 20:53:12.105 Core 1  connecting to 127.0.0.1:3000
2023.08.14 20:53:12.105 Core 1  connected
2023.08.14 20:53:12.109 Core 1  authorized (agent build 3815)

Alors que le journal de l'agent me dit qu'il y a un problème : Journal de l'agent

2023.08.14 20:53:12.166 myServiceTest (AUDUSD,M1)       2023.08.01 00:00:00   ----------------------------------------
2023.08.14 20:53:12.166 myServiceTest (AUDUSD,M1)       2023.08.01 00:00:00   -- Il est temps de démarrer les tests --
2023.08.14 20:53:12.166 myServiceTest (AUDUSD,M1)       2023.08.01 00:00:00   ----------------------------------------
2023.08.14 20:53:12.166 myServiceTest (AUDUSD,M1)       2023.08.01 00:00:00   -1
2023.08.14 20:53:12.166 myServiceTest (AUDUSD,M1)       2023.08.01 00:00:00   ERREUR : 4014

 
Vous ne pouvez pas utiliser cette fonction avec le Testeur de Stratégie.
 
Ok ... Je l'ai bien rattachée à un chart, comment faut il procéder pour la tester du coup ? Il y a un tutoriel quelque part qui explique comment tester ?