AlphaMeta
AlphaMeta is an algorithmic trading platform that unifies five surfaces in a single process:
- REST API gateway — 80+ commands for market data, SEC EDGAR fundamentals, options analytics, trading, portfolio, automation, and watchlists, served over HTTP by a FastAPI gateway and callable via
curlor any HTTP client. - Real-time streaming — a WebSocket endpoint (
/ws/stream) broadcasting live ticks, quotes, and 1m–1h bars at tick rate, plus custom formula streams. - Backtesting engine — Rust-based strategy backtests with QuantStats/Plotly reports, available via the
alphameta backtestCLI, REST API, Jupyter magics, and the web UI. - Live strategy hosting — hot-reloadable strategy files managed over REST, running against live market data.
- Embedded MCP server — an MCP tool layer (
/mcp) exposing the full command surface to AI agents: market data, fundamentals, portfolio, and live trading. Trading is opt-in and gated behind a three-step confirm-token flow with risk limits and audit logging. - AI agent harness — a built-in chat server that runs agents locally and plugs into any LLM, orchestrating MCP tools end-to-end from natural language.
Broker backends: IBKR (stocks, options, futures, crypto) and QMT (China A-shares). Also includes SEC EDGAR research commands — filing listing, 13F investors, insider trades, XBRL financial statements and segment data.
Quick start
uv tool install alphameta # or: pip install alphameta
Get a free API key at alphameta.app, then create ~/.alphameta/.env:
# API Key (Required) — get one free at https://alphameta.app
ALPHAMETA_API_KEY=am-xxx
# IBKR Account ID (Required for trading)
ALPHAMETA_IBKR_ACCOUNT_ID=U1234567
# IBKR Gateway connection
ALPHAMETA_IBKR_HOST=127.0.0.1
ALPHAMETA_IBKR_PORT=4001
ALPHAMETA_IBKR_CLIENT_ID=0
# Timezone (default: US/Eastern)
# ALPHAMETA_TIMEZONE=Asia/Shanghai
Start the server (choose a broker backend: ibkr or qmt):
alphameta --broker ibkr
Open the web UI in your browser (server must be running first):
alphameta web
The API serves at http://127.0.0.1:18080 by default:
# Live quotes
curl -X POST "http://127.0.0.1:18080/api/v1/execute" \
-H "Content-Type: application/json" \
-d '{"cmd": "quote AAPL"}'
# SEC research (no IBKR needed)
curl -X POST "http://127.0.0.1:18080/api/v1/execute" \
-H "Content-Type: application/json" \
-d '{"cmd": "filings AAPL 10-K"}'
Real-time streaming
Connect to the WebSocket endpoint for push-based market data instead of polling:
ws://127.0.0.1:18080/ws/stream
The streamer broadcasts live ticks and quotes (throttled to tick rate), real-time bars (1m / 5m / 15m / 30m / 1h), and evaluated formula streams, with heartbeat and connection-state events.
Backtesting & strategies
Run backtests from the CLI with QuantStats or Plotly reports:
alphameta backtest --strategy my_strategy.py --symbol SPY --report quantstats --benchmark SPY
The same engine is available over REST (/api/v1/backtest, /history, /{id}/report), in Jupyter via alphameta.research (get_pricing / run_backtest) and IPython magics, and in the web UI backtest workbench with equity charts and run history.
Live strategies are hot-reloadable Python files in ~/.alphameta/strategies, managed over REST (/api/v1/strategies — list / start / stop / reload / logs).
MCP server (AI agents)
An embedded MCP server (streamable HTTP) is mounted at /mcp and enabled by default. It exposes the full command surface — quote, kline, chain, positions, balance, orders, gex/dex, maxpain, calendar, news, SEC filings, and more — to any MCP-compatible agent.
Trading tools are available but opt-in (ALPHAMETA_MCP_TRADING_ENABLED=true, default off); when enabled, every trade goes through a three-step confirm-token flow: trade_preview → trade_confirm → trade_transmit, with risk limits, symbol blacklists, and an audit log.
The built-in chat server doubles as a local agent harness: it can plug into any LLM provider and orchestrates these MCP tools end-to-end from natural language.
AI Agent Skills
alphameta-skills provides agent skills for AI coding assistants (Claude Code, Codex, Cursor, etc.) — use AlphaMeta in natural language for market data, trading, portfolio analysis, and more.
npx skills add intelliscale/alphameta-skills -g
Features
Commands by category
| Category | Commands |
|---|---|
| Market | quote, add, remove (rm), kline, depth, chain, range, info, align, prequalify, oadd |
| Fundamentals | financial-report, financial-statement, financial (fin, yf), sec, filings, investors, insider-trades, calc-index, consensus, earnings, fundamental (fund), news, operating, calendar |
| Technicals | dex, gex, dge, maxpain, capital-flow, straddle, advice, reporter |
| Trading | buy, cancel, modify, evict, fast, scale |
| Portfolio | positions (ls), balance, orders, executions, report, cash |
| Automation | ifthen, iflist, ifrm, ifclear, ifgroup, auto, sched-add, sched-list, sched-cancel, tasklist, taskcancel |
| Watchlist | qadd, qremove, qlist, qsave, qrestore, qdelete, qclean, qsnapshot, qloadsnapshot, alert |
| Utilities | math, say, expand, simulate, paper, daydumper, details, alias, clear, meta, qualify, reconnect, set |
Prerequisites
-
Broker backend — pick one with
--broker:ibkr— Interactive Brokers (requires IB Gateway or TWS, see below)qmt— QMT for China A-shares
-
Interactive Brokers Account (for
ibkr): You need an active IB account -
IB Gateway or TWS (for
ibkr): Download and install either:- IB Gateway (Stable) — Recommended for API-only use
- IB Gateway (Latest) — Latest features
- Trader Workstation (TWS) — Full trading platform
-
API Configuration (for
ibkr):- Enable API access in TWS/Gateway:
Configure → API → Settingsand check "Enable ActiveX and Socket Clients" - Set appropriate port (default: 7497 for TWS, 4001 for Gateway)
- Add
127.0.0.1to trusted IPs if connecting locally
- Enable API access in TWS/Gateway:
Examples
Bulk symbol expansion:
# Add/remove multiple option strikes at once
curl -X POST "http://127.0.0.1:18080/api/v1/execute" \
-H "Content-Type: application/json" \
-d '{"cmd": "add SPY240412{P,C}005{1,2,3}0000"}'
# Remove by row id
curl -X POST "http://127.0.0.1:18080/api/v1/execute" \
-H "Content-Type: application/json" \
-d '{"cmd": "remove :{31..37}"}'
Multi-symbol orders:
# Buy ~$15k of each symbol
curl -X POST "http://127.0.0.1:18080/api/v1/execute" \
-H "Content-Type: application/json" \
-d '{"cmd": "expand buy {META,MSFT,NVDA,AMD,AAPL} $15_000 MID"}'
Flexible order pricing:
# By quantity or dollar amount, with bracket orders
curl -X POST "http://127.0.0.1:18080/api/v1/execute" \
-H "Content-Type: application/json" \
-d '{"cmd": "buy AAPL 100 AF @ 233.33 ± 10"}'
Conditional triggers:
# Execute command when price condition is met
curl -X POST "http://127.0.0.1:18080/api/v1/execute" \
-H "Content-Type: application/json" \
-d '{"cmd": "if AAPL last > 300: buy AAPL 100 AF"}'
Backtest a strategy:
# QuantStats report against a benchmark
alphameta backtest --strategy my_strategy.py --symbol SPY --report quantstats --benchmark SPY
Account calculator:
# Calculate shares buyable on margin, combine with growth projections
curl -X POST "http://127.0.0.1:18080/api/v1/execute" \
-H "Content-Type: application/json" \
-d '{"cmd": "(/ :BP3 AAPL)"}'
License
© 2026 Intelliscale Technologies, Inc.
Metadata
Release files for alphameta 2.9.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
Total release size: 189.9 MB
Release files / alphameta-2.9.1-cp314-cp314-win_amd64.whl
| Download URL | alphameta-2.9.1-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 10.1 MB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
c0fe7b7a3b3622894a0dea29fb399471bb55ba4697621b927830209da135cba4
|
|
BLAKE2b-256 checksum How to use checksums |
2e707756981f8e1de3fcd4223bf9924427c8570b40d6bfa558c3e730251172bb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp314-cp314-win32.whl
| Download URL | alphameta-2.9.1-cp314-cp314-win32.whl |
|---|---|
| Size | 8.8 MB |
| Tags | CPython 3.14 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
1f72a4f3df37bbcea1e032a1bb1500f22447e59c3b2ff95124af4f7869f1897e
|
|
BLAKE2b-256 checksum How to use checksums |
4fa18622d0b4ba00f2783ef2dc2393820e8f6b642ebde43964b1f7b78f96288b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp314-cp314-musllinux_1_2_x86_64.whl
| Download URL | alphameta-2.9.1-cp314-cp314-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 15.5 MB |
| Tags | CPython 3.14 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
3b4005bca7a46f6c976e8e9866aee9fe1b9ba2f14e7767a4b75db3aabfc9a697
|
|
BLAKE2b-256 checksum How to use checksums |
1deaebe707396efb8def56e01bc79c342714676b36aa206539e78cdf3853ec33
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | alphameta-2.9.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 15.3 MB |
| Tags | CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
e1f4b2f60f417bf48f0f0f99423a437396fe60dea21866f488f0df3445910760
|
|
BLAKE2b-256 checksum How to use checksums |
593a70e83d5bea48d2fdeeb00696b2609cdb15e821a6a6eb8ff74c8d706b4419
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | alphameta-2.9.1-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 13.6 MB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
733b806741ce0b54c5be27874c0672eae2a27ea95b312d54d5957fe7fc94010d
|
|
BLAKE2b-256 checksum How to use checksums |
679382185afe1f75bb77cc5d195abe789166d97641a7b947f2f475677af11e48
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp313-cp313-win_amd64.whl
| Download URL | alphameta-2.9.1-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 9.9 MB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
01956a27accf373342da19f9b2fd287cddf821e61953297596d0036aa0ff61c3
|
|
BLAKE2b-256 checksum How to use checksums |
af5b43a7a871a42f4acbe879e8da078b25ed15d89025f4beb54249d5092fcd97
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp313-cp313-win32.whl
| Download URL | alphameta-2.9.1-cp313-cp313-win32.whl |
|---|---|
| Size | 8.6 MB |
| Tags | CPython 3.13 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
b9b9364289e23ac4fd66b61521128e1c93539d8d731da03e473a911a936122e0
|
|
BLAKE2b-256 checksum How to use checksums |
e8069c53cf2aa5f16482f7b73cee125db1df6c221f6fefada400cbb960b55e13
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp313-cp313-musllinux_1_2_x86_64.whl
| Download URL | alphameta-2.9.1-cp313-cp313-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 15.6 MB |
| Tags | CPython 3.13 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
fa831244884f976c75a4dbb957351d7cd83fb9d2f88877ab4957b1e3d47d18af
|
|
BLAKE2b-256 checksum How to use checksums |
50efaf1556f6e71b3e56bab9dc00b18f2f166fc72fb01d6f04cf876bdaec8c03
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | alphameta-2.9.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 15.4 MB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
f7153ea162546dbd897328160ef068868ccbcd8f163bda436c8ab4df281ed446
|
|
BLAKE2b-256 checksum How to use checksums |
83984cf813aa9e530f57439fcc4f24f41c6ccc0e2f5eb510ffa0c72399518114
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | alphameta-2.9.1-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 13.7 MB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
8f07c7893f18d84acce0725efd409d3282f2ae8e86b055d39ae5a517f39c9c58
|
|
BLAKE2b-256 checksum How to use checksums |
d6f230405dab71c4eef5b30ff37b15cdd459dc1b0693f73276921af625d0839d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp312-cp312-win_amd64.whl
| Download URL | alphameta-2.9.1-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 10.0 MB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
505f1ab4950b54df6579bbc1c97a4426cc7019eb5889ae460045959102c733b4
|
|
BLAKE2b-256 checksum How to use checksums |
7310df982b0addd77badaf41190054f288bc83e4f0982002bc5945f98d3a9b2c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp312-cp312-win32.whl
| Download URL | alphameta-2.9.1-cp312-cp312-win32.whl |
|---|---|
| Size | 8.6 MB |
| Tags | CPython 3.12 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
34bb1f8e8b96730c1553921843655db805f9597f98f3f99673e343d4eb1046c0
|
|
BLAKE2b-256 checksum How to use checksums |
e80c7c841e98239e6c891e4dd3a1d1ed5a22bb38241c15b14c792ce1170d5651
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp312-cp312-musllinux_1_2_x86_64.whl
| Download URL | alphameta-2.9.1-cp312-cp312-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 15.7 MB |
| Tags | CPython 3.12 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
5929c3c6aaa582a8eb5f48f56d332e3f7708cda8160359e1dabd47acc82ced79
|
|
BLAKE2b-256 checksum How to use checksums |
aa136d77af29a5efc108a2e4533de26f04d073422c15e3329120df936fa42146
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | alphameta-2.9.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 15.5 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
3169616fd4cf72fe6a53919c7e17946989dc5255581de890a9f073e5940c34ed
|
|
BLAKE2b-256 checksum How to use checksums |
6b427d226a01eaf70d1f8f31ecad6f010956610e7d9176ca985600bcaa99152f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Release files / alphameta-2.9.1-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | alphameta-2.9.1-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 13.7 MB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
9f942a742a64c96bff525acf7e7e4a2b509147a6ffc7dda150ca77118c1a7fd0
|
|
BLAKE2b-256 checksum How to use checksums |
6e1323c029012316f4d4c63654520aa7c3d10e01f20255a3a3d6bce34d3144a7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|