symbols_get

Получает все финансовые инструменты из терминала MetaTrader 5.

symbols_get(
   group="GROUP"      // фильтр для отбора символов 
)

group="GROUP"

[in]  Фильтр для отбора группы только необходимых символов. Необязательный параметр. Если группа задана, то функция вернет только те символы, которые удовлетворяют заданному критерию.

Возвращаемое значение

Возвращает символы в виде кортежа (tuple). В случае ошибки возвращает None, информацию об ошибке можно получить с помощью last_error().

Примечание

Параметр group позволяет отфильтровать символы по имени, допустимо использовать '*' в начале и конце строки.

Параметр group можно использовать как в качестве именованного, так и в качестве неименованного параметра. Оба варианта работают одинаково. Использование именованного варианта (group="GROUP") делает код более понятным.

Параметр group может содержать несколько условий, разделенных запятыми. Условие можно задавать как маску с использованием '*'. Для исключения можно использовать символ логического отрицания '!'. При этом все условия применяются последовательно, то есть сначала необходимо указать условия включения в группу, а затем условие исключения. Например, group="*, !EUR" означает, что сначала нужно выбрать все символы и затем исключить те из них , что содержат в имени "EUR".

В отличие от symbol_info() функция symbols_get() возвращает за один вызов информацию по всем запрошенным символам.

Пример:

import MetaTrader5 as mt5
# выведем данные о пакете MetaTrader5
print("MetaTrader5 package author: ",mt5.__author__)
print("MetaTrader5 package version: ",mt5.__version__)
 
# установим подключение к терминалу MetaTrader 5
if not mt5.initialize():
    print("initialize() failed, error code =",mt5.last_error())
    quit()
 
# получим все символы
symbols=mt5.symbols_get()
print('Symbols: 'len(symbols))
count=0
# выведем 5 первых
for s in symbols:
    count+=1
    print("{}. {}".format(count,s.name))
    if count==5: break
print()
 
# получим символы, чьи имена содержат RU
ru_symbols=mt5.symbols_get("*RU*")
print('len(*RU*): 'len(ru_symbols))
for s in ru_symbols:
    print(s.name)
print()
 
# получим символы, имена которых не содержат USD,EUR,JPY и GBP
group_symbols=mt5.symbols_get(group="*,!*USD*,!*EUR*,!*JPY*,!*GBP*")
print('len(*,!*USD*,!*EUR*,!*JPY*,!*GBP*):'len(group_symbols))
for s in group_symbols:
    print(s.name,":",s)
 
# завершим подключение к терминалу MetaTrader 5
mt5.shutdown()
 
Результат:
MetaTrader5 package author:  MetaQuotes Software Corp.
MetaTrader5 package version:  5.0.29
Symbols:  84
1. EURUSD
2. GBPUSD
3. USDCHF
4. USDJPY
5. USDCNH
 
len(*RU*):  8
EURUSD
USDRUB
USDRUR
EURRUR
EURRUB
FORTS.RUB.M5
EURUSD_T20
EURUSD4
 
len(*,!*USD*,!*EUR*,!*JPY*,!*GBP*):  13
AUDCAD : SymbolInfo(custom=False, chart_mode=0, select=True, visible=True, session_deals=0, session_buy_orders=0, session...
AUDCHF : SymbolInfo(custom=False, chart_mode=0, select=False, visible=False, session_deals=0, session_buy_orders=0, sessi...
AUDNZD : SymbolInfo(custom=False, chart_mode=0, select=False, visible=False, session_deals=0, session_buy_orders=0, sessi...
CADCHF : SymbolInfo(custom=False, chart_mode=0, select=False, visible=False, session_deals=0, session_buy_orders=0, sessi...
NZDCAD : SymbolInfo(custom=False, chart_mode=0, select=False, visible=False, session_deals=0, session_buy_orders=0, sessi...
NZDCHF : SymbolInfo(custom=False, chart_mode=0, select=False, visible=False, session_deals=0, session_buy_orders=0, sessi...
NZDSGD : SymbolInfo(custom=False, chart_mode=0, select=False, visible=False, session_deals=0, session_buy_orders=0, sessi...
CADMXN : SymbolInfo(custom=False, chart_mode=0, select=False, visible=False, session_deals=0, session_buy_orders=0, sessi...
CHFMXN : SymbolInfo(custom=False, chart_mode=0, select=False, visible=False, session_deals=0, session_buy_orders=0, sessi...
NZDMXN : SymbolInfo(custom=False, chart_mode=0, select=False, visible=False, session_deals=0, session_buy_orders=0, sessi...
FORTS.RTS.M5 : SymbolInfo(custom=True, chart_mode=0, select=False, visible=False, session_deals=0, session_buy_orders=0, ...
FORTS.RUB.M5 : SymbolInfo(custom=True, chart_mode=0, select=False, visible=False, session_deals=0, session_buy_orders=0, ...
FOREX.CHF.M5 : SymbolInfo(custom=True, chart_mode=0, select=False, visible=False, session_deals=0, session_buy_orders=0, ...

Смотри также

symbols_total, symbol_select, symbol_info