Chapter IV · Technical reference

Building the Python stack.

Concrete, current-state field notes on the libraries, data providers and AI frameworks a builder would actually reach for in 2026 — with maintenance and pricing status flagged wherever uncertain.

Choosing the stack is where reference architectures meet the reality of maintenance status, licence terms and 2026 pricing. Every recommendation here is anchored to a package version, a release date or a licence code. Where a claim rests on secondary sources or a page that would not resolve, the text says so — a preference for “credible, unverified” over false confidence.

Section IBacktesting frameworks

backtrader

GPL-3.0. pip install backtrader. Last PyPI release 1.9.78.123 on 19 April 2023; no meaningful upstream commits since 2020-2023; no Python 3.12+ testing. Community forks — notably cloudQuant/backtrader — carry patches. Fine for learning event-driven design or porting legacy strategies; not the choice for a new production build.

Zipline-Reloaded

Apache-2.0, latest 3.1.1 (23 July 2025), Python 3.9+, NumPy 2 / pandas 2.2 ready. pip install zipline-reloaded or via conda-forge. Preserves the Quantopian API and its Pipeline factor model; pairs naturally with pyfolio-reloaded, alphalens, empyrical-reloaded. US-equity-centric, no live trading, bundle ingestion is fiddly. Ideal for research-grade cross-sectional and factor equity work where reproducibility of Quantopian-era code matters.

vectorbt (and vectorbt PRO)

Apache-2.0 plus Commons Clause (fair-code; free to use, not resell as a service). NumPy / Numba vectorised — you sweep thousands of parameter combinations in seconds. Steep learning curve if you think event-driven; execution realism is limited; the open-source branch is largely feature-frozen while effort moves to PRO. vectorbt PRO is the commercial fork: approximately $20/month on the annual plan (~$240/year), delivered as a private wheel with source visible to members. Adds portfolio optimiser, pattern search, Ray parallelism and private support. Worth it for professional quants running large sweeps; open-source is fine for hobbyists.

QuantConnect LEAN

Apache-2.0, C# core with Python bindings, roughly 20k GitHub stars, heavy weekly commit cadence. pip install lean, then lean init. Production-grade multi-asset (equities, options, futures, FX, crypto); same code path from research through cloud backtest to live at IB, Alpaca, Binance or Coinbase. Downsides: Docker is a hard dependency for local runs; the C# core leaks through the Python API; the good data lives behind a QC subscription. Pick this when you intend to trade the strategy live at scale.

NautilusTrader

LGPL-3.0, Rust-native event engine with Python bindings; still labelled beta at 1.230.0 (29 June 2026); Python 3.12-3.14. pip install -U nautilus_trader. Nanosecond-resolution event bus, deterministic replay, order-book-aware, growing venue adapter set (Binance, Bybit, IB, Databento). Beta API churn and LGPL friction are the tradeoffs. The right choice for HFT, mid-frequency or microstructure work in Python without giving up native performance.

bt

MIT, v1.2.0 (25 April 2026), built on ffn. Tree / algorithm-stack composition ideal for portfolio-level rules — risk parity, monthly or weekly rebalancing, allocation weights. Bar-level only, no live trading, not for intraday order-book work.

backtesting.py

AGPL-3.0 (which disqualifies it for many proprietary shops), 0.6.5 (30 July 2025), Python 3.9+. pip install backtesting. Tiny API, vectorised inner loop wrapped in an event-style Strategy class, built-in Bokeh charts, grid or SAMBO optimiser. Single-asset only, no portfolio logic, no live trading. Best-in-class for rapid single-instrument prototyping and teaching.

Section IIMarket-data providers

