Alpa.Trading.Watchlists (AlpaEx v1.0.3)

View Source

Watchlist operations for the Alpaca Trading API.

Summary

Functions

Add a symbol to a watchlist.

Create a new watchlist.

Delete a watchlist.

Get a specific watchlist by ID.

Get a watchlist by name.

Get all watchlists.

Remove a symbol from a watchlist.

Update a watchlist.

Functions

add_symbol(watchlist_id, symbol, opts \\ [])

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

Add a symbol to a watchlist.

Examples

iex> Alpa.Trading.Watchlists.add_symbol("watchlist-id", "NVDA")
{:ok, %Alpa.Models.Watchlist{...}}

create(params)

@spec create(keyword()) :: {:ok, Alpa.Models.Watchlist.t()} | {:error, Alpa.Error.t()}

Create a new watchlist.

Parameters

  • :name - Watchlist name (required)
  • :symbols - List of symbols to add (optional)

Examples

iex> Alpa.Trading.Watchlists.create(name: "Tech Stocks", symbols: ["AAPL", "MSFT", "GOOGL"])
{:ok, %Alpa.Models.Watchlist{...}}

delete(watchlist_id, opts \\ [])

@spec delete(
  String.t(),
  keyword()
) :: {:ok, :deleted} | {:error, Alpa.Error.t()}

Delete a watchlist.

Examples

iex> Alpa.Trading.Watchlists.delete("watchlist-id")
{:ok, :deleted}

get(watchlist_id, opts \\ [])

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

Get a specific watchlist by ID.

Examples

iex> Alpa.Trading.Watchlists.get("watchlist-id")
{:ok, %Alpa.Models.Watchlist{...}}

get_by_name(name, opts \\ [])

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

Get a watchlist by name.

Examples

iex> Alpa.Trading.Watchlists.get_by_name("My Favorites")
{:ok, %Alpa.Models.Watchlist{...}}

list(opts \\ [])

@spec list(keyword()) :: {:ok, [Alpa.Models.Watchlist.t()]} | {:error, Alpa.Error.t()}

Get all watchlists.

Examples

iex> Alpa.Trading.Watchlists.list()
{:ok, [%Alpa.Models.Watchlist{...}]}

remove_symbol(watchlist_id, symbol, opts \\ [])

@spec remove_symbol(String.t(), String.t(), keyword()) ::
  {:ok, Alpa.Models.Watchlist.t() | :deleted} | {:error, Alpa.Error.t()}

Remove a symbol from a watchlist.

Examples

iex> Alpa.Trading.Watchlists.remove_symbol("watchlist-id", "NVDA")
{:ok, %Alpa.Models.Watchlist{...}}

update(watchlist_id, params)

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

Update a watchlist.

Parameters

  • :name - New watchlist name (optional)
  • :symbols - New list of symbols (replaces existing, optional)

Examples

iex> Alpa.Trading.Watchlists.update("watchlist-id", name: "Renamed Watchlist")
{:ok, %Alpa.Models.Watchlist{...}}