Функции, возвращающие параметры текущего счета.
| Функция | Действие |
| AccountInfoDouble | Возвращает значение типа double соответствующего свойства счета |
| AccountInfoInteger | Возвращает значение целочисленного типа (bool,int или long) соответствующего свойства счета |
| AccountInfoString | Возвращает значение типа string соответствующего свойства счета |
AccountInfoDouble
Возвращает значение соответствующего свойства счета.
double AccountInfoDouble( int property_id // идентификатор свойства );
Параметры
property_id — [in] Идентификатор свойства. Значение может быть одним из значений ENUM_ACCOUNT_INFO_DOUBLE.
Возвращаемое значение
Значение типа double.
Пример:
void OnStart()
{
//--- выведем всю информацию, доступную из функции AccountInfoDouble()
printf("ACCOUNT_BALANCE = %G",AccountInfoDouble(ACCOUNT_BALANCE));
printf("ACCOUNT_CREDIT = %G",AccountInfoDouble(ACCOUNT_CREDIT));
printf("ACCOUNT_PROFIT = %G",AccountInfoDouble(ACCOUNT_PROFIT));
printf("ACCOUNT_EQUITY = %G",AccountInfoDouble(ACCOUNT_EQUITY));
printf("ACCOUNT_MARGIN = %G",AccountInfoDouble(ACCOUNT_MARGIN));
printf("ACCOUNT_FREEMARGIN = %G",AccountInfoDouble(ACCOUNT_FREEMARGIN));
printf("ACCOUNT_MARGIN_LEVEL = %G",AccountInfoDouble(ACCOUNT_MARGIN_LEVEL));
printf("ACCOUNT_MARGIN_SO_CALL = %G",AccountInfoDouble(ACCOUNT_MARGIN_SO_CALL));
printf("ACCOUNT_MARGIN_SO_SO = %G",AccountInfoDouble(ACCOUNT_MARGIN_SO_SO));
}
AccountInfoInteger
Возвращает значение соответствующего свойства счета.
long AccountInfoInteger( int property_id // идентификатор свойства );
Параметры
property_id — [in] Идентификатор свойства. Значение может быть одним из значений ENUM_ACCOUNT_INFO_INTEGER.
Возвращаемое значение
Значение типа long.
Примечание
Свойство должно быть одного из типов bool, int или long.
Пример:
void OnStart()
{
//--- выведем всю информацию, доступную из функции AccountInfoInteger()
printf("ACCOUNT_LOGIN = %d",AccountInfoInteger(ACCOUNT_LOGIN));
printf("ACCOUNT_LEVERAGE = %d",AccountInfoInteger(ACCOUNT_LEVERAGE));
bool thisAccountTradeAllowed=AccountInfoInteger(ACCOUNT_TRADE_ALLOWED);
bool EATradeAllowed=AccountInfoInteger(ACCOUNT_TRADE_EXPERT);
ENUM_ACCOUNT_TRADE_MODE tradeMode=(ENUM_ACCOUNT_TRADE_MODE)AccountInfoInteger(ACCOUNT_TRADE_MODE);
ENUM_ACCOUNT_STOPOUT_MODE stopOutMode=(ENUM_ACCOUNT_STOPOUT_MODE)AccountInfoInteger(ACCOUNT_MARGIN_SO_MODE);
//--- сообщим о возможности совершения торговых операций
if(thisAccountTradeAllowed)
Print("Торговля для данного счета разрешена");
else
Print("Торговля для данного счета запрещена!");
//--- выясним - можно ли торговать на данном счету экспертами
if(EATradeAllowed)
Print("Торговля советниками для данного счета разрешена");
else
Print("Торговля советниками для данного счета запрещена!");
//--- выясним тип счета
switch(tradeMode)
{
case(ACCOUNT_TRADE_MODE_DEMO):
Print("Это демо счет");
break;
case(ACCOUNT_TRADE_MODE_CONTEST):
Print("Это конкурсный счет");
break;
default:Print("Это реальный счет!");
}
//--- выясним режим задания уровня StopOut
switch(stopOutMode)
{
case(ACCOUNT_STOPOUT_MODE_PERCENT):
Print("Уровень StopOut задается в процентах");
break;
default:Print("Уровень StopOut задается в денежном выражении");
}
}
AccountInfoString
Возвращает значение соответствующего свойства счета.
string AccountInfoString( int property_id // идентификатор свойства );
Параметры
property_id — [in] Идентификатор свойства. Значение может быть одним из значений ENUM_ACCOUNT_INFO_STRING.
Возвращаемое значение
Значение типа string.
Пример:
void OnStart()
{
//--- выведем всю информацию, доступную из функции AccountInfoString()
Print("Имя брокера = ",AccountInfoString(ACCOUNT_COMPANY));
Print("Валюта депозита = ",AccountInfoString(ACCOUNT_CURRENCY));
Print("Имя клиента = ",AccountInfoString(ACCOUNT_NAME));
Print("Название торгового сервера = ",AccountInfoString(ACCOUNT_SERVER));
}