MQL4账户信息查询函数详解
MQL4账户信息相关函数
AccountBalance() – 获取账户余额
AccountCredit() – 获取账户信用额度
AccountCompany() – 获取账户所在公司名称
AccountCurrency() – 获取账户结算货币名称
AccountEquity() – 获取账户净值
AccountFreeMargin() – 获取账户可用保证金
AccountFreeMarginCheck() – 检查账户可用保证金
AccountFreeMarginMode() – 可用保证金计算方式
AccountLeverage() – 获取账户杠杆比例
AccountMargin() – 获取账户已用保证金
AccountName() – 获取账户名
AccountNumber() – 获取账户号码
AccountProfit() – 获取账户盈利金额
AccountServer() – 获取账户连接的服务器名称
AccountStopoutLevel() – 获取账户的止损水平设置
AccountStopoutMode() – 获取账户止损计算方式
AccountBalance() – 获取账户余额
double AccountBalance()返回账户余额,即账户中的资金总额。
示例:
Print("账户余额 = ",AccountBalance());AccountCredit() – 获取账户信用额度
double AccountCredit()返回账户当前的信用额度。
示例:
Print("账户信用额度 = ", AccountCredit());AccountCompany() – 获取账户所在公司名称
string AccountCompany()返回提供交易账户的经纪公司名称。
示例:
Print("账户所在公司名:", AccountCompany());AccountCurrency() – 获取账户结算货币名称
string AccountCurrency()返回账户余额的结算货币类型。
示例:
Print("账户结算货币:", AccountCurrency());AccountEquity() – 获取账户净值
double AccountEquity()返回账户当前净值,包含浮动盈亏。
示例:
Print("账户净值 = ", AccountEquity());AccountFreeMargin() – 获取账户可用保证金
double AccountFreeMargin()返回账户当前可用的保证金金额。
示例:
Print("账户可用保证金 = ", AccountFreeMargin());AccountFreeMarginCheck() – 检查账户可用保证金
double AccountFreeMarginCheck( string symbol, int cmd, double volume)该函数用于检测在当前价格下,按照指定方向开仓后剩余的可交易保证金。若保证金不足,系统会返回错误代码134 (ERR_NOT_ENOUGH_MONEY)。
参数:
symbol - 交易的货币对。cmd - 交易类型,可以是 OP_BUY 或 OP_SELL。volume - 交易手数。示例:
if(AccountFreeMarginCheck(Symbol(),OP_BUY,Lots)<=0 || GetLastError()==134) return;AccountFreeMarginMode() – 可用保证金计算方式
double AccountFreeMarginMode()返回账户在开仓时计算可用保证金的具体模式。可能的取值如下:
0:浮动盈利或亏损不纳入计算;
1:浮动盈亏均参与保证金余额计算;
2:仅考虑盈利,忽略当前持仓的亏损;
3:仅考虑亏损,忽略当前持仓的盈利。
示例:
if(AccountFreeMarginMode()==0) Print("浮动盈利/亏损不使用。");AccountLeverage() – 获取账户杠杆比例
int AccountLeverage()返回账户设置的杠杆比例数值。
示例:
Print("账户杠杆比例:", AccountLeverage());AccountMargin() – 获取账户已用保证金
double AccountMargin()返回当前已占用的保证金金额。
示例:
Print("账户已用保证金:", AccountMargin());AccountName() – 获取账户名
string AccountName()返回当前交易账户的持有人名称。
示例:
Print("账户名:", AccountName());AccountNumber() – 获取账户号码
int AccountNumber()返回当前交易账户的唯一编号。
示例:
Print("账户号码:", AccountNumber());AccountProfit() – 获取账户盈利金额
double AccountProfit()返回当前持仓的浮动盈亏总额。
示例:
Print("账户盈利:", AccountProfit());AccountServer() – 获取账户连接的服务器名称
string AccountServer()返回当前账户所连接的交易服务器名称。
示例:
Print("服务器名称:", AccountServer());AccountStopoutLevel() – 获取账户的止损水平设置
int AccountStopoutLevel()返回账户所设置的止损水平值,该值依据止损模式而定。
示例:
Print("账户止损水平设置 = ", AccountStopoutLevel());AccountStopoutMode() – 获取账户止损计算方式
int AccountStopoutMode()返回账户止损水平的计算模式,具体取值如下:
0:计算保证金与净值之间的百分比;
1:比较剩余保证金与绝对值。
示例:
int level=AccountStopoutLevel();if(AccountStopoutMode()==0) Print("止损水平= ",level, "%");else Print("止损水平= ", level, " ", AccountCurrency());
