Skip to content

Symbols

Symbol information and specifications.


Models

SymbolInfo

SymbolInfo

Bases: BaseModel

pip_size property

pip_size: float

Pip size in price units. Accounts for fractional-pip (3/5-digit) symbols.

spread_pips property

spread_pips: float

Calculate spread in pips.

contract_size property

contract_size: float

Alias for trade_contract_size.

SymbolTick

SymbolTick

Bases: BaseModel

spread property

spread: float

Calculate spread as ask - bid.

mid_price property

mid_price: float

Calculate mid price.


Service

SymbolService

SymbolService

Retrieves symbol metadata and tick data from the MT5 terminal.

Wraps mt5.symbols_total(), mt5.symbols_get(), mt5.symbol_select(), mt5.symbol_info(), and mt5.symbol_info_tick() via call_mt5, parses the raw structs into SymbolInfo / SymbolTick models, and returns Result[T].


Usage

# List all symbols
res = mt5.symbols_get()

# Filter by group
res = mt5.symbols_get(group="*USD*")

# Get symbol info
res = mt5.symbol_info("EURUSD")
if res.success:
    info = res.data
    print(f"Spread: {info.spread_pips:.1f} pips")
    print(f"Contract size: {info.contract_size}")

# Get current tick
res = mt5.symbol_info_tick("EURUSD")