/// <summary> /// This method credits or debits balance of platform accounts /// </summary> /// <param name="login">login</param> /// <param name="amount">amount</param> /// <param name="comment">comment</param> /// <returns></returns> public bool DoPlatformTransaction(int login, double amount, string comment) { try { var newTransac = new TradeTransInfoNET(); newTransac.cmd = (short)TradeCommands.OP_BALANCE; newTransac.comment = comment; newTransac.orderby = login; newTransac.price = amount; newTransac.type = (short)TradeTransTypes.TT_BR_BALANCE; newTransac.reserved = 0; var manager = new MetaTraderWrapperManager("mtdem01.primexm.com:443", 900, "!FQS123!!"); if (manager.IsConnected() == 1) { if (manager.TradeTransaction(newTransac) == 0) { return(true); } } return(false); } catch (Exception ex) { CurrentDeskLog.Error(ex.Message, ex); return(false); } }
/// <summary> /// This method creates new user account in meta trader /// </summary> /// <param name="newUser"></param> /// <returns></returns> public static bool CreateMetaTraderAccountForUser(int pkClientAccID, int?fkPlatformID, User newUser, LoginAccountType accType) { try { var user = new MT4ManLibraryNETv03.UserRecordNET(); user.group = "FQ-IB-One"; user.name = newUser.UserEmailID; user.password = "******"; var manager = new MetaTraderWrapperManager("mtdem01.primexm.com:443", 900, "!FQS123!!"); if (manager.IsConnected() == 1) { var accStatus = manager.CreateNewUser(user); //If success if (accStatus == 0) { var clientAccBO = new Client_AccountBO(); clientAccBO.InsertPlatformLoginForTradingAccount(pkClientAccID, fkPlatformID, user.password, user.login); return(true); } else { var error = manager.ErrorDescription(accStatus); } } return(false); } catch (Exception ex) { CurrentDeskLog.Error(ex.Message, ex); throw; } }