Voir comment télécharger gratuitement des robots de trading
Retrouvez-nous sur Twitter !
Rejoignez notre page de fans
Un script intéressant ?
Poster un lien vers celui-ci -
laisser les autres l'évaluer
Vous avez aimé le script ? Essayez-le dans le terminal MetaTrader 5
Bibliothèque

MQTTFive — Bibliothèque client MQTT 5.0 - bibliothèque pour MetaTrader 5

Sergey Chekh
Sergey Chekh
👋 Hi there! I write robots, systems, and other stuff in Python and MQL5.
📊 My workday is a marathon of creating neural networks and algorithmic trading robots, which I make trade through MetaTrader. I teach them to play the market just like I taught my dog to balance a treat on his nose.
| French English Русский 中文 Español Deutsch 日本語 Português 한국어 Italiano Türkçe
Vues:
107
Note:
(1)
Publié:
Mise à jour:
\MQL5\Include\MQTTFive\
MQTTTypes.mqh (10.13 KB) afficher
MQTTCodec.mqh (15.02 KB) afficher
\MQL5\Scripts\
MQL5 Freelance Besoin d'un robot ou d'un indicateur basé sur ce code ? Commandez-le sur Freelance Aller sur Freelance

MQTTFive — client MQTT 5.0 pour MQL5

Bibliothèque (#include) permettant de connecter les experts MetaTrader 5 et les scripts à des serveurs MQTT (Mosquitto, EMQX, HiveMQ). Elle permet de publier des cours et des signaux, de recevoir des commandes provenant de systèmes externes et de surveiller l'état des experts.

Sans DLL — MQL5 pur, API de sockets native. Protocole MQTT v5.0.

Fonctionnalités

  • QoS 0, 1, 2 avec réenvoi automatique des messages non transmis
  • Propriétés CONNECT/CONNACK : durée de la session, nombre maximal de paquets reçus, nombre maximal d’alias de sujets.
  • Messages différés
  • Alias de sujets – réduction du trafic sur les sujets redondants.
  • Gestion du flux — prise en compte du quota sur le volume maximal de données reçues.
  • Options d’abonnement : no_local, retain_as_published, retain_handling
  • TLS/SSL, charge utile binaire, UTF-8


arch

Installation

  1. Copiez les 5 fichiers de l'archive dans le dossier MQL5/Include/MQTTFive/
  2. Dans le code : #include <MQTTFive/MQTTClient.mqh>

Exemple : publication d'un cours

#include <MQTTFive/MQTTClient.mqh>

void OnStart ()
  {
   MQTTClient client;
   MQTTConnectParams params;
   params.Init();
   params.client_id = "price_pub" ;

   if (client.Connect( "127.0.0.1" , 1883 , params))
     {
       double bid = SymbolInfoDouble ( _Symbol , SYMBOL_BID );
      client.Publish( "mt5/price/" + _Symbol , DoubleToString (bid, _Digits ), 0 );
      client.Disconnect();
     }
  }

Exemple : abonnement aux signaux

MQTTClient *mqtt;

void OnSignal( string &topic, uchar &payload[], uint payload_len)
  {
   string msg = CharArrayToString (payload, 0 , ( int )payload_len, CP_UTF8 );
   Print ( "Signal: " , topic, " = " , msg);
  }

void OnStart ()
  {
   mqtt = new MQTTClient();
   mqtt.SetCallback(OnSignal);
   MQTTConnectParams params;
   params.Init();
   params.client_id = "signal_sub" ;
   mqtt.Connect( "127.0.0.1" , 1883 , params);
   mqtt.Subscribe( "trade/signal/#" , 1 );
   while (! IsStopped ())
     {
      mqtt.Loop();
       Sleep ( 100 );
     }
   mqtt.Disconnect();
   delete mqtt;
  }



Méthodes principales

Connect(host, port, params, useTLS) Connexion au broker
Disconnect() Fermeture correcte de la session
ForceDisconnect() Rupture de la connexion TCP (lancée par Will)
Publish(topic, payload, qos, retain) Publication d'un message
Subscribe(topic, qos) S'abonner à ce sujet
Unsubscribe(topic) Se désabonner
Loop() Traitement des paquets, maintien de la connexion, tentatives répétées
SetCallback(func) Fonction de rappel pour les messages entrants

Configuration requise

  • MetaTrader 5 (version 3390+)
  • Courtier MQTT 5.0 (Mosquitto >= 5.0, EMQX, HiveMQ)

Documentation : github.com/chekh/MQTTFive

Licence : MIT

Traduit du russe par MetaQuotes Ltd.
Code original : https://www.mql5.com/ru/code/73373

Institutional Markov Chain Transition Matrix Institutional Markov Chain Transition Matrix

Un moteur de probabilité stochastique quantitatif qui utilise des matrices de transition de chaînes de Markov pour prévoir mathématiquement le pourcentage de probabilité d'une poursuite de la tendance haussière ou baissière lors du prochain cycle d'exécution algorithmique.

Institutional Market Reversal - The SMC way Institutional Market Reversal - The SMC way

IMR est un outil quantitatif à plusieurs niveaux permettant d'identifier les renversements de tendance, conçu pour les traders discrétionnaires axés sur l'évolution des cours qui refusent de négocier à l'aveuglette. Il aide les traders à comprendre quel est le régime actuel du marché : s'il s'agit d'une phase d'accumulation, de distribution ou de poursuite de tendance.

Long-Only Trend Breakout with Dynamic Risk Management Long-Only Trend Breakout with Dynamic Risk Management

Breakout est un expert advisor MetaTrader 5 épuré et automatisé, conçu pour exploiter la dynamique algorithmique des cassures dans les marchés haussiers structurels.

Quantum XAUUSD Silver Trader Quantum XAUUSD Silver Trader

EA multi-indicateurs pour l'or (XAUUSD) et l'argent (XAGUSD) : signaux RSI, ADX et MA, stop suiveur ATR adaptatif et protection du capital intégrée.