Skip to content

Subscriptions¤

hl.Subscriptions ¤

Subscriptions(
    *,
    transport: WsTransport,
    universe: Universe | None = None,
    account: Account | None = None,
)

The Subscriptions class provides methods to interact with the subscriptions endpoint.

Parameters:

Name Type Description Default
transport WsTransport

The WebSocket transport to use for subscriptions.

required
universe Universe | None

The universe to use for asset name resolution.

None
account Account | None

The default account to use for authenticated subscriptions.

None

Methods:

Name Description
active_asset_ctx

Subscribe to active asset context updates.

active_asset_data

Subscribe to active asset data for a user.

all_mids

Subscribe to all mids updates.

best_bid_offer

Subscribe to best bid offer data for a specific asset.

candle

Subscribe to candle updates for a specific asset.

l2_book

Subscribe to L2 book updates for a specific asset.

notification

Subscribe to notifications for a user.

order_updates

Subscribe to order updates for a user.

trades

Subscribe to trades for a specific asset.

unsubscribe

Unsubscribe from a subscription.

user_events

Subscribe to user events.

user_fills

Subscribe to user fills.

user_fundings

Subscribe to user fundings.

user_non_funding_ledger_updates

Subscribe to user non-funding ledger updates.

user_twap_history

Subscribe to user TWAP history.

user_twap_slice_fills

Subscribe to user TWAP slice fills.

web_data2

Subscribe to web data 2 updates for a user.

active_asset_ctx async ¤

active_asset_ctx(
    *,
    asset: int | str,
    queue: Queue[ActiveAssetCtxMsg] | None = None,
) -> tuple[int, Queue[ActiveAssetCtxMsg]]

Subscribe to active asset context updates.

Parameters:

Name Type Description Default
asset int | str

Asset ID or name.