ProviderCoveragePricing (2026)Notes
Polygon.io / MassiveUS equities/options, global FX/crypto$29 / $79 / $199 mo per asset classRealtime WS on Advanced. Rebrand blanked pricing page; verify.
Alpha VantageUS equities RT + delayed, options, FX, cryptoFree 25/day → $50-250 moREST only, no WebSocket.
EODHDGlobal including LSE, Euronext, Xetra£19.99 → £99.99 moStrongest turnkey UK/EU coverage at retail price.
DatabentoMBO / L3, OPRA options, CME/ICE futures$179 → $4,000 moInstitutional depth at retail-adjacent entry. Redistribution rights on Plus+.
Financial Modeling PrepDeep fundamentals, EOD/intraday, ~70k tickers$0 → ~$70 moPricing verified in secondary sources; primary page 403’d.
AlpacaUS equities/options/cryptoFree (IEX) or $99 moBundled with brokerage account. No redistribution.
TwelveData70+ venues including LSE realtime$0 / $66 / $191 / $832 moEffectively the one turnkey retail option for LSE realtime.
TiingoUS-heavy, LSE via EOD CompositeFree / $30 / $50 moIEX-only WebSocket.
yfinanceYahoo Finance (unofficial)FreeYahoo ToS is personal use only. Fragile. Not production.
LSEG Data PlatformNative LSE L1/L2 + global; Reuters newsEnterprise onlyReference-grade UK feed. Not retail.

IEX Cloud — dead

Retired 31 August 2024; official migration partner is Intrinio. Most users moved to Alpha Vantage, Tiingo, Polygon or Databento. No like-for-like resurrection.

Section IIIFeature engineering & TA

TA-Lib

BSD-2-Clause, 0.7.0 (4 July 2026). pip install TA-Lib. The install pain is largely gone: wheels ship for Linux, macOS and Windows (x86_64 and arm64), Python 3.9-3.14. Source builds only needed on exotic architectures. 150+ indicators and candlestick patterns, Cython bindings.

pandas-ta — do not use in new projects

The original twopirllc repo is 404; PyPI shows a stale 0.4.71b0 (14 September 2025). Maintainership passed to a paid-subscription plan and a new domain that the community has flagged as a supply-chain concern. Pin nothing here.

pandas-ta-classic

MIT, 0.6.52 (24 June 2026). pip install pandas-ta-classic. The drop-in replacement: community continuation of the pre-hijack tree, active CI, regular releases, familiar df.ta.rsi() pandas-native API, 150+ indicators plus 60 candlesticks (candles need TA-Lib installed).

ta (bukosabino)

MIT, 0.11.0 (November 2023). pip install ta. Dormant — no release in roughly 2.5 years but the code still works with modern pandas. Reach for it when you want zero C dependencies and don’t need bleeding-edge indicators.

QuantLib-Python

BSD-3-Clause, 1.42.1 (17 April 2026). Overkill for equity TA, essential once you touch derivatives pricing, fixed-income curves, options Greeks or exotic instruments.

Section IVPortfolio & risk

  • Riskfolio-Lib — BSD-3-Clause, 7.3.0 (31 May 2026). The modern go-to for convex portfolio optimisation across 26 risk measures, HRP/HERC/NCO, Black-Litterman, risk parity.
  • pyfolio-reloaded — Apache-2.0, 0.9.9 (23 July 2025). Actively maintained fork of the archived Quantopian original; strategy tear-sheets plus drawdown and exposure plots.
  • empyrical-reloaded — Apache-2.0, 0.5.12 (1 June 2025). Canonical return-series statistics: Sharpe, Sortino, alpha, beta, CAGR.
  • QuantStats — Apache-2.0, 0.0.81 (13 January 2025). Slow cadence but stable; one call generates a full HTML tear-sheet from a returns series.

Section VLLM-agent orchestration (2026)

LangGraph

MIT. pip install langgraph. v1.0 shipped October 2025; v1.2 May 2026 (Python 3.10-3.14, content-block streaming, improved interrupt()). Graph and state-machine agents with checkpointing, durable state, human-in-the-loop and time-travel replay. The right fit for compliance-heavy trading pipelines where you must replay a decision.

CrewAI

MIT, reported v1.14 mid-2026. pip install crewai. Role-based crews of specialists; the fastest way to prototype “analyst plus risk plus trader” personas. Less rigorous state control than LangGraph.

AutoGen — now maintenance mode

