• Übersicht
  • Bewertungen (5)
  • Diskussion (23)
  • Neue Funktionen

Native Websocket

5

An easy to use, fast, asynchronous WebSocket library for MQL5.

It supports:

  • ws:// and wss:// (Secure "TLS" WebSocket)
  • text and binary data

It handles:

  • fragmented message automatically (large data transfer)
  • ping-pong frames automatically (keep-alive handshake)

Benefits:

  • No DLL required.
  • No OpenSSL installation required.
  • Up to 128 WebSocket Connections from a single program.
  • Various Log Levels for error tracing
  • Can be synchronized to MQL5 Virtual Hosting.
  • Completely native to MQL5.
Click here to Download the latest WSMQL.mqhPlease ensure the MetaTrader downloaded library is downloaded/named as Native Websocket.ex5   

Sample code below:

//include WSMQL.mqh - a file that has all the declarations required to interact with the library
#include <WSMQL.mqh>
// Methods below
// class CWebSocketClient {
// public:
//    bool Initialized(void); // Checks if the WebSocket client is initialized.
//    ENUM_WEBSOCKET_STATE State(void); // Returns the current state of the WebSocket connection.
//    void SetMaxSendSize(int max_send_size); // Sets the maximum send size for WebSocket messages.

//    bool SetOnMessageHandler(OnWebsocketMessage callback); // Sets the callback function for handling incoming text messages.
//    bool SetOnPingHandler(OnWebsocketMessage callback); // Sets the callback function for handling incoming ping messages.
//    bool SetOnPongHandler(OnWebsocketMessage callback); // Sets the callback function for handling incoming pong messages.
//    bool SetOnCloseHandler(OnWebsocketMessage callback); // Sets the callback function for handling WebSocket connection closures.
//    bool SetOnBinaryMessageHandler(OnWebsocketBinaryMessage callback); // Sets the callback function for handling incoming binary messages.

//    bool Connect(const string url, const uint port = 443, const uint timeout = 5000, bool use_tls = true, ENUM_LOG_LEVEL log_level = LOG_LEVEL_NONE); // Connects to a WebSocket server.
//    bool ConnectUnsecured(const string url, const uint port = 80, const uint timeout = 5000, ENUM_LOG_LEVEL log_level = LOG_LEVEL_NONE); // Connects to a WebSocket server using an unsecured connection.
//    bool ConnectSecured(const string url, const uint port = 443, const uint timeout = 5000, ENUM_LOG_LEVEL log_level = LOG_LEVEL_NONE); // Connects to a WebSocket server using a secured connection.

//    bool Disconnect(ENUM_CLOSE_CODE close_code = NORMAL_CLOSE, const string msg = ""); // Disconnects from the WebSocket server.
//    int  SendString(const string message); // Sends a string message to the WebSocket server.
//    int  SendData(uchar& message_buffer[]); // Sends binary data to the WebSocket server.
//    int  SendPong(const string msg = ""); // Sends a pong message to the WebSocket server.
//    int  SendPing(const string msg); // Sends a ping message to the WebSocket server.
//    uint ReadString(string& out); // Reads a string message from the WebSocket server.
//    uint ReadStrings(string& out[]); // Reads multiple string messages from the WebSocket server.
//    uint OnReceiveString(); // Receives and processes incoming string messages.
//    uint OnReceiveBinary(); // Receives and processes incoming binary messages.
//    uint OnMessage(); // Receives and processes incoming WebSocket messages.
// };
// Create an instance of the Client
CWebSocketClient client;//I declared this globally because of OnPingMessage requiring it
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart() {
   // Check if the client is initialized
   if (!client.Initialized()) {
      ZeroHandle();//Cleanup all clients
      return;
   }

   // Set OnMessage handler to receive text messages
   client.SetOnMessageHandler(OnMessage);// use SetOnBinaryMessageHandler for binary messages

   // Set OnPing handler to receive ping messages, 
   // Pong will be automatically sent if this handler is not set
   client.SetOnPingHandler(OnPingMessage);// use SetOnPongHandler for pong messages

   // URL and msg declaration
   string url = "stream.binance.com/ws";//Or wss://stream.binance.com/ws
   string msg = "{\"params\":[\"btcusdt@bookTicker\"],\"method\":\"SUBSCRIBE\",\"id\":27175}";
   //ALERT: Make sure stream.binance.com has been added to WebRequest list in Options -> Expert Advisors tab

   /*

    Connect to the WebSocket server through either of the below-listed functions as required

   */

   // Fully Configurable
   // if (!client.Connect(url/* , 80 || 443, 5000, false || true, LOG_LEVEL_INFO */)) { 

   // For Non-TLS(unsecured) connection - without SSL required
   // if (!client.ConnectUnsecured(url/* , 80, 5000, LOG_LEVEL_INFO */)) {

   // For TLS(secured) connection - with SSL required
   if (!client.ConnectSecured(url/* , 443, 5000, LOG_LEVEL_INFO */)) {
      ZeroHandle();//Cleanup all clients
      return;
   }

   // Send a string message
   client.SendString(msg);

   // Process messages until the script is stopped
   while (true) {
      if (IsStopped())
         break;

      if (client.State() == CLOSED) {
         Print("Socket connection closed");
         //Reconnect?
         //client.ConnectSecured(url/* , 443, 5000, LOG_LEVEL_INFO */)
         //Or break the loop?
         break;
      }

      /*
         NB: You only need one of these functions
      */

      // Receive all messages and process them using their respective On{Message | BinaryMessage | Ping | Pong | Close} callback(handler)
      uint frames = client.OnMessages();

      // Receive messages and process only TEXT frames using the OnMessage callback
      // uint frames = client.OnStringMessages();

      // Receive messages and process only BINARY frames using the OnBinaryMessage callback
      // uint frames = client.OnBinaryMessages();

      if (frames > 0)
         Print("Frames Processed : ", frames);
   }

   // Disconnect from the WebSocket server
   Print("Disconnecting...");

   if (client.Disconnect()) {
      Print("Disconnected!");
   }
   else {
      Print("Failed to disconnect!");
   }

   //Cleanup all clients
   ZeroHandle();
}
//+------------------------------------------------------------------+
void OnMessage(string message) {
   Print(message);
}
//+------------------------------------------------------------------+
void OnPingMessage(string message) {
   Print("ping received:", message);
   if (client.SendPong() > 0) {
      Print("Pong sent successfully.");
   }
   else {
      Print("Failed to send pong.");
   }
}
//Sample Outputs:
//{"result":null,"id":27175}
//Frames Processed : 1
//---
//{"u":35893555769,"s":"BTCUSDT","b":"27812.78000000","B":"7.14299000","a":"27812.79000000","A":"0.81665000"}
//{"u":35893555770,"s":"BTCUSDT","b":"27812.78000000","B":"7.14299000","a":"27812.79000000","A":"0.82309000"}
//{"u":35893555771,"s":"BTCUSDT","b":"27812.78000000","B":"7.14964000","a":"27812.79000000","A":"0.82309000"}
//Frames Processed : 3
//---
//Frames Processed : 1
//ping received: ping
//Pong sent successfully.

