Architect AX

class AxDataClientConfig

Bases: object

Configuration for the AX Exchange live data client.

base_url_http
base_url_ws_private
base_url_ws_public
environment
funding_rate_poll_interval_mins
has_proxy_url
heartbeat_interval_secs
http_timeout_secs
max_retries
recv_window_ms
retry_delay_initial_ms
retry_delay_max_ms
transport_backend
update_instruments_interval_mins
class AxDataClientFactory

Bases: object

Factory for creating AX Exchange data clients.

name()
class AxEnvironment

Bases: object

AX Exchange API environment.

PRODUCTION = <AxEnvironment.PRODUCTION: '1'>
SANDBOX = <AxEnvironment.SANDBOX: '0'>
classmethod from_str(data)
name
value
class AxExecClientConfig

Bases: object

Configuration for the AX Exchange live execution client.

account_id
base_url_http
base_url_orders
base_url_ws_private
cancel_on_disconnect
environment
has_proxy_url
heartbeat_interval_secs
http_timeout_secs
max_retries
recv_window_ms
retry_delay_initial_ms
retry_delay_max_ms
trader_id
transport_backend
class AxExecutionClientFactory

Bases: object

Factory for creating AX Exchange execution clients.

name()
class AxMarketDataLevel

Bases: object

Market data subscription level.

The AX API uses LEVEL_1, LEVEL_2, LEVEL_3 on the wire (with underscore before the digit). Serde and strum per-variant renames handle the wire and string formats correctly, however PyO3’s rename_all does not insert an underscore at letter-digit boundaries, so the Python variant names are LEVEL1, LEVEL2, LEVEL3 (without underscore).

# References - <https://docs.architect.exchange/api-reference/marketdata/md-ws>

LEVEL1 = <AxMarketDataLevel.LEVEL_1: '0'>
LEVEL2 = <AxMarketDataLevel.LEVEL_2: '1'>
LEVEL3 = <AxMarketDataLevel.LEVEL_3: '2'>
TRADES = <AxMarketDataLevel.TRADES: '3'>
classmethod from_str(data)
name
value