Expert Advisors • Indicators • Scripts • Libraries

MQL.RobotFX.org is the biggest collection of MetaTrader expert advisors (MT5 & MT4), indicators, scripts and libraries that can be used to improve trading results, minimize risks or simply automate trading tasks

MetaTrader 5 Expert Advisor | Connect Disconnect Sound Alert

MetaTrader Experts, Indicators, Scripts and Libraries

This utility is simple example to add sound alert on connect / disconnect

Add sounds wav files inside MQL5\Files\Sounds folder

Copy the code and compile the EA Utility, the attached file has commented lines as using of #resource makes uploading impossible

//+------------------------------------------------------------------+  //|                               Connect_Disconnect_Sound_Alert.mq5 |  //|                                Copyright 2024, Rajesh Kumar Nait |  //|                  https://www.mql5.com/en/users/rajeshnait/seller |  //+------------------------------------------------------------------+  #property copyright "Copyright 2024, Rajesh Kumar Nait"  #property link      "https://www.mql5.com/en/users/rajeshnait/seller"  #property version   "1.00"  #include <Trade/TerminalInfo.mqh>    bool     first             = true;  bool     Now_IsConnected   = false;  bool     Pre_IsConnected   = true;  datetime Connect_Start = 0, Connect_Stop = 0;    CTerminalInfo terminalInfo;  //--- Sound files  #resource "\\Files\\Sounds\\CONNECTED.wav"  #resource "\\Files\\Sounds\\DISCONNECTED.wav"  //+------------------------------------------------------------------+  //| Expert initialization function                                   |  //+------------------------------------------------------------------+  int OnInit()    {  //---        ResetLastError();        while ( !IsStopped() ) {           Pre_IsConnected = Now_IsConnected;           Now_IsConnected = terminalInfo.IsConnected();             if ( first ) {              Pre_IsConnected = !Now_IsConnected;           }             if ( Now_IsConnected != Pre_IsConnected ) {              if ( Now_IsConnected ) {                 Connect_Start = TimeLocal();                 if ( !first ) {                    if(!PlaySound("::Files\\Sounds\\DISCONNECTED.wav"))                       Print("Error: ",GetLastError());                 }                 if ( IsStopped() ) {                    break;                 }                 if(!PlaySound("::Files\\Sounds\\CONNECTED.wav"))                    Print("Error: ",GetLastError());              } else {                 Connect_Stop = TimeLocal();                 if ( !first ) {                    if(!PlaySound("::Files\\Sounds\\CONNECTED.wav"))                       Print("Error: ",GetLastError());                 }                 if ( IsStopped() ) {                    break;                 }                 if(!PlaySound("::Files\\Sounds\\DISCONNECTED.wav"))                    Print("Error: ",GetLastError());              }           }             first = false;           Sleep(1000);        }  //---     return(INIT_SUCCEEDED);    }    //+------------------------------------------------------------------+  


47846