Skip to content

STX

Blocking client for the STX exchange.

Takes the same arguments as stx.AsyncSTX and has the same methods, without await:

with STX() as client:
print(client.me().user_id)
for market in client.markets(status="open", limit=5):
print(market.symbol, market.last_traded_price)

For WebSocket channels use stx.STXWebSocket, which is async.

Attribute Type Description
async_client AsyncSTX The underlying AsyncSTX (bound to this client’s private loop).
accept_terms(device_id: str, *, accept_terms: bool = True, accept_privacy: bool = True, accept_house_rules: Optional[bool] = None) -> str

POST /api/v1/tnc/accept.

Parameter Type Description
device_id str
accept_terms bool
accept_privacy bool
accept_house_rules Optional[bool]
account_market_stats(*, market_ids: StrList = None, event_ids: StrList = None, exclude_zero_settlements: Optional[bool] = None, from_time: Optional[int] = None, to_time: Optional[int] = None, sports: StrList = None, competitions: StrList = None, limit: Optional[int] = None, cursor: Optional[str] = None) -> Page[models.MarketStat]

GET /api/v1/account/market_stats.

Parameter Type Description
market_ids StrList
event_ids StrList
exclude_zero_settlements Optional[bool]
from_time Optional[int]
to_time Optional[int]
sports StrList
competitions StrList
limit Optional[int]
cursor Optional[str]
adjustments(*, limit: Optional[int] = None, cursor: Optional[str] = None) -> Page[models.PaymentTransaction]

GET /api/v1/portfolio/adjustments.

Parameter Type Description
limit Optional[int]
cursor Optional[str]
balance() -> models.Balance

GET /api/v1/account/balance.

cancel_all_orders() -> List[models.Cancellation]

DELETE /api/v1/orders/all.

cancel_order(order_id: str) -> models.Cancellation

DELETE /api/v1/orders/{order_id}.

Parameter Type Description
order_id str
cancel_orders(order_ids: Sequence[str]) -> List[models.Cancellation]

DELETE /api/v1/orders/batched.

Parameter Type Description
order_ids Sequence[str]
deposits(*, limit: Optional[int] = None, cursor: Optional[str] = None) -> Page[models.PaymentTransaction]

GET /api/v1/portfolio/deposits.

Parameter Type Description
limit Optional[int]
cursor Optional[str]
events(*, event_ids: StrList = None, sports: StrList = None, competitions: StrList = None, event_types: StrList = None, title: Optional[str] = None, status: Optional[str] = None, promoted: Optional[bool] = None, sort_by: Optional[str] = None, sort_direction: Optional[str] = None, limit: Optional[int] = None, cursor: Optional[str] = None) -> Page[models.Event]

GET /api/v1/events. See AsyncSTX.events.

Parameter Type Description
event_ids StrList
sports StrList
competitions StrList
event_types StrList
title Optional[str]
status Optional[str]
promoted Optional[bool]
sort_by Optional[str]
sort_direction Optional[str]
limit Optional[int]
cursor Optional[str]
fees(*, limit: Optional[int] = None, cursor: Optional[str] = None) -> Page[models.FeeTransaction]

GET /api/v1/portfolio/fees.

Parameter Type Description
limit Optional[int]
cursor Optional[str]
fills(*, market_ids: StrList = None, order_ids: StrList = None, status: Optional[str] = None, limit: Optional[int] = None, cursor: Optional[str] = None) -> Page[models.Fill]

GET /api/v1/fills. See AsyncSTX.fills.

Parameter Type Description
market_ids StrList
order_ids StrList
status Optional[str]
limit Optional[int]
cursor Optional[str]
iter_account_market_stats(*, market_ids: StrList = None, event_ids: StrList = None, exclude_zero_settlements: Optional[bool] = None, from_time: Optional[int] = None, to_time: Optional[int] = None, sports: StrList = None, competitions: StrList = None, limit: Optional[int] = None) -> Iterator[models.MarketStat]

Every per-market stat row, page by page.

Parameter Type Description
market_ids StrList
event_ids StrList
exclude_zero_settlements Optional[bool]
from_time Optional[int]
to_time Optional[int]
sports StrList
competitions StrList
limit Optional[int]
iter_adjustments(*, limit: Optional[int] = None) -> Iterator[models.PaymentTransaction]

Every adjustment, page by page.

Parameter Type Description
limit Optional[int]
iter_deposits(*, limit: Optional[int] = None) -> Iterator[models.PaymentTransaction]

Every deposit, page by page.

Parameter Type Description
limit Optional[int]
iter_events(*, event_ids: StrList = None, sports: StrList = None, competitions: StrList = None, event_types: StrList = None, title: Optional[str] = None, status: Optional[str] = None, promoted: Optional[bool] = None, sort_by: Optional[str] = None, sort_direction: Optional[str] = None, limit: Optional[int] = None) -> Iterator[models.Event]

Every matching event, page by page.

Parameter Type Description
event_ids StrList
sports StrList
competitions StrList
event_types StrList
title Optional[str]
status Optional[str]
promoted Optional[bool]
sort_by Optional[str]
sort_direction Optional[str]
limit Optional[int]
iter_fees(*, limit: Optional[int] = None) -> Iterator[models.FeeTransaction]

Every fee entry, page by page.