Feel free to contact me for support and questions before/after purchase.



Bewertungen 5
thomasb892
19
thomasb892 2024.10.23 14:25 
 

This, Native WebSocket library by Racheal Samson is fast, handles secure wss:// connections effortlessly, and can manage large data transfers with ease.

I love that it's fully native to MQL5, with no extra installations required.

What really stood out was the author's quick response and genuine willingness to help, making the experience even smoother. Highly recommend both the library and the excellent support behind it!

Franck
21
Franck 2024.08.13 13:58 
 

Awesome support from Racheal, thanks for your help setting up the library, keep up the great work ;)

David Moffitt
30
David Moffitt 2024.05.28 21:33 
 

Needed some help to work out some kinks with the library and my code. Racheal was quick and attentive to support!

Empfohlene Produkte
MT4/5通用交易库(  一份代码通用4和5 ) #ifdef __MQL5__      #define KOD_TICKET ulong      #define KOD_MAGIC   long #else        #define KOD_TICKET long      #define KOD_MAGIC   int #endif class ODLIST; #import "K Trade Lib Pro 5.ex5"       //祝有个美好开始,运行首行加入    void StartGood() ;    //简单开单    long OrderOpen( int type, double volume, int magic, string symbol= "" , string comment= "" , double opprice= 0 , double sl= 0 , double tp= 0 , int expiration= 0 , bool slsetmode= false , bool tpsetmode= false );    //复杂开单
Dienstprogramm für automatisches Auftrags- und Risikomanagement. Ermöglicht es Ihnen, das Maximum aus den Gewinnen herauszuholen und Ihre Verluste zu begrenzen. Erstellt von einem praktizierenden Trader für Trader. Das Dienstprogramm ist einfach zu bedienen und funktioniert mit allen Marktaufträgen, die manuell von einem Händler oder mit Hilfe von Beratern eröffnet wurden. Kann Trades nach magischer Zahl filtern. Das Dienstprogramm kann mit einer beliebigen Anzahl von Aufträgen gleichzeitig arb
The Matrix
Omega J Msigwa
Matrix is the foundation of complex trading algorithms as it helps you perform complex calculations effortlessly and without the need for too much computation power, It's no doubt that matrix has made possible many of the calculations in modern computers as we all know that bits of information are stored in array forms in our computer memory RAM, Using some of the functions in this library I was able to create machine learning robots that could take on a large number of inputs To use this libra
Introducing "TG Trade Service Manager" — your all-in-one solution for seamless trade management in both MQL4 and MQL5 environments. With a focus on speed, reliability, and convenience, this powerful library simplifies the complexities of trade execution and management, empowering developers with a single interface for enhanced efficiency. Metatrader4 Version   |   All Products   |   Contact   Key Features: Unified Interface : TG Trade Service Manager" provides a unified interface for   MQL4   a
KopierMaschine - локальный копировщик сделок между различными счетами MetaTrader 4 и MetaTrader 5 в любом направлении расположенных на одном компьютере с интуитивно понятным интерфейсом. Направления копирования: MT4 --> MT5 MT4 --> MT4 MT5 --> MT5 MT5 --> MT4 для копирования между терминалами MetaTrader 4 и   MetaTrader   5 необходимо приобрести версию продукта   KopierMaschine  для    MetaTrader  4 Особенности Программа работает в двух режимах Master и Slave На один подчиненный счет можно коп
The Trade Tracker Library is used to automatically detect and display trade levels on custom charts. It is an especially useful add-on for EAs that trade on custom charts in MT5. With the use of this library, the EA users can see trades as they are placed via the EA (Entry, SL & TP levels) in real-time. The header file and two examples of EA skeleton files are attached in the comments section (first comment). The library will automatically detect the tradable symbol for the following custom
1. What is this The MT5 system comes with very few optimization results. Sometimes we need to study more results. This library allows you to output more results during backtest optimization. It also supports printing more strategy results in a single backtest. 2. Product Features The results of the optimized output are quite numerous. CustomMax can be customized. The output is in the Common folder. It is automatically named according to the name of the EA, and the name of the same EA will be au
Premium-Level ist ein einzigartiger Indikator mit mehr als 80% Genauigkeit der richtigen Vorhersagen! Dieser Indikator wurde von den besten Trading-Spezialisten seit mehr als zwei Monaten getestet! Den Indikator des Autors finden Sie nirgendwo anders! Anhand der Screenshots können Sie sich von der Genauigkeit dieses Tools überzeugen! 1 ist ideal für den Handel mit binären Optionen mit einer Ablaufzeit von 1 Kerze. 2 funktioniert bei allen Währungspaaren, Aktien, Rohstoffen, Kryptowähr
Order Book, known also as Market Book, market depth, Level 2, - is a dynamically updated table with current volumes of orders to buy and to sell specific financial instument at price levels near Bid and Ask. MetaTrader 5 provides the means for receiving market book from your broker, but in real time only, without access to its history. The library OrderBook History Library reads market book state in the past from archive files, created by OrderBook Recorder . The library can be embedded into you
Best Tested Pairs :-  Step Index (Also can use on other pairs which spread is lowest) How does the Magic Storm work The Magic Storm will commence only if the Initial Trade becomes a losing trade. In case the initial trade is a profitable one, or has been closed by the trader there is no need for the Magic Stormto be initiated. Let’s assume that the initial trade was a 1 lot buy trade with Recovery Zone Range Pips is 50 and Recovery Zone Exit Pips is 150 pips. The take profit fo
TradePad
Ruslan Khasanov
5 (1)
Eine einfache Lösung für schnelle Handelsoperationen und Positionskontrolle auf mehreren Handelsinstrumenten. Die Bedienfeldoberfläche ist einfach und intuitiv. Für eine komfortable Arbeit eines Händlers verfügt das Panel über: Manager von "Hot Keys", mit denen Sie alle Handelsoperationen und Chartperioden verwalten können; ein Tool zum Markieren von Handelsniveaus bei der Platzierung von Pending- oder Market-Orders zur Bewertung von Risiken und potenziellen Gewinnen bei der Festlegung von Stop-
Noize Absorption Index - is the manual trading system that measures the difference of pressure between bears forces and bulls forces. Green line - is a noize free index that showing curent situation. Zero value of index shows totally choppy/flat market.Values above zero level shows how powerfull bullish wave is and values below zero measures bearish forces.Up arrow appears on bearish market when it's ready to reverse, dn arrow appears on weak bullish market, as a result of reverse expectation.
Mt5TradeCopier
Mcblastus Gicharu Ndiba
Forex Trade copier MT5.  It copies forex trades, positions, orders from any accounts to any other account,  MT5 even multiple accounts. The unique copying algorithm exactly copies all trades from the master account to your client account. It is also noted for its high operation speed and Tough error handling. It also can copy from demo account to live account too. It is one of the best free trade copiers that can do ,  MT5 or to multiple accounts  MT5 to multiple accounts  Features of Trade Copi
Breakevan Utility
Jose Luis Thenier Villa
BreakEvan Utility  Is a simple tool in a panel with this utilities: This utility will draw a Golden Line in the chart applied showing the breakeven price, considering all the positions opened for that specific symbol. Also the information panel shows: Balance Breakeven Price for that chart Force Breakeven (for that symbol) as ON/OFF Force Breakeven Global (takes into account all trades opened) as ON/OFF Total Lots opened for Symbol Total Lots opened Global And two buttons: Force Breakeven: W
Cloner for MT5
Volodymyr Hrybachov
Das Dienstprogramm wurde entwickelt, um Trades auf Ihrem Handelskonto zu klonen - das Programm eröffnet einen zusätzlichen Trade mit Ihren Parametern. Es hat die Möglichkeit, das Lot zu erhöhen oder zu verringern, ein Lot hinzuzufügen, die Stoploss- und Takeprofit-Parameter zu ändern. Das Programm ist für die Arbeit auf "Windows PC" und "Windows VPS" ausgelegt.  Buy a cloner and get the second version for free Parameter: CLONE_POSITIONS - welche Aufträge geklont werden sollen; MAGIC_NUMBER
This is a service used to create custom symbols from an existing symbol by adding D2, D3, D4, W2 and W3 timeframes.  List Symbols (Exp: EURUSD,GBPUSD,XAUUSD) : Declare the list of symbols to create the custom symbols. Example: AUDUSD,EURUSD,EURGPB,XAUUSD. Now the service will create the following custom symbols: AUDUSD_D2, AUDUSD_D3, AUDUSD_D4, AUDUSD_W2, AUDUSD_W3  EURUSD_D2, EURUSD_D3, EURUSD_D4, EURUSD_W2, EURUSD_W3 EURGPB_D2, EURGPB_D3, EURGPB_D4, EURGPB_W2, EURGPB_W3 XAUUSD_D2, XAUUSD_D3, X
Bober Real MT5
Arnold Bobrinskii
4.76 (17)
Bober Real MT5 is a fully automatic Forex trading Expert Advisor. This robot was made in 2014 year and did a lot of profitbale trades during this period. So far over 7000% growth on my personal account. There was many updates but 2019 update is the best one. The robot can run on any instrument, but the results are better with EURGBP, GBPUSD, on the M5 timeframe. Robot doesn't show good results in tester or live account if you run incorrect sets. Set files for Live accounts availible only for c
!! BLACK FRIDAY !!  FOR LIFETIME !! ================== == 35$ ONLY !! == ================== BOOK YOURS NOW !! The Position Manager Contains A Lot of Functions such as; (How to Operate) 1. Adjustable Volume per Trade (You could change the volume as you wish per trade). 2. Adjustable Risk : Reward Ratio (1RR means sacrifice 1 Risk : 1 Reward, 1.5RR, 2RR etc. as you wish) 3. Adjustable Stop Loss Points (Calculated Points as Stop Loss and Automatically adjusted the Risk Reward Ratio) 4. Buy Butt
HiperCube Protector
Adrian Lara Carrasco
HiperCube Protector ist da! HiperCube Protector ist der einfachste und leichteste DrawDown-Limiter, um die Kontrolle über Ihr Konto zu behalten! Dieses Tool zielt darauf ab, Ihr Konto in Echtzeit zu schützen, verwenden Sie eine Max-Drawdown- oder StopLoss-Einstellung. Funktionen: Kontrollieren Sie den DrawDown in Prozent oder Geld, basierend auf Ihrem Kontostand Benutzerfreundliche und elegante Benutzeroberfläche, um Daten in Echtzeit anzuzeigen Senden Sie Benachrichtigungen an Telegram, se
Write notes directly on the chart and use your observations when trading The option to synchronize  reminders  between  S ymbols allows you to remember important information about the current  market  state Thus , this utility will help you avoid a situation where important information that you noticed earlier was missed when trading . My  #1 Utility : includes 65+ features  |   Contact me  if you have any questions  |   MT4 version Settings: The method of syncing notes : Synchronize between th
Owl Smart Levels MT5
Sergey Ermolov
4.07 (28)
MT4-Version  |  FAQ Der Owl Smart Levels Indikator ist ein komplettes Handelssystem innerhalb eines Indikators, der so beliebte Marktanalysetools wie die fortschrittlichen Fraktale von Bill Williams , Valable ZigZag, das die richtige Wellenstruktur des Marktes aufbaut, und Fibonacci-Levels , die die genauen Einstiegslevels markieren, enthält in den Markt und Orte, um Gewinne mitzunehmen. Detaillierte Strategiebeschreibung Anleitung zur Verwendung des Indikators Berater-Assistent im Handel Owl H
Trading Utility for Forex Currency Pairs Only not for Gold  Functions Auto Lot Calculation based on Risk Auto stoploss  Auto TakeProfit Breakeven Auto Close Half % Close in percentage with respect to the PIPs Pending Orders BuyLimit Sell Limit with distances BuyStop Sell Stop    with distances Trading Informations Risk in percentage For Multiple trades Combine Takeprofit and Combine Stoplosses
Der Indikator erstellt aktuelle Notierungen, die mit historischen verglichen werden können, und auf dieser Grundlage eine Preisbewegungsprognose erstellen. Der Indikator verfügt über ein Textfeld zur schnellen Navigation zum gewünschten Datum. Optionen: Symbol - Auswahl des Symbols, das der Indikator anzeigen soll; SymbolPeriod - Auswahl des Zeitraums, aus dem der Indikator Daten aufnimmt; IndicatorColor - Indikatorfarbe; HorisontalShift - Verschiebung der vom Indikator gezeichnet
Signal Copy Multiplier kopiert automatisch Trades auf demselben Konto, um z. B. bei einem abonnierten Signal einen besseren Einstieg und ein angepasstes Volumen zu erreichen. MT4-Version:  https://www.mql5.com/de/market/product/67412 MT5-Version:  https://www.mql5.com/de/market/product/67415 Sie haben ein gutes Signal gefunden, aber das Volumen der Trades des Providers ist zu klein?  Mit Signal Copy Multiplier haben Sie die Möglichkeit, Trades von jeder Quelle (Expert Advisor, Signal, manuelle
HFTHackerMT5
Thomas Bradley Butler
5 (3)
Aufgrund der Komplexität und Verwirrung für Benutzer bei der Optimierung wurde auf die einfache Version ohne Wiederherstellung zurückgegriffen. Wenn Sie die vorherige Version unter 15 mit Wiederherstellung gekauft haben, verwenden Sie nicht 15. Ich muss zwischen Verkauf und Benutzerfeedback entscheiden. Wenn es zu kompliziert ist, werden Benutzer es nicht verwenden. Optimisieren Sie EA vor dem Testen und Verwenden. Kaufen Sie es nur, wenn Sie es optimiert haben. Dies ist für Händler, die wisse
Short Description: FTMO Protector PRO MT5 is an EA designed to protect your funded account by   managing risk   and ensuring compliance with the   Prop Firm's trading rules . This EA automatically   monitors equity levels ,   closes trades   when   profit targets   or   drawdown limits   are   reached , and provides a visual display of key account metrics. Overview: FTMO Protector PRO MT5 is an  Drawdown Safeguard   Expert Advisor   meticulously crafted for traders participating in   Prop
EnkiSoft Trade Clone EA  new! User description in MQL5 blog You can use it on unlimilted clients for unlimited time! MT4  version download here With   Trade Clone EA   you can trade on multiple MetaTrader 4 and  MetaTrader 5  accounts simultaneously, clone the trades of any trading robot from server account to your friends and family accounts.  Note: All MetaTrader 4 and  MetaTrader 5  must run in same computer, or you need copy the trade file to the Client computer. You can run multip
PipFinite Exit EDGE MT5
Karlo Wilson Vendiola
4.86 (29)
Did You Have A Profitable Trade But Suddenly Reversed? In a solid strategy, exiting a trade is equally important as entering. Exit EDGE helps maximize your current trade profit and avoid turning winning trades to losers. Never Miss An Exit Signal Again Monitor all pairs and timeframes in just 1 chart www.mql5.com/en/blogs/post/726558 How To Trade You can close your open trades as soon as you receive a signal Close your Buy orders if you receive an Exit Buy Signal. Close your Sell orde
EnkiSoft Trade Clone EA User description in MQL5 blog New version 1.57 Read updates MT4  version download here With   Trade Clone EA   you can trade on multiple   MetaTrader 4   and  MetaTrader 5  accounts simultaneously, clone the trades of any trading robot from server account to your friends and family accounts.  Note: All MetaTrader 4 and    MetaTrader 5  must run in same computer, or you need copy the trade file to the Client computer. You can run multiple Trade Clone EA as server, and
The Trendline Trade Panel was created to make it easier to train forex trading skills in backtester and at the same time make it easier to live trade using trendlines with the push of a button. This ea is perfect for beginners who want to learn to trade manually because all of its features are equipped with basic tools for trading forex. Other uses for Trendline Trade Panel: + Can be used to perform recovering loss positions made by other EA or positions that open manually. Fill in magic number
Käufer dieses Produkts erwarben auch
Diese Bibliothek ermöglicht Ihnen die Verwaltung von Trades mit jedem Ihrer EAs und lässt sich sehr einfach in jeden EA integrieren, was Sie selbst mit dem in der Beschreibung erwähnten Skriptcode und auch Demo-Beispielen auf einem Video tun können, das den gesamten Prozess zeigt. - Platzieren Sie Limit-, SL-Limit- und Take-Profit-Limit-Orders - Platzieren Sie Market-, SL-Market- und TP-Market-Bestellungen - Limit-Order ändern - Bestellung stornieren - Abfrageaufträge - Hebelwi
The library is dedicated to help manage your trades, calculate lot, trailing, partial close and other functions. Lot Calculation Mode 0: Fixed Lot. Mode 1: Martingale Lot (1,3,5,8,13) you can use it in different way calculate when loss=1 ,when profit=0. Mode 2: Multiplier Lot (1,2,4,8,16) you can use it in different way calculate when loss=1 ,when profit=0. Mode 3: Plus Lot (1,2,3,4,5) you can use it in different way calculate when loss=1 ,when profit=0. Mode 4: SL/Risk Lot calculate based on
WalkForwardOptimizer MT5
Stanislav Korotky
3.86 (7)
WalkForwardOptimizer library allows you to perform rolling and cluster walk-forward optimization of expert advisers (EA) in MetaTrader 5. To use the library include its header file WalkForwardOptimizer.mqh into your EA source code, add call provided functions as appropriate. Once the library is embedded into EA, you may start optimization according to the procedure described in the User guide . When it's finished, intermediate results are saved into a CSV file and some special global variables.
MetaCOT 2 CFTC ToolBox is a special library that provides access to CFTC (U.S. Commodity Futures Trading Commission) reports straight from the MetaTrader terminal. The library includes all indicators that are based on these reports. With this library you do not need to purchase each MetaCOT indicator separately. Instead, you can obtain a single set of all 34 indicators including additional indicators that are not available as separate versions. The library supports all types of reports, and prov
This is a simplified and effective version of the library for walk forward analysis of trading experts. It collects data about the expert's trade during the optimization process in the MetaTrader tester and stores them in intermediate files in the "MQL5\Files" directory. Then it uses these files to automatically build a cluster walk forward report and rolling walk forward reports that refine it (all of them in one HTML file). Using the WalkForwardBuilder MT5 auxiliary script allows building othe
Cryptocurrency analysis has never been easier with Crypto Charts for MetaTrader 5. Now, trading on BitMEX has never been easier with BitMEX Trading API for MetaTrader 5. BitMEX Trading API library was built to be as easy to use as possible. Just include the library into your Expert Advisor or Script, call the corresponding methods and start trading! Features Trade on BitMEX and BitMEX Testnet. Build and automate your strategies. Concern more with the trading strategy logic and less with the c
Goliath Mt5
Nicolokondwani Biscaldi
Goliath MT5 - scalper fully automated Expert Advisor for medium-volatile forex markets P roperties: The Library trades 10 currency pairs (USDCHF, EURCHF, EURGBP, AUDUSD, USDCAD, GBPUSD, EURUSD, NZDUSD, CADCHF, EURAUD, EURCAD, AUDJPY) The Library does not use martingale The Library sets a fixed stop loss and take profit for all orders The Library only trades a user input volume The Library can be installed on any currency pair and any timeframe Recommendations: Before using on a real account,
Binance Library
Hadil Mutaqin SE
5 (1)
The library is used to develop automatic trading on Binance Spot Market from MT5 platform. Support all order types: Limit, Market, Stop-Limit and Stop-Market. Support margin trading. Automatically display the chart on the screen. Usage: - Open MQL5 demo account - Move BinanceLib.ex5 from folder \MQL5\Scripts\Market to MQL5\Libraries - Download Header   file and EA sample https://www.mql5.com/en/code/download/34972_260999.zip Copy Binance.mqh header file to folder \MQL5\Include Copy  BinanceEA-
Gold plucking machine   Gold plucking machine is an Expert Advisor designed specifically for trading gold. The operation is based on opening orders using the Fast and Slow lines indicator, thus the EA works according to the "Trend Follow" strategy, which means following the trend. Use grid strategy to place orders without stop loss operation, so please make sure the account has sufficient funds. magic number      -  is a special number that the EA assigns to its orders. Lot Multiplier        -
Gold plucking machine S   Gold plucking machine  S Gold plucking machine S   is an Expert Advisor designed specifically for trading gold. The operation is based on opening orders using the Fast and Slow lines indicator, thus the EA works according to the "Trend Follow" strategy, which means following the trend. Use grid strategy to place orders without stop loss operation, so please make sure the account has sufficient funds. magic number        -  is a special number that the EA assigns to its
The library is used to develop automatic trading on Binance Futures Market from MT5 platform. Support all order types: Limit, Market, Stop-Limit, Stop-Market , StopLoss and TakeProfit. Automatically display the chart on the screen. Usage: - Open MQL5 demo account - Move BinanceFuturesLib.ex5 from folder \MQL5\Scripts\Market to MQL5\Libraries -  Download Header file and EA sample https://www.mql5.com/en/code/download/34976_252386.zip Copy BinanceFutures.mqh header file to folder \MQL5\Include C
If you're a trader looking to use Binance.com and Binance.us exchanges directly from your MetaTrader 5 terminal, you'll want to check out Binance Library MetaTrader 5. This powerful tool allows you to trade all asset classes on both exchanges, including Spot, USD-M   and COIN-M futures, and includes all the necessary functions for trading activity. With Binance Library MetaTrader 5, you can easily add instruments from Binance to the Symbols list of MetaTrader 5, as well as obtain information ab
AO Core
Andrey Dik
3 (2)
AO Core is the core of the optimization algorithm, it is a library built on the author's HMA (hybrid metaheuristic algorithm) algorithm. Pay attention to the MT5 Optimization Booster product , which makes it very easy to manage the regular MT5 optimizer . An example of using AO Core is described in the article: https://www.mql5.com/ru/articles/14183 https://www.mql5.com/en/blogs/post/756510 This hybrid algorithm is based on a genetic algorithm and contains the best qualities and properties of
EA Toolkit
Esteban Thevenon
EA Toolkit   is a library that allows any developer to quickly and easily program Advisor experts. It includes many functions and enumerations such as trailing stop, lot, stop loss management, market trading authorisations, price table updates, trading conditions and many more. Installation + Documentation : You will find all the information to install this library and the documentation of its functions on this GitHub : https://github.com/Venon282/Expert-Advisor-Toolkit WARNING : The installa
This is standard library built for flexible neural Networks with performance in mind. Calling this Library is so simple and takes few lines of code:    matrix Matrix = matrix_utils.ReadCsv( "Nasdaq analysis.csv" );       matrix x_train, x_test;    vector y_train, y_test;         matrix_utils.TrainTestSplitMatrices(Matrix,x_train,y_train,x_test,y_test, 0.7 , 42 );    reg_nets = new CRegressorNets(x_train,y_train,AF_RELU_,HL, NORM_MIN_MAX_SCALER); //INitializing network       reg_nets.RegressorN
Hello everyone! I am a professional MQL programmer , Making EAs, Indicators and Trading Tools for my clients all over the world. I build 3-7 programs every week but I seldomly sell any ready-made Robots. Because I am fastidious and good strategy is so few...  this EA is the only one so far I think its good enough to be published here.  As we all know, the Ichimoku indicator has become world popular for decades, but still, only few people knows the right way of using it, and if we check the cl
Als ich tief in den Bereich der Finanz- und Handelsstrategien eintauchte, beschloss ich, eine Reihe von Experimenten durchzuführen und dabei sowohl Ansätze zu untersuchen, die auf Reinforcement Learning basieren, als auch solche, die ohne dieses auskommen. Durch die Anwendung dieser Methoden gelang es mir, eine differenzierte Schlussfolgerung zu formulieren, die für das Verständnis der Bedeutung einzigartiger Strategien im modernen Handel von entscheidender Bedeutung ist. Obwohl neuronale Netzwe
Introducing "TG Risk Service Manager" — your comprehensive toolkit for swift and precise risk management and lot size calculations in the dynamic world of trading. Designed to streamline development processes and enhance trading strategies, this indispensable library equips developers with essential tools for optimizing risk assessment and trade profitability. Metatrader4 Version |  All Products  |  Contact   Key Features: Efficient Lot Size Calculation : Harness the power of precise lot size
This is an EXPERT with a FOCUS on LEARNING and PROFESSIONAL DEVELOPMENT!!! The idea of this product is to commercialize the source code, allowing those who want to develop their own robots, or start a professional activity developing customized experts, to have a reference source code that helps them in the learning and development process. This source code will be increased, that is, new functionalities will be created, thus allowing the project to continue evolving. For every 10 sales a new v
The following library is proposed as a means of being able to use the OpenAI API directly on the metatrader, in the simplest way possible. For more on the library's capabilities, read the following article: https://www.mql5.com/en/blogs/post/756098 The files needed to use the library can be found here: Manual IMPORTANT: To use the EA you must add the following URL to allow you to access the OpenAI API as shown in the attached images In order to use the library, you must include the following Hea
Nmt5
Liang Qi Quan
这段代码是一个简单的交易专家顾问(Expert Advisor)示例,主要功能如下: 使用两个移动平均线(MA)作为交易信号: 快速MA(FastMA)和慢速MA(SlowMA) 初始化函数(OnInit): 创建两个MA指标句柄 设置数组为时间序列模式 清理函数(OnDeinit): 释放指标句柄,防止内存泄漏 主要交易逻辑(OnTick): 获取最新的MA值 判断趋势和交易信号 在无持仓时执行交易 交易规则: 上升趋势+买入信号时开多单 下降趋势+卖出信号时开空单 使用固定的止损和止盈点数 风险管理: 使用输入参数设置交易手数、止损和止盈 每次只允许一个持仓(inTrade变量) 使用MQL5的Trade库进行交易操作,简化了下单过程 这个EA适合初学者学习,展示了基本的EA结构和简单的交易策略实现方法。但在实际使用前,还需要进行更多的测试和优化。
Diese Bibliothek ermöglicht Ihnen die Verwaltung von Trades mit jedem Ihrer EAs und lässt sich sehr einfach in jeden EA integrieren, was Sie selbst mit dem in der Beschreibung erwähnten Skriptcode und auch Demo-Beispielen auf einem Video tun können, das den gesamten Prozess zeigt. - Platzieren Sie Limit-, SL-Limit- und Take-Profit-Limit-Orders - Platzieren Sie Market-, SL-Market- und TP-Market-Bestellungen - Limit-Order ändern - Bestellung stornieren - Abfrageaufträge - Hebelwi
The library is dedicated to help manage your trades, calculate lot, trailing, partial close and other functions. Lot Calculation Mode 0: Fixed Lot. Mode 1: Martingale Lot (1,3,5,8,13) you can use it in different way calculate when loss=1 ,when profit=0. Mode 2: Multiplier Lot (1,2,4,8,16) you can use it in different way calculate when loss=1 ,when profit=0. Mode 3: Plus Lot (1,2,3,4,5) you can use it in different way calculate when loss=1 ,when profit=0. Mode 4: SL/Risk Lot calculate based on
WalkForwardOptimizer MT5
Stanislav Korotky
3.86 (7)
WalkForwardOptimizer library allows you to perform rolling and cluster walk-forward optimization of expert advisers (EA) in MetaTrader 5. To use the library include its header file WalkForwardOptimizer.mqh into your EA source code, add call provided functions as appropriate. Once the library is embedded into EA, you may start optimization according to the procedure described in the User guide . When it's finished, intermediate results are saved into a CSV file and some special global variables.
GetFFEvents MT5 I tester capability
Hans Alexander Nolawon Djurberg
Want to get all events like Previous/Forecast/Actual values for each news to analyze/predict it? By this simple library you can do it easily,Just import/integrate the library into your system,then get all possible values for each news   Even In Strategy Tester   . Note: Please add the address " https://www.forexfactory.com/ " of news feed at your MT5 tab > Tools > Options > Expert Advisors > Check Allow web request for listed URL. Since the WebRequest() function can't be called from indicator ba
Native Websocket
Racheal Samson
5 (5)
An   easy to use, fast,  asynchronous   WebSocket library  for MQL5. It supports: ws://   and   wss://  (Secure "TLS" WebSocket) text   and   binary   data It handles: fragmented message  automatically (large data transfer) ping-pong   frames  automatically (keep-alive handshake) Benefits: No DLL required. No OpenSSL installation required. Up to 128 WebSocket Connections from a single program. Various Log Levels for error tracing Can be synchronized to MQL5 Virtual Hosting . Completely native to
MetaCOT 2 CFTC ToolBox is a special library that provides access to CFTC (U.S. Commodity Futures Trading Commission) reports straight from the MetaTrader terminal. The library includes all indicators that are based on these reports. With this library you do not need to purchase each MetaCOT indicator separately. Instead, you can obtain a single set of all 34 indicators including additional indicators that are not available as separate versions. The library supports all types of reports, and prov
This is a simplified and effective version of the library for walk forward analysis of trading experts. It collects data about the expert's trade during the optimization process in the MetaTrader tester and stores them in intermediate files in the "MQL5\Files" directory. Then it uses these files to automatically build a cluster walk forward report and rolling walk forward reports that refine it (all of them in one HTML file). Using the WalkForwardBuilder MT5 auxiliary script allows building othe
Cryptocurrency analysis has never been easier with Crypto Charts for MetaTrader 5. Now, trading on BitMEX has never been easier with BitMEX Trading API for MetaTrader 5. BitMEX Trading API library was built to be as easy to use as possible. Just include the library into your Expert Advisor or Script, call the corresponding methods and start trading! Features Trade on BitMEX and BitMEX Testnet. Build and automate your strategies. Concern more with the trading strategy logic and less with the c
Teclado trader, é uma BIBLIOTECA que você pode chamar no OnChartEvent para abrir posição de compra/venda/zerar, os botões padrões são: V = venda C = compra Z = zerar posições a mercado S = zerar posições opostas e depois a mercado X = zerar posições opostas Além da função de teclado, é possível mostrar os estados do ExpertAdvisor usando o MagicId, com informação de: lucro mensal, semanal, diario, e posição aberta, para isto use o OnTick, ou qualquer outro evento (OnTimer / OnTrade / OnBookEv
Auswahl:
thomasb892
19
thomasb892 2024.10.23 14:25 
 

This, Native WebSocket library by Racheal Samson is fast, handles secure wss:// connections effortlessly, and can manage large data transfers with ease.

I love that it's fully native to MQL5, with no extra installations required.

What really stood out was the author's quick response and genuine willingness to help, making the experience even smoother. Highly recommend both the library and the excellent support behind it!

Racheal Samson
1490
Antwort vom Entwickler Racheal Samson 2024.10.23 15:17
Thanks for the rating, highly appreciated.
Franck
21
Franck 2024.08.13 13:58 
 

Awesome support from Racheal, thanks for your help setting up the library, keep up the great work ;)

