Alpa.MarketData.Trades (AlpaEx v1.0.3)

View Source

Trade data from the Alpaca Market Data API v2.

Summary

Functions

Get historical trades for a single symbol.

Get historical trades for multiple symbols.

Get the latest trade for a symbol.

Get latest trades for multiple symbols.

Functions

get(symbol, opts \\ [])

@spec get(
  String.t(),
  keyword()
) :: {:ok, [Alpa.Models.Trade.t()]} | {:error, Alpa.Error.t()}

Get historical trades for a single symbol.

Required Parameters

  • symbol - Stock symbol (e.g., "AAPL")

Options

  • :start - Start time (DateTime or ISO 8601 string)
  • :end - End time (DateTime or ISO 8601 string)
  • :limit - Max trades to return (default 1000, max 10000)
  • :feed - Data feed: "iex", "sip"
  • :page_token - Pagination token

Examples

iex> Alpa.MarketData.Trades.get("AAPL", start: ~U[2024-01-15 14:30:00Z])
{:ok, [%Alpa.Models.Trade{...}]}

get_multi(symbols, opts \\ [])

@spec get_multi(
  [String.t()],
  keyword()
) ::
  {:ok, %{required(String.t()) => [Alpa.Models.Trade.t()]}}
  | {:error, Alpa.Error.t()}

Get historical trades for multiple symbols.

Required Parameters

  • symbols - List of stock symbols (e.g., ["AAPL", "MSFT"])

Options

Same as get/2.

Examples

iex> Alpa.MarketData.Trades.get_multi(["AAPL", "MSFT"], start: ~U[2024-01-15 14:30:00Z])
{:ok, %{"AAPL" => [%Alpa.Models.Trade{...}], "MSFT" => [%Alpa.Models.Trade{...}]}}

latest(symbol, opts \\ [])

@spec latest(
  String.t(),
  keyword()
) :: {:ok, Alpa.Models.Trade.t()} | {:error, Alpa.Error.t()}

Get the latest trade for a symbol.

Options

  • :feed - Data feed: "iex", "sip"

Examples

iex> Alpa.MarketData.Trades.latest("AAPL")
{:ok, %Alpa.Models.Trade{...}}

latest_multi(symbols, opts \\ [])

@spec latest_multi(
  [String.t()],
  keyword()
) ::
  {:ok, %{required(String.t()) => Alpa.Models.Trade.t()}}
  | {:error, Alpa.Error.t()}

Get latest trades for multiple symbols.

Examples

iex> Alpa.MarketData.Trades.latest_multi(["AAPL", "MSFT"])
{:ok, %{"AAPL" => %Alpa.Models.Trade{...}, "MSFT" => %Alpa.Models.Trade{...}}}