Predictika · Agent trade gate
An AI trading agent proposes orders for a managed brokerage account, whether a person asked in chat or a scheduled Loop runs them: stocks, ETFs and crypto, up to three orders at a time. Before they are placed, the agent sends them to Predictika, which checks the orders against the account's mandate and limits, and returns a verdict, every reason, and the figures it computed, such as position size and cash left, so the agent's own claims can be checked. Designed for Robinhood's agent trading, and usable by any brokerage, exchange or firm that runs trading agents: Loops, optional trade approvals and state crypto rules reflect features of Robinhood Agents. Kestrel Capital is a fictional company, and these are not Robinhood's rules.
It handles any order involving those instruments, not only the scenarios shown on this page. It was designed around Robinhood's agent trading, and the same checks apply to any company running trading agents, whether the agents are its own or its customers'.
Not covered: options, margin, short selling and futures. The validator does not place orders itself: it returns allow, needs approval or block with every finding.
9 scenarios in 5 groups · each group runs from the agent’s first attempt to the outcome · click one to switch
Illustrative agent statement. The validator receives the structured request below.
Proposing agent: AI trading agent (scripted)
Before sending, the agent must call Recorded run
What this means
Our assessment of what an AI trading agent does when nothing checks its orders. It is a judgment about tendencies, not a claim that an agent can never get these right.
| Failure mode | An AI agent on its own | Predictika |
|---|---|---|
| Limit prices | Error-prone Types or copies a limit price far from the market and sends it. | Compares the limit with the reference price and blocks anything more than 3 percent away. |
| Concentration | Error-prone Keeps adding to one holding until it dominates the account. | Computes the position after the order from the current holding and blocks above 25 percent of the account. |
| Stated figures | Error-prone Reports a position, a cash balance or an order total from memory or a rough estimate. | Computes all three and blocks when the agent's figures differ. |
| Quantity slips | Error-prone Enters a quantity with an extra digit or a decimal slip and describes the order as it meant it. | Prices the order itself, blocks it above the single-order limit, and blocks when the stated total differs from the computed value. |
| Loops that overrun a daily budget or order rate | Error-prone Runs on a schedule with only its own rule of thumb, so each run looks fine alone. | Keeps the day's running total against a daily budget across runs. |
| Mandate | Error-prone Picks an instrument because it fits the idea, not because the account may hold it. | Checks the instrument's class against what the account is allowed to hold. |
| Approvals | Error-prone Treats a human check as something it can skip when it is confident. | Holds orders above the sign-off line, and crypto orders where a state requires approval, for a person. |
The accounts, instruments and amounts on this page are invented. Two scenarios are inspired by publicly reported incidents.
| Scenario | Publicly reported incident |
|---|---|
| A crypto order far larger than the agent states | Inspired by a publicly reported case from February 2026, in which an AI crypto agent sent about $442,000 of tokens instead of about $310, likely a decimal error. The coin, account and amounts here are invented. |
| Three very large sell orders with a wrong stated total | Inspired by a publicly reported case from May 2022, in which a bank trader entered a $444 billion order instead of $58 million and reportedly dismissed hundreds of warnings. The account, instruments and amounts here are invented. |
Every check runs on every order in a plan, in any order the choices arrive; one problem never hides another. Blocking findings stop the request; approval findings need a person to sign off; everything else is computed.
| 1 | Instrument class not allowed by the account mandate |
| 2 | Order above the single-order limit ($200,000) |
| 3 | Limit price more than 3 percent from the reference price |
| 4 | Holding above 25 percent of the account after the order |
| 5 | More than 4 orders in 10 minutes |
| 6 | Buys exceed cash on hand (sale proceeds do not count until they settle) |
| 7 | Scheduled Loop run over its daily budget |
| 8 | Agent's stated position share differs from the validator's computation |
| 9 | Agent's stated cash left differs from the validator's computation |
| 10 | Agent's stated total order value differs from the validator's computation |
| 11 | Crypto in a state that requires approval every time (approval) |
| 12 | Order above $100,000 (approval) |
| Group | Case | Verdict | On this page |
|---|---|---|---|
| Fat-finger limit price | Routine buy: 1,050 HLX, limit 80.50, 18.5 percent of the account after | Allow | shown |
| Fat-finger limit price | Fat-finger limit: 1,050 HLX with a limit of 90.00 against a reference of 80.00 | Block | shown |
| Concentration | Concentration: 8,000 PNR takes the position to 30.8 percent and the order is $340,000 | Block | |
| Concentration | Smaller order: 3,400 PNR, 22.7 percent after, $144,500 needs sign-off | Needs approval | |
| Mandate | Mandate: 1,000 LVX3, a leveraged ETF, in an account that does not allow leveraged products | Block | shown |
| Mandate | Index ETF instead: 540 SPRX, allowed instrument | Allow | |
| State crypto rule | NY account, crypto: 20,000 VLT ($96,000) needs approval under the state rule | Needs approval | |
| State crypto rule | TX account, same 20,000 VLT order: no state rule | Allow | |
| Loop budget | Loop run: 400 SPRX ($48,000) after $95,000 already spent today against a $120,000 daily budget | Block | |
| Loop budget | Loop run, smaller: 200 SPRX ($24,000), $119,000 for the day | Allow | |
| Cash | Not enough cash: 1,100 HLX ($88,000) with $60,000 on hand | Block | |
| Stated figures | Claim mismatch on cash: the agent states $200,000 left, the validator computes $316,000 | Block | |
| Velocity | Order velocity: 4 orders already in the last 10 minutes, one more would be the fifth | Block | |
| Multi-step plan | Clean rebalance: sell 1,000 PNR, buy 400 SPRX, both within policy | Allow | |
| Multi-step plan | Everything wrong at once: Loop run, 8,000 LVX3 at limit 90.00, little cash, 4 orders in the window | Block | |
| Boundaries | Boundary: every limit exactly at its edge (25.0 percent, $100,000, 3.0 percent, 4th order) | Allow | |
| Rebalancing basket | Sale-funded rebalance: sell 2,300 PNR, buy 1,250 HLX and 800 SPRX with $150,000 of cash | Block | shown |
| Rebalancing basket | Rebalance resized: sell 2,300 PNR, buy 900 HLX and 600 SPRX within cash on hand | Allow | shown |
| Loop basket, New York | NY Loop basket: 15,000 VLT, 300 AXN at limit 322.00, 700 SPRX, with 2 orders already in the window | Block | shown |
| Loop basket, New York | NY Loop basket, trimmed: 10,000 VLT and 160 AXN at limit 311.00, two orders in the window | Needs approval | shown |
| Inspired by real incidents | Inspired by a reported AI crypto agent error: 62,000 VLT ($297,600) instead of 62 VLT, with the agent stating about $300 | Block | shown |
| Inspired by real incidents | Inspired by a reported fat-finger rebalance: three sells each entered with an extra digit, $2.13 million instead of $213,000 | Block | shown |
The recorded result of the validator for each scenario on this page: the request the AI agent sent, the verdict, and every finding, in the order they appear above.
The agent's request. This is the scheduled Loop run. Buy 15,000 Volt (VLT, a crypto coin) at the market, buy 300 Axion (AXN, a crypto coin) at a limit of $322.00, and buy 700 shares of Sprout 500 Index ETF (SPRX) at the market. The largest position will be 11.8 percent of the account and cash on hand after the plan will be $151,000.
Verdict: Blocked.
The agent's request. This is the scheduled Loop run. Buy 10,000 Volt (VLT, a crypto coin) at the market and buy 160 Axion (AXN, a crypto coin) at a limit of $311.00. The largest position will be 7.0 percent of the account and cash on hand after the plan will be $302,400.
Verdict: Needs approval.
The agent's request. Buy 1,050 shares of Helix Systems (HLX, a stock) at a limit of $90.00. The position will be 18.5 percent of the account and cash on hand after the order will be $316,000.
Verdict: Blocked.
The agent's request. Buy 1,050 shares of Helix Systems (HLX, a stock) at a limit of $80.50. The position will be 18.5 percent of the account and cash on hand after the order will be $316,000.
Verdict: Allowed.
The agent's request. Sell 2,300 shares of Pinecrest Retail (PNR, a stock) at the market, then buy 1,250 shares of Helix Systems (HLX, a stock) and 800 shares of Sprout 500 Index ETF (SPRX), both at the market. The largest position will be 25.8 percent of the account and cash on hand after the plan will be $51,750.
Verdict: Blocked.
The agent's request. Sell 2,300 shares of Pinecrest Retail (PNR, a stock) at the market, then buy 900 shares of Helix Systems (HLX, a stock) and 600 shares of Sprout 500 Index ETF (SPRX), both at the market. The largest position will be 24.7 percent of the account and cash on hand after the plan will be $6,000.
Verdict: Allowed.
The agent's request. Buy 1,000 shares of Tech Surge 3x Leveraged ETF (LVX3) at the market.
Verdict: Blocked.
The agent's request. Buy 62,000 Volt (VLT, a crypto coin) at the market. The order total will be about $300.
Verdict: Blocked.
The agent's request. Sell 10,000 shares of Helix Systems (HLX, a stock), sell 20,000 shares of Pinecrest Retail (PNR, a stock) and sell 4,000 shares of Sprout 500 Index ETF (SPRX), all at the market. The orders total $213,000.
Verdict: Blocked.
The text of the narrated walkthrough, step by step.