Parameter Type Description
limit Optional[int]
iter_fills(*, market_ids: StrList = None, order_ids: StrList = None, status: Optional[str] = None, limit: Optional[int] = None) -> Iterator[models.Fill]

Every matching fill, page by page.

Parameter Type Description
market_ids StrList
order_ids StrList
status Optional[str]
limit Optional[int]
iter_loyalty(*, limit: Optional[int] = None) -> Iterator[models.Transaction]

Every loyalty entry, page by page.

Parameter Type Description
limit Optional[int]
iter_markets(*, market_ids: StrList = None, event_ids: StrList = None, status: StrList = None, trading: Optional[bool] = None, sports: StrList = None, competitions: StrList = None, sort_by: Optional[str] = None, sort_direction: Optional[str] = None, limit: Optional[int] = None) -> Iterator[models.Market]

Every matching market, page by page.

Parameter Type Description
market_ids StrList
event_ids StrList
status StrList
trading Optional[bool]
sports StrList
competitions StrList
sort_by Optional[str]
sort_direction Optional[str]
limit Optional[int]
iter_orders(*, order_ids: StrList = None, client_order_ids: StrList = None, market_ids: StrList = None, status: StrList = None, limit: Optional[int] = None) -> Iterator[models.Order]

Every matching order, page by page.

Parameter Type Description
order_ids StrList
client_order_ids StrList
market_ids StrList
status StrList
limit Optional[int]
iter_settlements(*, market_ids: StrList = None, type: Optional[str] = None, limit: Optional[int] = None) -> Iterator[models.Settlement]

Every settlement, page by page.

Parameter Type Description
market_ids StrList
type Optional[str]
limit Optional[int]
iter_withdrawals(*, limit: Optional[int] = None) -> Iterator[models.PaymentTransaction]

Every withdrawal, page by page.

Parameter Type Description
limit Optional[int]
loyalty(*, limit: Optional[int] = None, cursor: Optional[str] = None) -> Page[models.Transaction]

GET /api/v1/portfolio/loyalty.

Parameter Type Description
limit Optional[int]
cursor Optional[str]
market(market_id: str) -> models.Market

One market by id. See AsyncSTX.market.

Parameter Type Description
market_id str
markets(*, market_ids: StrList = None, event_ids: StrList = None, status: StrList = None, trading: Optional[bool] = None, sports: StrList = None, competitions: StrList = None, sort_by: Optional[str] = None, sort_direction: Optional[str] = None, limit: Optional[int] = None, cursor: Optional[str] = None) -> Page[models.Market]

GET /api/v1/markets. See AsyncSTX.markets.

Parameter Type Description
market_ids StrList
event_ids StrList
status StrList
trading Optional[bool]
sports StrList
competitions StrList
sort_by Optional[str]
sort_direction Optional[str]
limit Optional[int]
cursor Optional[str]
me() -> models.Me

GET /api/v1/me. See AsyncSTX.me.

order(order_id: str) -> models.Order

GET /api/v1/orders/{order_id}.

Parameter Type Description
order_id str
orders(*, order_ids: StrList = None, client_order_ids: StrList = None, market_ids: StrList = None, status: StrList = None, limit: Optional[int] = None, cursor: Optional[str] = None) -> Page[models.Order]

GET /api/v1/orders. See AsyncSTX.orders.

Parameter Type Description
order_ids StrList
client_order_ids StrList
market_ids StrList
status StrList
limit Optional[int]
cursor Optional[str]
place_order(market_id: str, action: str, order_type: str, *, price: Optional[Amount] = None, quantity: Amount, client_order_id: Optional[str] = None, expiration: Optional[str] = None, expiration_time: Optional[int] = None, cancel_on_disconnect: Optional[bool] = None, device_id: Optional[str] = None) -> models.Order

POST /api/v1/orders. See AsyncSTX.place_order.

Parameter Type Description
market_id str
action str
order_type str
price Optional[Amount]
quantity Amount
client_order_id Optional[str]
expiration Optional[str]
expiration_time Optional[int]
cancel_on_disconnect Optional[bool]
device_id Optional[str]
place_orders(orders: Sequence[Mapping[str, *, Any]], geo_location: Optional[str] = None) -> List[BatchOrderResult]

POST /api/v1/orders/batched. See AsyncSTX.place_orders.

Parameter Type Description
orders Sequence[Mapping[str, Any]]
geo_location Optional[str]
positions(*, market_ids: StrList = None) -> List[models.Position]

GET /api/v1/positions. See AsyncSTX.positions.

Parameter Type Description
market_ids StrList
settlements(*, market_ids: StrList = None, type: Optional[str] = None, limit: Optional[int] = None, cursor: Optional[str] = None) -> Page[models.Settlement]

GET /api/v1/portfolio/settlements.

Parameter Type Description
market_ids StrList
type Optional[str]
limit Optional[int]
cursor Optional[str]
user_id() -> str

Your user id, fetched once. See AsyncSTX.user_id.

withdrawals(*, limit: Optional[int] = None, cursor: Optional[str] = None) -> Page[models.PaymentTransaction]

GET /api/v1/portfolio/withdrawals.

Parameter Type Description
limit Optional[int]
cursor Optional[str]
v1.5.9Changelogllms.txtllms-full.txt