//+------------------------------------------------------------------+
//|                                         ErrorDescription_ENG.mqh |
//|                      Copyright © 2004, MetaQuotes Software Corp. |
//|                                       http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
string ErrorDescription_ENG(int error_code)
  {
   string error_string;
//----
   switch(error_code)
     {
      //---- codes returned from trade server
      case 0:                                                                                                           break;
      case 1:   error_string="Error ciode = "+error_code+", no error";                                                  break;
      case 2:   error_string="Error ciode = "+error_code+", common error";                                              break;
      case 3:   error_string="Error ciode = "+error_code+", invalid trade parameters";                                  break;
      case 4:   error_string="Error ciode = "+error_code+", trade server is busy";                                      break;
      case 5:   error_string="Error ciode = "+error_code+", old version of the client terminal";                        break;
      case 6:   error_string="Error ciode = "+error_code+", no connection with trade server";                           break;
      case 7:   error_string="Error ciode = "+error_code+", not enough rights";                                         break;
      case 8:   error_string="Error ciode = "+error_code+", too frequent requests";                                     break;
      case 9:   error_string="Error ciode = "+error_code+", malfunctional trade operation";                             break;
      case 64:  error_string="Error ciode = "+error_code+", account disabled";                                          break;
      case 65:  error_string="Error ciode = "+error_code+", invalid account";                                           break;
      case 128: error_string="Error ciode = "+error_code+", trade timeout";                                             break;
      case 129: error_string="Error ciode = "+error_code+", invalid price";                                             break;
      case 130: error_string="Error ciode = "+error_code+", invalid stops";                                             break;
      case 131: error_string="Error ciode = "+error_code+", invalid trade volume";                                      break;
      case 132: error_string="Error ciode = "+error_code+", market is closed";                                          break;
      case 133: error_string="Error ciode = "+error_code+", trade is disabled";                                         break;
      case 134: error_string="Error ciode = "+error_code+", not enough money";                                          break;
      case 135: error_string="Error ciode = "+error_code+", price changed";                                             break;
      case 136: error_string="Error ciode = "+error_code+", off quotes";                                                break;
      case 137: error_string="Error ciode = "+error_code+", broker is busy";                                            break;
      case 138: error_string="Error ciode = "+error_code+", requote";                                                   break;
      case 139: error_string="Error ciode = "+error_code+", order is locked";                                           break;
      case 140: error_string="Error ciode = "+error_code+", long positions only allowed";                               break;
      case 141: error_string="Error ciode = "+error_code+", too many requests";                                         break;
      case 145: error_string="Error ciode = "+error_code+", modification denied because order too close to market";     break;
      case 146: error_string="Error ciode = "+error_code+", trade context is busy";                                     break;
      //---- mql4 errors
      case 4000: error_string="Error ciode = "+error_code+", no error";                                                 break;
      case 4001: error_string="Error ciode = "+error_code+", wrong function pointer";                                   break;
      case 4002: error_string="Error ciode = "+error_code+", array index is out of range";                              break;
      case 4003: error_string="Error ciode = "+error_code+", no memory for function call stack";                        break;
      case 4004: error_string="Error ciode = "+error_code+", recursive stack overflow";                                 break;
      case 4005: error_string="Error ciode = "+error_code+", not enough stack for parameter";                           break;
      case 4006: error_string="Error ciode = "+error_code+", no memory for parameter string";                           break;
      case 4007: error_string="Error ciode = "+error_code+", no memory for temp string";                                break;
      case 4008: error_string="Error ciode = "+error_code+", not initialized string";                                   break;
      case 4009: error_string="Error ciode = "+error_code+", not initialized string in array";                          break;
      case 4010: error_string="Error ciode = "+error_code+", no memory for array\' string";                             break;
      case 4011: error_string="Error ciode = "+error_code+", too long string";                                          break;
      case 4012: error_string="Error ciode = "+error_code+", remainder from zero divide";                               break;
      case 4013: error_string="Error ciode = "+error_code+", zero divide";                                              break;
      case 4014: error_string="Error ciode = "+error_code+", unknown command";                                          break;
      case 4015: error_string="Error ciode = "+error_code+", wrong jump (never generated error)";                       break;
      case 4016: error_string="Error ciode = "+error_code+", not initialized array";                                    break;
      case 4017: error_string="Error ciode = "+error_code+", dll calls are not allowed";                                break;
      case 4018: error_string="Error ciode = "+error_code+", cannot load library";                                      break;
      case 4019: error_string="Error ciode = "+error_code+", cannot call function";                                     break;
      case 4020: error_string="Error ciode = "+error_code+", expert function calls are not allowed";                    break;
      case 4021: error_string="Error ciode = "+error_code+", not enough memory for temp string returned from function"; break;
      case 4022: error_string="Error ciode = "+error_code+", system is busy (never generated error)";                   break;
      case 4050: error_string="Error ciode = "+error_code+", invalid function parameters count";                        break;
      case 4051: error_string="Error ciode = "+error_code+", invalid function parameter value";                         break;
      case 4052: error_string="Error ciode = "+error_code+", string function internal error";                           break;
      case 4053: error_string="Error ciode = "+error_code+", some array error";                                         break;
      case 4054: error_string="Error ciode = "+error_code+", incorrect series array using";                             break;
      case 4055: error_string="Error ciode = "+error_code+", custom indicator error";                                   break;
      case 4056: error_string="Error ciode = "+error_code+", arrays are incompatible";                                  break;
      case 4057: error_string="Error ciode = "+error_code+", global variables processing error";                        break;
      case 4058: error_string="Error ciode = "+error_code+", global variable not found";                                break;
      case 4059: error_string="Error ciode = "+error_code+", function is not allowed in testing mode";                  break;
      case 4060: error_string="Error ciode = "+error_code+", function is not confirmed";                                break;
      case 4061: error_string="Error ciode = "+error_code+", send mail error";                                          break;
      case 4062: error_string="Error ciode = "+error_code+", string parameter expected";                                break;
      case 4063: error_string="Error ciode = "+error_code+", integer parameter expected";                               break;
      case 4064: error_string="Error ciode = "+error_code+", double parameter expected";                                break;
      case 4065: error_string="Error ciode = "+error_code+", array as parameter expected";                              break;
      case 4066: error_string="Error ciode = "+error_code+", requested history data in update state";                   break;
      case 4099: error_string="Error ciode = "+error_code+", end of file";                                              break;
      case 4100: error_string="Error ciode = "+error_code+", some file error";                                          break;
      case 4101: error_string="Error ciode = "+error_code+", wrong file name";                                          break;
      case 4102: error_string="Error ciode = "+error_code+", too many opened files";                                    break;
      case 4103: error_string="Error ciode = "+error_code+", cannot open file";                                         break;
      case 4104: error_string="Error ciode = "+error_code+", incompatible access to a file";                            break;
      case 4105: error_string="Error ciode = "+error_code+", no order selected";                                        break;
      case 4106: error_string="Error ciode = "+error_code+", unknown symbol";                                           break;
      case 4107: error_string="Error ciode = "+error_code+", invalid price parameter for trade function";               break;
      case 4108: error_string="Error ciode = "+error_code+", invalid ticket";                                           break;
      case 4109: error_string="Error ciode = "+error_code+", trade is not allowed";                                     break;
      case 4110: error_string="Error ciode = "+error_code+", longs are not allowed";                                    break;
      case 4111: error_string="Error ciode = "+error_code+", shorts are not allowed";                                   break;
      case 4200: error_string="Error ciode = "+error_code+", object is already exist";                                  break;
      case 4201: error_string="Error ciode = "+error_code+", unknown object property";                                  break;
      case 4202: error_string="Error ciode = "+error_code+", object is not exist";                                      break;
      case 4203: error_string="Error ciode = "+error_code+", unknown object type";                                      break;
      case 4204: error_string="Error ciode = "+error_code+", no object name";                                           break;
      case 4205: error_string="Error ciode = "+error_code+", object coordinates error";                                 break;
      case 4206: error_string="Error ciode = "+error_code+", no specified subwindow";                                   break;
      default:   error_string="Error ciode = "+error_code+", unknown error";
     }
//----
   return(error_string);
  }
//+------------------------------------------------------------------+

