A comparison of LLM trading agents, the brokers they connect to, and the tax work they leave behind, September 2026. Research, not financial or tax advice.

The recommendations

Use an LLM to research, never to decide a trade on its own. Build and paper trade on Alpaca; put real money at Interactive Brokers. Keep every limit, and the tax-lot record, in plain code the model cannot touch.

NeedRecommendationWhy
ResearchTradingAgents v0.5.0, the upstream project, run daily over a watchlistThe best-built research pipeline, with filings as first filed; it places no orders by design
Who decides a tradeFixed rules in plain code; the LLM only proposesNo LLM trader has a record of beating the index, and news can be written to steer one
Broker for real moneyInteractive BrokersRated A- by S&P, self-clearing, $10.6B of net capital, no payment for order flow, broker-side order limits, specific-lot tax control
Where to build and paper tradeAlpacaFree paper account by default, a plain REST API and an official agent connection; its outages and duplicate fills in 2026 cost nothing on paper
If you want only one brokerInteractive BrokersIts own paper account is the most realistic one available; the costs are a gateway process, a weekly login and per-order commissions
Execution softwareLumibot or QuantConnect LEAN, behind a small gate and executor you writeBoth drive Alpaca and Interactive Brokers, so moving to live money is a configuration change
Tax-loss harvesting and tax inputOne dedicated taxable account, tickers no other household account holds, an own lot ledger with a 31-day blackout; cross-check in TradeLog or Form8949.comThe broker’s 1099-B only catches wash sales inside one account
CryptoSpot bitcoin and ether ETFs in the same accountOne tax form, and no exchange keys to lose
AvoidAlpacaTradingAgent with real money; Robinhood’s agent trading left unattended; hosted bots that hold exchange keys; Hyperliquid from the USFail-open code, no paper mode, custody of keys, and a venue that bars US persons

The reasoning for each line is below: the agents, the evidence, which brokers have an API, four finalists side by side and Interactive Brokers against Alpaca in detail, the tax work, crypto, and how to run it live.

Problem statement

Find an agent stack that can research stocks, paper trade, and then trade live on its own, while keeping tax input simple enough to file without a week of spreadsheet work. Stocks come first; crypto is a second sleeve.

Requirements, in priority order:

  1. A proven, secure platform. The broker holding the money needs a long track record, real capital behind it, protection beyond the SIPC minimum, and an enforcement history that is procedural rather than a pattern of losing customer assets.
  2. Stock research — an agent that reads filings, prices and news and argues both sides before it recommends anything.
  3. Paper trading that behaves like the live account, so a result on paper means something.
  4. Automatic live trading, with limits the software cannot talk its way past.
  5. Tax-loss harvesting and easy tax input — lot-level control, few wash sales, and a 1099 that imports cleanly.
  6. Crypto as a smaller, second sleeve.

Two projects prompted the question: TradingAgents from Tauric Research and AlpacaTradingAgent, which wires a copy of it to a brokerage.

Key finding: neither is a trading system, and the evidence says an LLM should not be the thing that decides each trade. TradingAgents is a very good research generator with no broker, no paper account and no tax logic by design. AlpacaTradingAgent adds a broker but not the engineering a live account needs. Two things changed in 2026 that make a sound stack buildable anyway: brokers started shipping their own agent connections, and FINRA retired the $25,000 pattern-day-trader rule. The shape that survives the evidence is an LLM that proposes, deterministic code that disposes, a proven broker underneath, and a tax-lot ledger the agent keeps itself.

The two named projects

TradingAgentsAlpacaTradingAgent
What it isMulti-agent research pipeline (LangGraph)A copy of TradingAgents plus Alpaca orders and a web UI
GitHub (2026-09-19)107,574 stars · 20,576 forks269 stars · 96 forks
Releasesv0.5.0, 2026-09-18; ten releases in 2026None; main is the product
MaintainersOne person wrote 290 of 347 commitsOne owner, plus one two-day burst of 16 outside PRs
Places ordersNo — refuses to (every Alpaca PR closed)Yes: Alpaca, paper or live, market orders only
Paper tradingNoYes, Alpaca’s paper account (the default)
Tax featuresNoneNone
CryptoAnalysis of BTC/ETH via Yahoo pricesAlpaca crypto pairs, notional market orders
LicenceApache-2.0Apache-2.0 (same file)
VerdictUse as the research layerPaper sandbox at most; not with real money

