How to Lock an EA Base on Broker Name

 

Please help me how to lock an EA base on broker name. 

The purpose is, the EA only can attach at account in selected broker.


What script should i attach in mql file?


Thank you

 
Berry Masli:

Please help me how to lock an EA base on broker name. 

The purpose is, the EA only can attach at account in selected broker.


What script should i attach in mql file?


Thank you

string AccountWorksName="JAFX Ltd";
int OnInit()
  {
//---
  if(AccountWorksName!=AccountInfoString(ACCOUNT_COMPANY))
  {
   Alert(" This EA work only "+AccountWorksName +" Brokers");
   ExpertRemove();
  }
//---
   return(INIT_SUCCEEDED);
  }
 
int OnInit(){  if(AccountWorksName!=AccountInfoString(ACCOUNT_COMPANY))

Don't try to use any price or server related functions in OnInit (or on load or in OnTimer before you've received a tick), as there may be no connection/chart yet:

  1. Terminal starts.
  2. Indicators/EAs are loaded. Static and globally declared variables are initialized. (Do not depend on a specific order.)
  3. OnInit is called.
  4. For indicators OnCalculate is called with any existing history.
  5. Human may have to enter password, connection to server begins.
  6. New history is received, OnCalculate called again.
  7. New tick is received, OnCalculate/OnTick is called. Now TickValue, TimeCurrent, account information and prices are valid.