Get the FREE Ultimate OpenClaw Setup Guide →
v

Alpaca Trading

Scanned

@vamzi

npx machina-cli add skill @vamzi/alpaca --openclaw
Files (1)
SKILL.md
4.5 KB

Alpaca Trading Skill

Trade stocks and crypto programmatically via Alpaca's API.

Setup

Requires API credentials stored in environment or config:

# Set environment variables
export ALPACA_API_KEY="your-api-key"
export ALPACA_SECRET_KEY="your-secret-key"
export ALPACA_PAPER="true"  # "true" for paper, "false" for live

Or store in ~/.openclaw/credentials/alpaca.json:

{
  "apiKey": "your-api-key",
  "secretKey": "your-secret-key",
  "paper": true
}

Quick Reference

Get Quote

python3 scripts/alpaca_cli.py quote AAPL
python3 scripts/alpaca_cli.py quote AAPL,TSLA,NVDA

Get Bars (Historical Data)

python3 scripts/alpaca_cli.py bars AAPL --timeframe 1Day --limit 10
python3 scripts/alpaca_cli.py bars AAPL --timeframe 1Hour --start 2026-02-01

Check Account

python3 scripts/alpaca_cli.py account

List Positions

python3 scripts/alpaca_cli.py positions

Place Orders

# Market order
python3 scripts/alpaca_cli.py order buy AAPL 10

# Limit order
python3 scripts/alpaca_cli.py order buy AAPL 10 --limit 150.00

# Stop order
python3 scripts/alpaca_cli.py order sell TSLA 5 --stop 200.00

# Stop-limit order
python3 scripts/alpaca_cli.py order sell TSLA 5 --stop 200.00 --limit 195.00

# Skip price validation (use with caution)
python3 scripts/alpaca_cli.py order buy AAPL 10 --limit 999.00 --force

Order Guardrails:

  1. Symbol validation — Rejects invalid/unknown tickers
  2. Buying power check — Blocks orders exceeding available funds, shows max shares
  3. Duplicate detection — Warns if you have open orders for same symbol/side
  4. Price validation — Warns if limit price is worse than market
  5. Market hours check — Detects pre-market, after-hours, and closed sessions
    • Pre-market (4:00 AM - 9:30 AM ET): Option to place pre-market order
    • After-hours (4:00 PM - 8:00 PM ET): Option to place after-hours order
    • Closed: Warns order will queue until market open
  6. Cost confirmation — Shows total cost and requires confirmation

Use --force to skip all confirmation prompts (use with caution).

List Orders

python3 scripts/alpaca_cli.py orders
python3 scripts/alpaca_cli.py orders --status open
python3 scripts/alpaca_cli.py orders --status closed --limit 20

Cancel Order

python3 scripts/alpaca_cli.py cancel ORDER_ID
python3 scripts/alpaca_cli.py cancel all  # Cancel all open orders

Get News

python3 scripts/alpaca_cli.py news AAPL
python3 scripts/alpaca_cli.py news AAPL,TSLA --limit 5

Watchlist

python3 scripts/alpaca_cli.py watchlist list
python3 scripts/alpaca_cli.py watchlist create "Tech Stocks" AAPL,MSFT,GOOGL
python3 scripts/alpaca_cli.py watchlist add WATCHLIST_ID NVDA
python3 scripts/alpaca_cli.py watchlist delete WATCHLIST_ID

Stream Live Data (Websocket)

# Stream trades (default)
python3 scripts/alpaca_cli.py stream AAPL

# Stream quotes
python3 scripts/alpaca_cli.py stream AAPL,TSLA --type quotes

# Stream bars (1-min)
python3 scripts/alpaca_cli.py stream NVDA --type bars

# Stream all data types
python3 scripts/alpaca_cli.py stream AAPL --type all

Press Ctrl+C to stop streaming.

Price Alerts

# Add alert - notify when INTU drops below $399
python3 scripts/alpaca_cli.py alert add --symbol INTU --price 399 --condition below

# Add alert - notify when AAPL goes above $300
python3 scripts/alpaca_cli.py alert add --symbol AAPL --price 300 --condition above

# List active alerts
python3 scripts/alpaca_cli.py alert list

# Check alerts (used by cron)
python3 scripts/alpaca_cli.py alert check

# Remove an alert
python3 scripts/alpaca_cli.py alert remove --alert_id ABC123

# Clear all alerts
python3 scripts/alpaca_cli.py alert clear

Alerts are stored in ~/.openclaw/data/alpaca-alerts.json.

Script Location

All commands use: scripts/alpaca_cli.py (relative to this skill directory)

API Reference

See references/api.md for detailed API documentation and response formats.

Safety Notes

  • Always confirm with user before placing real trades
  • Paper trading (ALPACA_PAPER=true) recommended for testing
  • Check buying power before large orders
  • Verify order details before submission

Source

git clone https://clawhub.ai/vamzi/alpacaView on GitHub

Overview

Alpaca Trading gives you programmatic access to Alpaca's API for market data, orders, and portfolio management. Retrieve quotes and bars, read news, place market, limit, and stop orders, and inspect your positions and account info. It supports both paper and live trading to test strategies safely and scale with real capital.

How This Skill Works

Authenticate with API credentials stored in environment variables or a credentials file. The skill exposes commands to fetch quotes and historical bars, read account and positions, and submit orders of various types including market, limit, stop, and stop-limit. It also offers news retrieval and live streaming of data with guardrails like symbol validation, buying power checks, market hours validation, and cost confirmation.

When to Use It

  • When you need current quotes or historical bars for one or more symbols
  • When you want to place market, limit, stop, or stop-limit orders programmatically
  • When you need to review your account, positions, and portfolio
  • When you want latest market news and set up watchlists
  • When testing strategies using paper trading before going live

Quick Start

  1. Step 1: Set up credentials via environment variables ALPACA_API_KEY, ALPACA_SECRET_KEY and ALPACA_PAPER or store in ~/.openclaw/credentials/alpaca.json
  2. Step 2: Fetch a quote, e.g., python3 scripts/alpaca_cli.py quote AAPL
  3. Step 3: Place an order, e.g., python3 scripts/alpaca_cli.py order buy AAPL 10

Best Practices

  • Validate symbols before submitting orders to avoid mistakes
  • Check buying power and total estimated cost before placing trades
  • Avoid duplicate orders by tracking open orders
  • Honor market hours and consider pre-market and after-hours rules
  • Test strategies in paper trading and use force flags cautiously for overrides

Example Use Cases

  • Check the current price for AAPL and TSLA
  • Place a market buy order for 10 shares of AAPL
  • Submit a stop-limit order to sell TSLA at a stop of 200 and limit 195
  • Retrieve your account balance and list open positions
  • Create and monitor a watchlist and receive related news

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers