Voir comment télécharger gratuitement des robots de trading
Retrouvez-nous sur Telegram !
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:
10
Note:
(1)
Publié:
\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

Consecutive Bars (with history) indicator for MT5 Consecutive Bars (with history) indicator for MT5

An oscillator that shows 2 line studies: 1 for consecutive up bars, and 1 for consecutive down bars.

Multi-Timeframe Candle Map Multi-Timeframe Candle Map

An educational MT5 panel that maps the live price vertically inside four developing candles and summarizes location alignment, dispersion, candle direction and time remaining.

ShowMinMaxDayLevels ShowMinMaxDayLevels

The indicator displays high and low levels of a day (specified by the input parameter value) on any timeframe.

MA_AC_Stochastic_Signal MA_AC_Stochastic_Signal

This indicator shows trend direction (Moving Average) and trading signals (Stochastic + Accelerator).