Trade stocks and crypto via Alpaca API. Use for market data (quotes, bars, news), placing orders (market, limit, stop), checking positions, portfolio management, and account info. Supports both paper and live trading. Use when user asks about stock prices, wants to buy/sell securities, check portfolio, or manage trades.
Trade stocks and crypto programmatically via Alpaca's API.
Requires API credentials stored in environment or config:
```bash
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`:
```json
{
"apiKey": "your-api-key",
"secretKey": "your-secret-key",
"paper": true
}
```
```bash
python3 scripts/alpaca_cli.py quote AAPL
python3 scripts/alpaca_cli.py quote AAPL,TSLA,NVDA
```
```bash
python3 scripts/alpaca_cli.py bars AAPL --timeframe 1Day --limit 10
python3 scripts/alpaca_cli.py bars AAPL --timeframe 1Hour --start 2026-02-01
```
```bash
python3 scripts/alpaca_cli.py account
```
```bash
python3 scripts/alpaca_cli.py positions
```
```bash
python3 scripts/alpaca_cli.py order buy AAPL 10
python3 scripts/alpaca_cli.py order buy AAPL 10 --limit 150.00
python3 scripts/alpaca_cli.py order sell TSLA 5 --stop 200.00
python3 scripts/alpaca_cli.py order sell TSLA 5 --stop 200.00 --limit 195.00
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).
```bash
python3 scripts/alpaca_cli.py orders
python3 scripts/alpaca_cli.py orders --status open
python3 scripts/alpaca_cli.py orders --status closed --limit 20
```
```bash
python3 scripts/alpaca_cli.py cancel ORDER_ID
python3 scripts/alpaca_cli.py cancel all # Cancel all open orders
```
```bash
python3 scripts/alpaca_cli.py news AAPL
python3 scripts/alpaca_cli.py news AAPL,TSLA --limit 5
```
```bash
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
```
```bash
python3 scripts/alpaca_cli.py stream AAPL
python3 scripts/alpaca_cli.py stream AAPL,TSLA --type quotes
python3 scripts/alpaca_cli.py stream NVDA --type bars
python3 scripts/alpaca_cli.py stream AAPL --type all
```
Press Ctrl+C to stop streaming.
```bash
python3 scripts/alpaca_cli.py alert add --symbol INTU --price 399 --condition below
python3 scripts/alpaca_cli.py alert add --symbol AAPL --price 300 --condition above
python3 scripts/alpaca_cli.py alert list
python3 scripts/alpaca_cli.py alert check
python3 scripts/alpaca_cli.py alert remove --alert_id ABC123
python3 scripts/alpaca_cli.py alert clear
```
Alerts are stored in `~/.openclaw/data/alpaca-alerts.json`.
All commands use: `scripts/alpaca_cli.py` (relative to this skill directory)
See `references/api.md` for detailed API documentation and response formats.
Leave a review
No reviews yet. Be the first to review this skill!