Получение информации о торговом счете

Функция account_info получает полную информацию о текущем торговом счете.

namedtuple account_info()

Функция возвращает информацию в виде структуры именованных кортежей (namedtuple). В случае ошибки результат равен значению None.

С помощью данной функции за один вызов можно получить всю информацию, которую в MQL5 предоставляют AccountInfoInteger, AccountInfoDouble и AccountInfoString со всеми вариантами поддерживаемых свойств. Названия полей в кортеже соответствуют названиям элементов перечислений без приставки "ACCOUNT_", приведенным к нижнему регистру.

К книге прилагается следующий скрипт MQL5/Scripts/MQL5Book/Python/accountinfo.py.

import MetaTrader5 as mt5
  
# установим подключение к терминалу MetaTrader 5 
if not mt5.initialize(): 
   print("initialize() failed, error code =", mt5.last_error())
   quit()
   
account_info = mt5.account_info()
if account_info != None:
   # выведем данные о торговом счете как есть
   print(account_info) 
   # выведем данные о торговом счете в виде словаря
   print("Show account_info()._asdict():")
   account_info_dict = mt5.account_info()._asdict()
   for prop in account_info_dict:
      print("  {}={}".format(prop, account_info_dict[prop]))
   
# завершим подключение к терминалу MetaTrader 5
mt5.shutdown()

Результатом должен быть примерно такой вывод.

AccountInfo(login=25115284, trade_mode=0, leverage=100, limit_orders=200, margin_so_mode=0, ... 

Show account_info()._asdict(): 

  login=25115284 

  trade_mode=0 

  leverage=100 

  limit_orders=200 

  margin_so_mode=0 

  trade_allowed=True 

  trade_expert=True 

  margin_mode=2 

  currency_digits=2 

  fifo_close=False 

  balance=99511.4 

  credit=0.0 

  profit=41.82 

  equity=99553.22 

  margin=98.18 

  margin_free=99455.04 

  margin_level=101398.67590140559 

  margin_so_call=50.0 

  margin_so_so=30.0 

  margin_initial=0.0 

  margin_maintenance=0.0 

  assets=0.0 

  liabilities=0.0 

  commission_blocked=0.0 

  name=MetaQuotes Dev Demo 

  server=MetaQuotes-Demo 

  currency=USD 

  company=MetaQuotes Software Corp.