required
queue Queue[ActiveAssetCtxMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[ActiveAssetCtxMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

active_asset_data async ¤

active_asset_data(
    *,
    asset: int | str,
    address: str | None = None,
    account: Account | None = None,
    queue: Queue[ActiveAssetDataMsg] | None = None,
) -> tuple[int, Queue[ActiveAssetDataMsg]]

Subscribe to active asset data for a user.

Parameters:

Name Type Description Default
asset int | str

Asset ID or name.

required
address str | None

User address (mutually exclusive with account).

None
account Account | None

Account object (mutually exclusive with address).

None
queue Queue[ActiveAssetDataMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[ActiveAssetDataMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

all_mids async ¤

all_mids(
    *, queue: Queue[AllMidsMsg] | None = None
) -> tuple[int, Queue[AllMidsMsg]]

Subscribe to all mids updates.

Parameters:

Name Type Description Default
queue Queue[AllMidsMsg] | None

Optional queue to receive messages. If None, a new queue will be created.

None

Returns:

Type Description
tuple[int, Queue[AllMidsMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

best_bid_offer async ¤

best_bid_offer(
    *,
    asset: int | str,
    queue: Queue[BestBidOfferMsg] | None = None,
) -> tuple[int, Queue[BestBidOfferMsg]]

Subscribe to best bid offer data for a specific asset.

Parameters:

Name Type Description Default
asset int | str

Asset ID or name.

required
queue Queue[BestBidOfferMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[BestBidOfferMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

candle async ¤

candle(
    *,
    asset: int | str,
    interval: CandleInterval,
    queue: Queue[CandleMsg] | None = None,
) -> tuple[int, Queue[CandleMsg]]

Subscribe to candle updates for a specific asset.

Parameters:

Name Type Description Default
asset int | str

Asset ID or name.

required
interval CandleInterval

Candle interval.

required
queue Queue[CandleMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[CandleMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

l2_book async ¤

l2_book(
    *,
    asset: int | str,
    n_sig_figs: int | None = None,
    mantissa: int | None = None,
    queue: Queue[L2BookMsg] | None = None,
) -> tuple[int, Queue[L2BookMsg]]

Subscribe to L2 book updates for a specific asset.

Parameters:

Name Type Description Default
asset int | str

Asset ID or name.

required
n_sig_figs int | None

Optional number of significant figures.

None
mantissa int | None

Optional mantissa.

None
queue Queue[L2BookMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[L2BookMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

notification async ¤

notification(
    *,
    address: str | None = None,
    account: Account | None = None,
    queue: Queue[NotificationMsg] | None = None,
) -> tuple[int, Queue[NotificationMsg]]

Subscribe to notifications for a user.

Parameters:

Name Type Description Default
address str | None

User address (mutually exclusive with account).

None
account Account | None

Account object (mutually exclusive with address).

None
queue Queue[NotificationMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[NotificationMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

order_updates async ¤

order_updates(
    *,
    address: str | None = None,
    account: Account | None = None,
    queue: Queue[OrderUpdatesMsg] | None = None,
) -> tuple[int, Queue[OrderUpdatesMsg]]

Subscribe to order updates for a user.

Parameters:

Name Type Description Default
address str | None

User address (mutually exclusive with account).

None
account Account | None

Account object (mutually exclusive with address).

None
queue Queue[OrderUpdatesMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[OrderUpdatesMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

trades async ¤

trades(
    *,
    asset: int | str,
    queue: Queue[TradesMsg] | None = None,
) -> tuple[int, Queue[TradesMsg]]

Subscribe to trades for a specific asset.

Parameters:

Name Type Description Default
asset int | str

Asset ID or name.

required
queue Queue[TradesMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[TradesMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

unsubscribe async ¤

unsubscribe(subscription_id: int) -> None

Unsubscribe from a subscription.

Parameters:

Name Type Description Default
subscription_id int

The subscription ID returned by a subscription method.

required

user_events async ¤

user_events(
    *,
    address: str | None = None,
    account: Account | None = None,
    queue: Queue[UserEventsMsg] | None = None,
) -> tuple[int, Queue[UserEventsMsg]]

Subscribe to user events.

Parameters:

Name Type Description Default
address str | None

User address (mutually exclusive with account).

None
account Account | None

Account object (mutually exclusive with address).

None
queue Queue[UserEventsMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[UserEventsMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

user_fills async ¤

user_fills(
    *,
    address: str | None = None,
    account: Account | None = None,
    aggregate_by_time: bool | None = None,
    queue: Queue[UserFillsMsg] | None = None,
) -> tuple[int, Queue[UserFillsMsg]]

Subscribe to user fills.

Parameters:

Name Type Description Default
address str | None

User address (mutually exclusive with account).

None
account Account | None

Account object (mutually exclusive with address).

None
aggregate_by_time bool | None

Optional flag to aggregate fills by time.

None
queue Queue[UserFillsMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[UserFillsMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

user_fundings async ¤

user_fundings(
    *,
    address: str | None = None,
    account: Account | None = None,
    queue: Queue[UserFundingsMsg] | None = None,
) -> tuple[int, Queue[UserFundingsMsg]]

Subscribe to user fundings.

Parameters:

Name Type Description Default
address str | None

User address (mutually exclusive with account).

None
account Account | None

Account object (mutually exclusive with address).

None
queue Queue[UserFundingsMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[UserFundingsMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

user_non_funding_ledger_updates async ¤

user_non_funding_ledger_updates(
    *,
    address: str | None = None,
    account: Account | None = None,
    queue: Queue[UserNonFundingLedgerUpdatesMsg]
    | None = None,
) -> tuple[int, Queue[UserNonFundingLedgerUpdatesMsg]]

Subscribe to user non-funding ledger updates.

Parameters:

Name Type Description Default
address str | None

User address (mutually exclusive with account).

None
account Account | None

Account object (mutually exclusive with address).

None
queue Queue[UserNonFundingLedgerUpdatesMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[UserNonFundingLedgerUpdatesMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

user_twap_history async ¤

user_twap_history(
    *,
    address: str | None = None,
    account: Account | None = None,
    queue: Queue[UserTwapHistoryMsg] | None = None,
) -> tuple[int, Queue[UserTwapHistoryMsg]]

Subscribe to user TWAP history.

Parameters:

Name Type Description Default
address str | None

User address (mutually exclusive with account).

None
account Account | None

Account object (mutually exclusive with address).

None
queue Queue[UserTwapHistoryMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[UserTwapHistoryMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

user_twap_slice_fills async ¤

user_twap_slice_fills(
    *,
    address: str | None = None,
    account: Account | None = None,
    queue: Queue[UserTwapSliceFillsMsg] | None = None,
) -> tuple[int, Queue[UserTwapSliceFillsMsg]]

Subscribe to user TWAP slice fills.

Parameters:

Name Type Description Default
address str | None

User address (mutually exclusive with account).

None
account Account | None

Account object (mutually exclusive with address).

None
queue Queue[UserTwapSliceFillsMsg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[UserTwapSliceFillsMsg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.

web_data2 async ¤

web_data2(
    *,
    address: str | None = None,
    account: Account | None = None,
    queue: Queue[WebData2Msg] | None = None,
) -> tuple[int, Queue[WebData2Msg]]

Subscribe to web data 2 updates for a user.

Parameters:

Name Type Description Default
address str | None

User address (mutually exclusive with account).

None
account Account | None

Account object (mutually exclusive with address).

None
queue Queue[WebData2Msg] | None

Optional queue to receive messages.

None

Returns:

Type Description
tuple[int, Queue[WebData2Msg]]

tuple[int, asyncio.Queue]: Subscription ID and message queue.