TradingAgents

The design reads like an investment firm’s org chart. Four analysts run in turn — technical (indicators computed from prices), sentiment (Yahoo news, StockTwits, Reddit), news and macro, and fundamentals (since v0.5.0, SEC EDGAR filings as first filed, so a historical run cannot see a later restatement). A bull and a bear researcher then debate for one to five rounds, a research manager writes a plan, a trader proposes an entry and a stop, three risk personas (aggressive, neutral, conservative) argue again, and a portfolio manager issues a five-tier rating with a price target. A decision log records each call and, on the next run for the same ticker, scores it against SPY over five days and feeds a short reflection back to the portfolio manager.

It is a strong research tool and an honest one: the code says in plain words that the backtest module “is not a portfolio simulator, and must not grow one”, because turning a rating into a fill needs a quantity, a price and a cash ledger that the system does not have. It supports fifteen model providers including local models through Ollama or any OpenAI-compatible server. Each run makes 16–22 LLM calls with almost no prompt-cache reuse (the date and ticker sit in the system prompts), and the maintainers have declined both a spend cap and dollar accounting, so cost has to be metered from outside.

The paper behind it (arXiv 2412.20138) reported 26.6% on AAPL over the first quarter of 2024 with a Sharpe ratio of 8.21, against −5.2% for buy-and-hold; the authors’ own footnote says the Sharpe “exceeds our expected empirical range”. The test covered three stocks for about sixty trading days, one run each, with no costs or slippage. It has not survived contact with other people:

  • A user re-ran AAPL over the same window (issue #168) and got −25.4% against −7.6% for buy-and-hold, with commissions eating $1,838 of a $10,000 account. The evaluation code and dataset were never released.
  • An independent one-year run across 2025 (The Alpha Illusion, arXiv 2605.16895) turned $100,000 into $106,400 before costs and $102,300 after, against $104,800 for buy-and-hold.
  • Look-ahead leaks — future data reaching past decisions — were found and fixed in four releases during 2026 (v0.2.3, v0.3.1, v0.4.0, v0.5.0), so every backtest run on an earlier version was contaminated.

Two smaller cautions: the package called tradingagents on PyPI was uploaded by an unrelated account, so install from source; and the CLI fetches an announcements feed from Tauric’s server at start-up.

AlpacaTradingAgent

This is the most-starred public project that connects the TradingAgents debate to a real broker — and it is not a GitHub fork but a copy that split from upstream on 2025-07-03 and never merged back. It therefore lacks upstream’s look-ahead fixes from v0.3.1 on and the filed-fundamentals source; its fundamentals come from an OpenAI web-search summary, and it needs an OpenAI key even when another provider does the reasoning.

What it adds is real: a paper/live switch, bracket stop-and-target orders on stocks since July 2026, a Dash web UI with positions and a scheduler, and a safety layer with a $25,000 per-order cap, a 25% per-symbol cap, halts at a 10% daily loss or 15% drawdown, and a file-based kill switch. Reading the code turned up the reasons not to give it money:

  • The live path is five months old. paper=True was hard-coded until an outside contributor fixed it on 2026-04-11.
  • The web UI has no login, sends every key in .env (the broker key and secret included) to the browser on page load, and stores typed keys in plain text in browser storage. A browser whose saved setting says “live” overrides a server configured for paper.
  • Several layers fail open: sizing errors keep the full order amount, a rejected bracket order falls back to an unprotected market order, and the circuit breakers skip when account equity can’t be read.
  • The scheduler’s loop mode ignores market hours, and its holiday calendar is a hard-coded list for 2024–2027.
  • The only published performance claim anywhere is the author’s own: one week of paper trading on one stock, +2.7% against the stock’s +2.0%.

The wider field

Nothing else in open source closes the loop either. The research projects research; the execution frameworks execute; the new piece in 2026 is brokers offering an agent connection of their own, over the Model Context Protocol (MCP) that Claude, ChatGPT and most agent tools speak.

ProjectKindTrades?Licence · starsFit
ai-hedge-fundLLM “investor personas”No; simulated onlyMIT · 63.5kResearch sidecar; “not intended for real trading”
FinRobotEquity-research report agentsNoApache-2.0 · 8.0kResearch
FinRL-XML and reinforcement learning, not an LLMAlpaca paper and liveApache-2.0 · 3.7kAuthor-reported paper result only
Qlib + RD-AgentLLM writes factors, Qlib tests themNoMIT · 48.7k / 14.7kThe credible “LLM does quant R&D” pattern
OpenBBData platform and research copilotNoAGPL-3.0 · 73.2kThe company is winding down (August 2026)
LumibotPython trading frameworkAlpaca, IBKR, Schwab, Tradier, cryptoGPL-3.0 · 2.1kAgent decisions replayable in backtests
QuantConnect LEANBacktest and live engine, AI assistant15+ brokersApache-2.0 · 21.7kMost disciplined path to live; cloud nodes are paid
NautilusTraderRust-core event engineIBKR plus crypto venuesLGPL-3.0 · 29.1kStocks and crypto in one engine; steep
ComposerHosted rules engine with AI authoringYes, via AlpacaCommercial, $0–32/moLowest effort; strategies are fixed rules

Broker-side agent connections, the execution layer that arrived this year:

ConnectionOfficialPaperControlsTax lots
Alpaca MCP v2YesDefault; one flag to go liveToolset filteringNot exposed
Robinhood Agentic TradingYes, beta since 2026-05-27None documentedSeparate agent account, optional reviewNot documented
Public MCPYesNone foundPreflight cost checkPer-lot view and lot-specific sells
tastytrade MCPYesSandbox is not realisticRead-only mode; $50,000 order cap; dry run firstNot found
Interactive Brokers AI connectorYes—Drafts orders for a human to submitVia Tax Optimizer
Webull OpenAPI and MCPYesYes, since July 2026IP allowlist, 2FANot verified

Robinhood’s terms deserve a direct quote: it “does not control, supervise, monitor … or audit these AI agents”, and the customer carries the losses. Nearly 100,000 agent accounts had opened by the end of June.

Does an LLM trader make money?

This is the question the whole stack rests on, and the evidence is now large enough to answer it.

TestKindResultBenchmark, same window
Alpha Arena S1, Oct–Nov 2025Real money, crypto perpetuals, six modelsTwo gained (+22%, +5%); four lost 42–59%BTC −0.6%
Alpha Arena S1.5, Nov–Dec 2025Real money, US stocksOne model clearly profitable (+12%)SPY +3.2%
FINSABER (KDD 2026)20-year backtest, 100+ symbolsPublished LLM agents trail buy-and-hold on SharpeBuy-and-hold 0.32 to 0.70; agents −0.25 to 0.24
StockBenchClean window, Mar–Jun 2025Best models +1.9% to +2.5%Equal-weight +0.4%; DIA +2.6%
LiveTradeBench50 live days, 2025Best stock model +6.25%SPY +5.57%
CLQT (2026)Cost-aware, with a live paper track”Do not cleanly beat the index”—
LIVR ETFReal fund run by an LLM committee+23.5%, Sep 2024 – Jan 2026SPY +25.5%

Alpha Arena results come from secondary reports that disagree on the size of the losses, not on their direction. The index comparisons for LiveTradeBench and LIVR are computed from Yahoo closing prices, since the sources give none.

Two further findings explain why the impressive numbers keep evaporating. Models remember the market: they recall exact prices up to their training cutoff, and telling them to ignore it does not work (Lopez-Lira et al.); a 2026 audit found a model’s real cutoff can sit eight months earlier than its vendor states (HindsightBench). Any backtest over a period the model may have read about is suspect, and a 2026 paper argues that no passive backtest can separate that leak from genuine skill (Zhang & Stadie). And short samples prove little: from daily returns, the 95% range on a Sharpe ratio is about ±2 divided by the square root of the years observed, so telling a true Sharpe of 1.0 apart from zero takes close to four years.

What the evidence does support is narrower and still useful: LLMs are good at reading, summarising and arguing about filings and news, and good at writing strategy code that a deterministic engine then tests and runs. Using them as the per-trade decision maker is the part with no record.

The brokers

A bot needs three things from a broker before anything else matters: an API an individual is allowed to use, a way to test without money, and a login that does not need a person every day. Then the requirement at the top of the list decides it: a secure, proven platform. All figures were read from FINRA BrokerCheck, SEC filings and the brokers’ own pages on 2026-09-19.

Which brokers have an API

BrokerAPI for individualsWhat it isPaper trading through itThe catch for a bot
Interactive BrokersYesTWS API (a socket to its desktop app or headless gateway) and a Web APIYes, a $1M paper accountNeeds a funded Pro account, a gateway process, and a login with 2FA every week
AlpacaYes — the API is the productREST and WebSocket with a key and secret; official MCP serverYes, the defaultKeys cannot be scoped or limited to an IP address
Charles SchwabYesSchwab Trader API: REST and streaming, OAuth; each app is approved by handNoA person must log in again every 7 days; stocks and options only
E*TRADEYesREST with OAuth 1.0aSandbox onlyA person must log in every day
PublicYes, since June 2025REST, secret key exchanged for 15-minute tokens; official MCP serverNoYoung API; clears through Apex
WebullYes, after approval ($100 minimum)OpenAPI over HTTP, MQTT and gRPC; MCPYes, since July 2026Clears through Apex
tastytradeYesREST with OAuth2, including a read-only scope; official MCP serverSandbox, not realistic (market orders fill at $1)Clears through Apex
TradeStationYes, with a $10,000 balanceREST with scoped OAuth2Simulator with instant fillsKey issued by email request
TradierYesREST; personal token that never expires; hosted MCPSandbox with 15-minute-delayed dataA small firm ($6.7M net capital)
moomooYesOpenD gateway with SDKs in five languagesYesParent faces a pending Chinese penalty of about $271M
RobinhoodStocks: only through its AI-agent connection; crypto: yesAgentic Trading over MCP for named AI apps; a separate crypto REST APINoNo general stock API; the heaviest regulatory record here
Fidelity, Vanguard, MerrillNo public trading API found——Screen-scraping tools exist; fragile and likely against the terms
SoFi, FirstradeNo———
Ally InvestDiscontinued——Its API host no longer resolves

So the answer to “does Schwab have an API” is yes, and it is a real one — but a bot on Schwab has no paper account to learn on and stops working every seventh day until someone logs in again. Among the big, long-established firms, only Interactive Brokers offers both an API and a paper account that fills the way the market does.

Track record

BrokerBroker-dealer sinceScale and capitalExcess SIPC per customerLargest actions, 2020–2026
Interactive BrokersRoots in 1978; public since 2007 (Nasdaq: IBKR)$930B customer equity; $10.6B net capital; S&P A-$30M ($900k cash)$38M AML (2020); $55M off-channel records (2023); $11.8M OFAC (2025)
Charles Schwab1971 (NYSE: SCHW)$13.4T client assets; $13.2B net capital$600M aggregate$187M robo-adviser cash (2022); $10M off-channel (2025)
E*TRADE (Morgan Stanley)Now inside Morgan Stanley’s brokerMorgan StanleyNot checked$35M unencrypted customer data (2022); $15M supervision (2024)
Robinhood2012; self-clearing since 2018$369B platform assets$50M ($1.9M cash)$65M SEC (2020); $70M FINRA (2021); $45M SEC (2025); $29.75M FINRA (2025)
Alpaca2018 (company founded 2015)$357M net capital (June 2026, including a $140M loan from its parent); self-clearing$75M securities + $75M cash$400k SEC records (2024); $300k FINRA late trade reports (2026)
TradeStation1995 (Monex Group)$232M net capital; self-clearingNone found$425k identity-theft programme (2022); $1.1M OFAC (2026)
Webull2017 (Nasdaq: BULL)$28.5B customer assets; clears via ApexApex policy$3M options approvals (2023); $1.6M (2025)
tastytrade2017 (IG Group)Clears via ApexApex policy$850k best execution (2026)
Public2019 brand on a 2003 firm$8.5M net capital; clears via ApexApex policy$500k securities lending, $500k best execution (2023)
Tradier1993 firm, renamed 2013$6.7M net capital; clears via ApexApex policy$75k omitted platform complaints (2026)

Apex Clearing’s excess SIPC is $37.5M in securities and $900k in cash per customer, $150M in aggregate. Schwab’s per-customer figure could not be confirmed from Schwab’s own page.

The ranking on proof is not close. Interactive Brokers and Schwab are public, self-clearing, and backed by capital measured in billions; their fines are large but procedural, not a pattern of losing customer assets. Robinhood is enormous and has the heaviest record in the group, including a 2021 breach that reached about seven million people.

Four finalists side by side

Of the brokers with a usable API, four deserve a close look: Interactive Brokers (the most proven firm with a full API), Alpaca (built for bots), Schwab (the largest firm with an API), and Public (the only one that lets an API pick tax lots per order).

Interactive BrokersAlpacaSchwabPublic
CounterpartyS&P A-; $10.6B net capital; self-clearing$357M net capital; self-clearing; venture-funded$13.2B net capital; self-clearing$8.5M net capital; clears via Apex
Stock commissions$0.35–1 minimum per order; $0.0035–0.005 a share$0$0$0
Payment for order flowNone on its Pro planYes: $24.7M in 2025YesYes, unless you pay $0.003 a share for another route
US quotes through the APIAbout $5–15 a month; the $10 bundle is waived above $30 of commissionsFree from IEX alone (about 2.5% of volume); $99 a month for the full marketIncluded, with streamingNot checked; no streaming
Interest on idle cash3.38% above the first $10,000 (scaled down under $100,000)3.56% FDIC sweep0.01%3.30%, in a separate account
Margin rate, smallest tier5.38%6.25%12.08%5.15%
Login for a botA gateway process; 2FA every weekKey and secret; never expiresBrowser login every 7 daysSecret key mints 15-minute tokens
Paper tradingYes, top-of-book fills, $1MYes, the defaultNoNo
Broker-side safetyMandatory 2FA, trusted IPs, order-size limits, login IP allow-listNo key scopes, no IP allowlist, no expiryNone foundNone documented
Tax lot per order through the APINo; the Tax Optimizer sets it the same dayNo; FIFO onlyField exists; not confirmed to workYes, “not guaranteed”
Trading incidents in 2026None major found35 affecting trading, two with duplicate executionsLogin and app outages reportedNone found; no status page
Also offersOptions, futures, forex, bonds, 40 countries, six IRA typesOptions, crypto, 24/5, fractional shares, IRAs since May 2026Options, fractional shares, IRAsOptions, bonds, crypto, 24/5, IRAs with a 1% match

Rates are as published on 2026-09-19 and move with the Fed; Alpaca’s sweep rate takes effect on 22 September. Alpaca’s incident count is from its own status page, 1 January to 18 September.

Interactive Brokers against Alpaca

The two recommended brokers are close to opposites, and the differences are the useful part.

Who you are trusting. Interactive Brokers has been trading since 1978, has been public since 2007, is rated A- by S&P, and holds $10.6B of net capital; when the NYSE’s systems failed on the morning of 3 June 2024 it took a $48M loss on its customers’ positions rather than pass it on. Its fines are about supervision, money laundering and sanctions screening. Alpaca is a venture-backed company valued at $1.15B in January 2026; its net capital more than tripled in the first half of 2026, $140M of it a loan from its parent, and one of its Series D investors, Citadel Securities, is also the largest buyer of its customers’ order flow.

What it costs. Alpaca charges no commission; Interactive Brokers charges per share with a minimum per order, so the gap grows with the number of small orders:

Example bot, 252 trading daysInteractive Brokers commissionsAlpaca commissionsRegulatory fees, either broker
2 trades a day, 50 shares at $100$151–504$0about $30
10 trades a day, 100 shares at $50$631–2,520$0about $155
40 trades a day, 20 shares at $200$3,329–10,080$0about $440

The Interactive Brokers range runs from its tiered plan with resting limit orders to its fixed plan, and every one of these orders pays the per-order minimum. But “free” has costs of its own. Alpaca is paid for routing orders to market makers ($24.7M in 2025, across all its customers); Interactive Brokers’ Pro plan is not. Alpaca’s free data is the IEX exchange alone, about 2.5% of US volume, which is thin for setting limit prices; the full feed is $99 a month. And Alpaca reprices accounts it flags as “non-retail” — more than $200,000 of trading a day is one flag — at $0.004 a share. On idle cash, Alpaca pays 3.56% from the first dollar; Interactive Brokers pays 3.38% above $10,000, scaled down for accounts under $100,000.

Keeping it running. Alpaca is a key, a secret and a REST call; nothing has to stay logged in. Interactive Brokers needs its Java gateway running, resets it every night, and asks for a two-factor login every week. The standard tool for automating that, IBC, was retired and archived on 1 September 2026; a young successor answers the weekly prompt only if an authenticator seed is stored on the bot’s own machine — the machine you most want hardened. Alpaca’s cost is on the other side of the ledger: 35 incidents affected trading on its platform between January and mid-September 2026, including stuck orders for more than three hours on 12 March and two events in which orders filled twice (overnight fractional orders on 21 May, and an order-system reset on the night of 3 August, both corrected afterwards). It also removed the old day-trading fields from its API in July with little warning, which crashed older versions of its own Python library. A bot on Alpaca must reconcile its positions against the broker’s constantly and treat a duplicate fill as a normal event.

Testing on paper. Interactive Brokers’ paper account fills against the top of the real order book, using the same market-data subscriptions as the live account. Alpaca’s paper account fills against the full-market quote even when the bot can only see IEX, never checks whether that much stock was on offer, has no queue position for limit orders, and skips dividends and fees; starting over means deleting the account and issuing new keys. Alpaca is the easier place to build; Interactive Brokers is the more honest place to test.

Security. Interactive Brokers requires two-factor login for everyone, limits API connections to trusted IP addresses, flags API orders beyond size and value limits, and ties daily withdrawal limits to the strength of the login. An Alpaca trading key cannot move cash out, but it cannot be scoped, restricted to an address or set to expire, and it can switch off the account’s own guardrails (suspend_trade, no_shorting, the margin multiplier) and add crypto withdrawal addresses. One user reported on Alpaca’s forum in May 2026 that $2,000 left their account exactly that way; the cause was not established. A key that can undo the limits is a key the model’s process must never hold.

Tax. Interactive Brokers offers eight lot-matching methods, including specific lots through its Tax Optimizer, changeable until 8:30 PM Eastern on the trade date, though not per order through the API; its 2025 1099 arrived on 20 February. Alpaca matches every sale first-in, first-out with no way to choose, and its 2025 forms came about a month late, in mid-March, after an upgrade to its cost-basis systems. Both import into TurboTax.

Room to grow. Interactive Brokers adds options, futures, forex, bonds, overnight trading on more than 10,000 US stocks, markets in 40 countries and six kinds of IRA. Alpaca covers US stocks, ETFs and options, crypto in the same API, fractional shares through the API (Interactive Brokers refuses them there), 24/5 trading, and IRAs since May 2026; its individual taxable accounts are margin accounts only.

Which to choose when.

  • Real money, or a strategy that may grow into options, futures or an IRA: Interactive Brokers.
  • Building, paper trading, or small and very frequent orders, where the per-order minimum would dominate: Alpaca, with the full data feed.
  • Already at Schwab, and willing to log in weekly and paper trade elsewhere: Schwab’s API works for live trading.
  • Per-order control of tax lots above everything else: Public, after paper trading elsewhere, and knowing it is a small firm that clears through Apex.

The rulebook moved too. The SEC approved FINRA’s replacement for the pattern-day-trader rule on 2026-04-14; since 2026-06-04 an intraday margin standard applies instead of the day-trade count and the $25,000 minimum, with brokers allowed to phase it in until 2027-10-20. Alpaca switched on day one and removed the old day-trading fields from its API by July, which quietly breaks bots written against them. Cash accounts still live under settlement rules, so a cash-account bot must size from settled cash, not buying power.

Taxes: harvesting and filing

Automation’s hidden cost lands in April. The mechanics:

  • Capital losses offset gains, then up to $3,000 a year of ordinary income; the rest carries forward.
  • A loss is washed — disallowed and added to the replacement’s cost — if substantially identical stock is bought within 30 days before or after the sale, in any account the taxpayer or a spouse controls. If the replacement lands in an IRA, the loss is gone for good (Rev. Rul. 2008-5).
  • A bot that trades the same tickers repeatedly almost always has a buy inside that window, so losses roll forward lot to lot. If the last lot is still open on 31 December, a year that lost money can show a taxable gain.

The broker’s 1099-B only has to report a wash sale when both trades are in the same account, in the same security (box 1g of the 1099-B instructions). Everything across accounts, brokers, spouses and IRAs is the filer’s to find — and any adjustment on the 1099-B removes the easy filing path. Without adjustments, broker totals go straight onto Schedule D; with them, each trade goes on Form 8949 or an attached statement, which can mean mailing Form 8453.

Traders who qualify for trader tax status can elect mark-to-market under §475(f): wash sales and the $3,000 cap stop applying, gains and losses become ordinary, and open positions are marked at year-end. The election is due with the prior year’s return, so April 15, 2027 for tax year 2027. Practitioners look for roughly 720 trades a year on three-quarters of trading days; a bot’s trades count only if the trader built and oversees it, so that time needs a log.

Tools that make the input easier:

ToolWhat it doesPrice
TradeLogRecomputes wash sales across all accounts; §475 support$219–459/yr
TraderFylesCloud; audits the broker’s 1099-B, IRA washes, TurboTax exportFree–$899/yr
Form8949.comTurns broker files into 8949 and Schedule D, both filing routes$18 per broker file
Koinly / CoinLedgerCrypto, per-wallet basis, TurboTax export$49–199+/yr

TurboTax imports 1099s directly from Alpaca, Schwab, E*TRADE, Fidelity, Interactive Brokers, Public, Robinhood, tastytrade, TradeStation and Webull, up to about 10,000 transactions; Tradier, Coinbase and Kraken are not import partners.

Direct indexing does harvesting as a managed service — Frec from 0.09% with a $20,000 minimum, Wealthfront, Betterment, Schwab Personalized Indexing at 0.40% from $100,000 — but none watches accounts outside itself, and none offers an API an agent could drive. Running one beside a stock-trading agent is the classic way to wash losses without seeing it happen.

For the agent itself, the open-source options are thin (the wash-sale calculators on GitHub were last updated in 2022), so the agent keeps its own ledger: one row per lot, a 31-day blackout on re-buying anything sold at a loss, specific-lot sells where the broker allows it, positions in loss closed by mid-December, and a ticker universe no other household account touches. With that last rule, the broker’s same-account wash-sale figure is the true one and the 1099-B imports as it stands.

Crypto is different, for now. The wash-sale rule covers “stock or securities”, and crypto held as property is neither — but on 2026-09-16 the House Ways and Means Committee approved H.R. 10357, which would extend it to traded digital assets for dispositions after September 14, 2026. It is not law; if it passes as written it reaches back to trades already made. Brokers issue Form 1099-DA — proceeds from 2025, cost basis from 2026 for coins bought and held at the same broker — and basis is now tracked per wallet. Decentralised exchanges issue nothing.

Crypto as the second sleeve

RouteProof and securityPaper tradingTax forms
Spot bitcoin and ether ETFs in the stock accountThe stock broker’s record; no crypto keys at allThe stock account’sOne 1099-B
Alpaca CryptoSeparate entity, state licences; withdrawals to whitelisted addresses after 24 hYes, same API1099-DA; fees charged in the coin
Interactive Brokers (Paxos / Zero Hash)Coins held outside IB, not SIPC-coveredNot confirmed1099-DA issuer unconfirmed
Kraken + FreqtradeNo customer-fund hack found; withdraw is a separate key permission, IP allowlistDry-run in the botSecond 1099-DA; 0.40/0.80% fees
Coinbase AdvancedPublic company; 2025 insider data breach ($307M booked); May 2026 outageMock sandbox onlySecond 1099-DA

Two stories set the rules here. When about 100,000 exchange keys leaked from the hosted bot service 3Commas in 2022, the thieves did not withdraw anything — they used the keys to trade victims’ money into coins they were pumping. A trade-only key is necessary, not sufficient: it also needs an IP allowlist, and no hosted service should hold it. And the most-cited live LLM trading contest ran on Hyperliquid, whose terms bar US persons, so it cannot be reproduced from the US.

Running it live safely

Diagram: the model proposes, code disposes — research without keys, a deterministic gate, one executor that holds the broker key, and a lot ledger that feeds tax filing

The research on attacks is blunt. Hidden edits to headlines cut an LLM trading system’s annual return by up to 17.7 points (arXiv 2601.13082); poisoning one role in a multi-agent trading system found “no architecture is inherently robust” (arXiv 2608.24069); and a purpose-built guard cut attack success from 38% to 15%, not to zero (arXiv 2605.27333). An agent that reads the news is an agent anyone who writes the news can steer. So the limits live outside the model:

  • The LLM emits a typed proposal — symbol, side, target weight, confidence, the data it saw — and holds no broker key or tool.
  • A deterministic gate checks it against an allow-list of liquid symbols, per-position and total exposure caps, a daily-loss and drawdown kill switch, price bands around a fresh quote, and settled cash.
  • One small executor, written in-house with few dependencies, is the only process with the trade key. It places limit orders with idempotent client order IDs, and never sends market orders outside regular hours.
  • A reconciler compares broker positions with the ledger every few minutes; any mismatch halts trading. A dead-man switch does the same when the heartbeat stops.
  • Orders above a threshold, the first trade in a new symbol, and the first trade after a restart wait for a human.

Supply chain is the quieter risk. In March 2026 two releases of LiteLLM, a library under many agent stacks, carried a credential stealer for about forty minutes and spread through unpinned version ranges; both named projects leave their dependency versions open-ended. Lock with hashes and keep the executor dependency-light.

Paper trading validates the plumbing, not the edge. Alpaca’s paper fills happen at the quoted price without checking whether that much stock was offered there, and ignore slippage, market impact and dividends. The sensible rollout is shadow trading for at least a hundred decisions, then 1–5% of the intended capital live with limit orders only, scaling by at most 2× per step under rules written in advance.

Cost sets a floor on account size. At a mid estimate of 160,000 input and 30,000 output tokens per decision, ten tickers a day cost about $1,560 a year on a mid-tier model and under $200 on the smallest; keeping that under 1% of assets needs roughly $156,000 and $17,000 respectively. These are estimates to be replaced by metered usage. A paid market-data stack adds about $1,900 a year; a local model on a home GPU costs about a cent per decision in power, with decision quality nobody has measured.

The recommendations, argued

The field collapses to one architecture and a choice of broker; the table at the top is the short form.

The architecture, whichever broker: TradingAgents v0.5.0 (upstream, not the copy) as the research layer, run on a schedule over a watchlist with every rating logged; a broker-neutral execution framework — Lumibot or QuantConnect LEAN — behind a deterministic gate; the agent’s own lot ledger and blackout calendar; and a year-end cross-check in TradeLog or Form8949.com.

Option A — Interactive Brokers (the proven path). Rated A- by S&P, public, self-clearing, $10.6B of net capital, no payment for order flow on its Pro plan, the most realistic paper account of any broker here, trusted IPs and order-size precautions on the broker side, specific-lot selection through its Tax Optimizer, crypto through Paxos or Zero Hash, and support in every serious framework. Costs: a local gateway process, a two-factor login every week (hands off only if an authenticator seed lives on the machine, now that the standard automation tool has been retired), about $10 a month of market data, and a per-order minimum commission. This is the account to put real money in.

Option B — Alpaca (the agent-native path). Free paper trading by default, an official MCP server, one API for stocks and crypto, no commissions, a 3.56% sweep on idle cash, clean TurboTax import, and no process to babysit. Risks: eight years as a broker-dealer, 35 trading incidents in 2026 including two in which orders filled twice, a 2026 FINRA finding about system capacity, payment for order flow, keys that cannot be scoped, IP-restricted or expired, and first-in, first-out lot matching with no choice. This is the best place to build and paper trade, because paper money needs no track record.

The combination is the recommendation: build and paper trade on Alpaca, go live on Interactive Brokers. A broker-neutral framework makes the move a configuration change, and IBKR’s own paper account gives a realistic-fill check before the first live order.

Worth knowing: Public is the only finalist whose API chooses tax lots per order, but it has no paper trading, takes payment for order flow and clears through Apex; E*TRADE also takes a lot ID per order but needs a login every day; Schwab is as proven as it gets, and its API works for live trading, but it has no paper trading, a weekly browser login, 0.01% on idle cash and 12% margin for small balances.

Not recommended for this use case: AlpacaTradingAgent with real money (fail-open paths, keys exposed to an unauthenticated page); Robinhood Agentic Trading for unattended use (no paper trading, the heaviest record, and a broker that says it does not supervise the agents); any hosted bot that holds exchange keys; Hyperliquid and dYdX from the US; AI-agent tokens, which are speculation rather than tools.

Suggested evaluation path

  • Run TradingAgents v0.5.0 daily on a small watchlist for a month; log each rating, its token usage and its cost; score the ratings against SPY afterwards
  • Open an Alpaca paper account and wire the gate, executor and reconciler; shadow-trade the ratings with limit orders only
  • After at least 100 decisions, compare against buy-and-hold SPY after costs — if there is no edge, keep the research layer and stop there
  • Before any live order: the lot ledger, the 31-day blackout calendar, the kill switch and the dead-man switch are in place
  • Open the Interactive Brokers account; repeat a short run on its paper account; then go live with 1–5% of the intended capital
  • If the strategy trades at trader-status volume, decide on §475(f) before April 15 of the year it should apply

Sources