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

Функция terminal_info позволяет получить состояние и параметры подключенного терминала MetaTrader 5.

namedtuple terminal_info()

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

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

Например (см. MQL5/Scripts/MQL5Book/Python/terminalinfo.py):

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

Результат этого скрипта должен быть примерно следующим.

[500, 3428, '14 Sep 2022'] 

TerminalInfo(community_account=True, community_connection=True, connected=True,.... 

Show terminal_info()._asdict(): 

  community_account=True 

  community_connection=True 

  connected=True 

  dlls_allowed=False 

  trade_allowed=False 

  tradeapi_disabled=False 

  email_enabled=False 

  ftp_enabled=False 

  notifications_enabled=False 

  mqid=False 

  build=2366 

  maxbars=5000 

  codepage=1251 

  ping_last=77850 

  community_balance=707.10668201585 

  retransmission=0.0 

  company=MetaQuotes Software Corp. 

  name=MetaTrader 5 

  language=Russian 

  path=E:\ProgramFiles\MetaTrader 5 

  data_path=E:\ProgramFiles\MetaTrader 5 

  commondata_path=C:\Users\User\AppData\Roaming\MetaQuotes\Terminal\Common