Racheal Samson
1490
Antwort vom Entwickler Racheal Samson 2024.08.13 13:59
I'm glad to be of help, it's what you paid for. I'm always here to help.
David Moffitt
30
David Moffitt 2024.05.28 21:33 
 

Needed some help to work out some kinks with the library and my code. Racheal was quick and attentive to support!

Racheal Samson
1490
Antwort vom Entwickler Racheal Samson 2024.05.29 00:58
Thanks for the rating, the words are premium and highly appreciated.
Erik Stabij
43
Erik Stabij 2024.01.24 22:08 
 

The library works well and Racheal was very helpfull!

Racheal Samson
1490
Antwort vom Entwickler Racheal Samson 2024.01.24 22:10
I'm always happy to help. Will be here for you anytime. Thanks for the rating :D
helk3rn
248
helk3rn 2024.01.16 15:23 
 

works good, thx

Racheal Samson
1490
Antwort vom Entwickler Racheal Samson 2024.01.16 16:59
Thanks for the rating, I'm always here to help.
Antwort auf eine Rezension
Version 1.417 2024.10.01
Renamed OnStringMessage => OnStringMessages
Renamed OnBinaryMessage => OnBinaryMessages
Version 1.416 2024.10.01
Renamed OnReceiveString => OnStringMessage
Renamed OnReceiveBinary => OnBinaryMessage
Version 1.415 2024.10.01
Fixed minor callback bug
Version 1.414 2024.10.01
Fixed minor bug
Version 1.413 2024.10.01
Improved Logging
Added ConnectSecured()
Added ConnectUnsecured()

Added SetOnMessageHandler()
Added SetOnPingHandler()
Added SetOnPongHandler()
Added SetOnCloseHandler()
Added OnMessage()

Automatically send Pong when PingHandler is not set with SetOnPingHandler

OnMessage:-
This method is responsible for reading and processing incoming WebSocket messages, and invoking the appropriate handlers based on the message type, e.g PingHandler for Ping messages.
Version 1.395 2024.09.29
Fixed buggy Handshake for Insecure Websocket Connection.
Version 1.39 2024.08.13
Logger Bug fixed
Version 1.38 2024.08.13
Minor improvement
Version 1.37 2024.08.13
Better Log Operation
Version 1.36 2024.08.13
Minor bugfix
Version 1.35 2024.08.12
Fixed MQL Callback bug
Switched to Class
Updated example
Version 1.32 2024.08.10
Recompiled on a newer version.
Version 1.3 2024.03.04
Fix issue confirming non-compliant "Sec-Websocket-Accept:"(instead of "Sec-WebSocket-Accept:") connection
Version 1.2 2024.01.24
Minor improvement
Version 1.1 2024.01.15
Fixed an error 493 error that occurs when there's a lag between the client and the host server