MIT, currently 0.7.x on PyPI after the v0.4 async rewrite in early 2025. Microsoft rolled AutoGen plus Semantic Kernel into the new Microsoft Agent Framework 1.0 (3 April 2026), which is the recommended path for new enterprise builds. Same story for Semantic Kernel.

OpenAI Agents SDK

openai-agents (previously Swarm) — MIT, 0.18.0 (7 July 2026), provider-agnostic (100+ LLMs). Added native sandbox and harness in April 2026; realtime voice via gpt-realtime-2. Lightweight handoffs and guardrails. Younger than LangGraph, less battle-tested for long-running state.

Anthropic tool use + MCP

Model Context Protocol is now the de-facto interoperability standard for tool and data servers. Not itself an orchestration framework, but the plumbing every framework above speaks. Practical trading use: MCP servers wrapping Bloomberg, Refinitiv, FactSet or broker APIs so any agent host can attach.

PydanticAI

MIT; V2 harness-first redesign (23 June 2026). Typed tools and schema-safe outputs make it attractive for regulated financial services; smaller ecosystem than LangGraph.

Trading-specific stacks

  • FinRobot (AI4Finance-Foundation) — Apache-2.0, multi-agent equity research / algorithmic strategy / risk. Research-oriented, not a live execution engine.
  • TradingAgents (TauricResearch, arXiv 2412.20138) — Apache-2.0, multi-agent framework mirroring a trading firm (fundamental / sentiment / technical analysts → trader → risk team). Yahoo Finance data source; not exchange-connected. See LLM agents vs quant for the P&L critique.
  • ContestTrade (arXiv 2508.00554) — multi-agent with internal contest mechanism; research-only.
  • Bloomberg AskB (announced April 2026) — proprietary agent over Bloomberg News plus 800 sell-side providers plus alternative data. Not open source.

Section VIFinance-specific AI models

Open-source

  • FinGPT (AI4Finance-Foundation, MIT) — LoRA adapters over open bases. Sentiment leader on FPB / FiQA; FinGPT-Forecaster (Dow30 direction) is a demo, not alpha. Best free start for sentiment.
  • Open-FinLLMs / FinLLaMA (TheFinAI, arXiv 2408.11878) — Llama-3 base, 52B-token finance corpus, +Instruct (573K instructions) and FinLLaVA multimodal (charts, tables). OSI-licensed.
  • InvestLM (arXiv 2309.13064) — LoRA over LLaMA-65B. Dated but usable for research-tone Q&A.

Proprietary

  • BloombergGPT (50B, arXiv 2303.17564, March 2023) — still internal only in 2026, no public API, no announced successor. Access gated behind Terminal.
  • Palmyra-Fin-70B-32K (Writer, July 2024) — first LLM to pass CFA Level III sample (73%). Being deprecated 13 July 2026 in favour of closed Palmyra-X5 — grab the open weights while they exist. Best self-host finance-tuned option today.
  • Claude for Financial Services (Anthropic) — launched 15 July 2025; October 2025 added Excel add-in and Databricks / Snowflake / Moody’s connectors, Agent Skills (DCF, comps, earnings). Enterprise SKU over the standard API.

Benchmarks worth naming

  • FinBen — 36 datasets, 24 tasks, EN/ES/CN/JP; current go-to open leaderboard.
  • FinanceBench (Patronus AI) — 10,231 open-book QA over 10-K/10-Q filings; frontier models still miss 20-40%. Best real-world 10-K RAG bench.
  • PIXIU / FinMA / FLARE (arXiv 2306.05443) — canonical open NLP baseline; weak on numerical reasoning.
  • BizFinBench (Hithink, arXiv 2505.19457) — Chinese real-world evaluation, 25 models.

Editor’s takeaway

For an outside-the-bank build in 2026, only two off-the-shelf finance-specialised options actually matter: Palmyra-Fin (self-host, before its 13 July end-of-life) and Claude for Financial Services (managed). Everything US-bank-branded is captive; FinGPT, FinLLaMA and PIXIU are the open research stack.


Next: Multi-agent architecture →