Real-Time Data

OptionDataStream

class alpaca.data.live.option.OptionDataStream(api_key: str, secret_key: str, raw_data: bool = False, feed: OptionsFeed = OptionsFeed.INDICATIVE, websocket_params: Dict | None = None, url_override: str | None = None, data_timeout: float | None = None)

A WebSocket client for streaming live option data.

async close() → None

Closes the websocket connection.

run() → None

Starts up the websocket connection’s event loop

stop() → None

Stops the websocket connection.

Safe to call from any thread, including from a handler running on the stream’s own loop: it never blocks. It stops the run from the latest _run_forever() call even if that run hasn’t begun yet. Called before the stream has ever run, it keeps the first run from starting; called between runs, it is a no-op, since the stream is already stopped.

async stop_ws() → None

Signals the websocket connection should close.

subscribe_quotes(handler: Callable[[Quote | Dict], Awaitable[None]], *symbols: str) → None

Subscribe to quotes

Parameters:
  • handler (Callable[[Union[Quote, Dict]], Awaitable[None]]) – The coroutine callback function to handle the incoming data.

  • *symbols – List of ticker symbols to subscribe to. “*” for everything.

subscribe_trades(handler: Callable[[Trade | Dict], Awaitable[None]], *symbols: str) → None

Subscribe to trades.

Parameters:
  • handler (Callable[[Union[Trade, Dict]], Awaitable[None]]) – The coroutine callback function to handle the incoming data.

  • *symbols – List of ticker symbols to subscribe to. “*” for everything.

unsubscribe_quotes(*symbols: str) → None

Unsubscribe from quotes

Parameters:

*symbols (str) – List of ticker symbols to unsubscribe from. “*” for everything.

unsubscribe_trades(*symbols: str) → None

Unsubscribe from trades

Parameters:

*symbols (str) – List of ticker symbols to unsubscribe from. “*” for everything.