Agent-to-agent trading on BNB Chain

AI agents trade stocksand pay for being right.

Elitr's news and on-chain flow analysts sell signals over Binance b402. The trader picks between them by track record, checks every idea against live prices and 14 risk rules, and dry-runs every transaction before trading tokenized stocks on BNB Chain.

Built for BNB Hack: Tokenized Stocks Edition

Two analysts compete to sell the idea. One trader picks who to trust.

Elitr is an agent-to-agent trading desk on BNB Chain. A news analyst and an on-chain flow analyst sell signals over b402 payments. The Execution agent chooses between them by track record, checks each idea against live prices and 14 hard risk rules, dry-runs every transaction, and manages a small NVDAB + TSLAB portfolio with take-profit and stop-loss exits.

autonomous agents
3
risk checks before every buy
14
of transactions dry-run first
100%
tokenized stocks traded
2
LIVEOn-chain proof

Not a mock-up. Real agents, real transactions.

Elitr runs live on BSC mainnet. Every row below is a transaction the system made itself — open any of them on BscScan.

What happenedDetailsTransaction
ERC-8004 identitiesNews analyst #365554 · Flow analyst #365555 · Trader #3655560x81f46ff7…8237 ↗
Agent pays agent (b402)Trader → flow analyst, 0.01 USDT for a signal, settled by Binance's facilitator0xe2a30c08…c49f ↗
Agent rates agent (ERC-8004)Trader posts the news analyst's accuracy to the reputation registry0xf09e9f6e…87d6 ↗
Live trade2 USDT → 0.008433 NVDAB, simulated with the Transaction API, then broadcast0x0ce91120…3807 ↗
Binance Agentic Wallet buys a signalPaid in U via EIP-3009, no approval needed, 3.5 s from signature to signal0xd2535021…2e4e ↗
01The problem

AI trading agents are opaque, can't pay for what they use, and aren't safe to hand a wallet.

Tokenized stocks bring US equities on-chain around the clock. That's a great playground for autonomous agents, and a dangerous one.

01

Trading bots are black boxes

Most bots are one script that makes up its own mind. You can't see where an idea came from, what it cost, or why a trade was made.

02

Agents can't tell good data from bad

AI agents scrape, hardcode or share API keys. There's no simple, per-request way for one agent to pay another for information, and no record of whether that information was ever right.

03

Tokenized stocks never close, but stocks do

Tokens trade 24/7 while the underlying market sleeps. Prices drift, quotes go stale, and liquidity is thin on most platforms, so naive bots buy at the wrong price.

04

A bot with a wallet can drain it

Give an agent a private key and no limits, and one bad signal or a reverting swap can cost real money. Safety is usually an afterthought.

02What Elitr solves

Split the job between agents, make them pay each other, keep score, and make every step visible.

Accountable signals

Ideas come from separate analyst agents that cite their inputs. Every signal is paid for and scored afterwards, so every analyst has a receipt trail on BSC and a public hit rate.

A real agent market

Analysts compete for each purchase over b402: no shared keys, no subscriptions. The trader pays the one with the better record, and stops paying one that keeps being wrong.

Safety by default

Hard limits, a portfolio cap, take-profit and stop-loss exits, a kill switch, swap-only routes and a mandatory dry-run. Paper trading is the default.

The three agents
Agent A · seller

The News analyst

Reads the last 48 hours of Yahoo Finance and Google News headlines about the stock behind each token, and asks Claude for a 1–100 confidence score that must cite the headlines behind it. Each call is meant to hold for an hour.

Agent C · seller

The Flow analyst

Reads what money is actually doing: every PancakeSwap v3 swap in the token's pool over the last hour. It scores buy-vs-sell volume, large-trade imbalance, buyer-vs-seller wallets and momentum. Deterministic, no LLM, and it refuses to sell a signal when there are too few swaps to say anything. Each call is meant to hold for 30 minutes.

Agent B · buyer

The Execution agent

Holds the capital. Chooses which analyst to pay, scores every call it buys, compares real and on-chain prices, runs every risk rule, simulates each swap with Binance's Transaction API, and only then fills — on paper by default.

03How it works

One cycle, eight steps, for each stock, every 15 minutes.

Each step emits an event you can watch live on the dashboard. Nothing is simulated for display: if data is missing, the agent says so and holds.

  1. 01Analyst market

    Pick an analyst

    Two analysts sell signals for each stock: one reads the news, one reads on-chain swap flow. The Execution agent draws a Thompson sample from each one's track record and buys from the highest draw. Analysts whose trust falls too low are paused.

  2. 02b402 payments

    Buy the signal

    It asks the chosen analyst for a signal, gets an HTTP 402 price tag, signs a USDT payment and retries. The analyst checks the payment with Binance's b402 facilitator, and only settles once it has actually produced the signal. No signal, no charge.

  3. 03RWA Data · Market API

    Get three prices

    The real stock price from Yahoo Finance, the Binance RWA Data reference price and market status, and the live on-chain token price — for NVDAB and TSLAB.

  4. 04Portfolio

    Check exits first

    For a held position, the agent sells on take-profit, stop-loss, or a bearish signal before it considers buying more.

  5. 05Trading API

    Quote the trade

    Asks the aggregator for the best route. Only regular swap routes are accepted, because only those can be simulated.

  6. 06Risk engine

    Run the risk checks

    14 rules on a buy (portfolio cap included), 6 on a sell. Every rule is logged with its observed value and limit. One failure and the agent holds.

  7. 07Transaction API

    Dry-run, then fill

    The swap is simulated first. In paper mode a passing simulation is booked at the real quoted amounts; in live mode the agent signs locally and broadcasts.

  8. 08Reputation

    Score the analyst

    When a signal's horizon ends (1 hour for news, 30 minutes for flow), the trader checks the pool price: was the call right, and by how many basis points? It updates that analyst's hit rate, trust and weight, and posts the rating on-chain to the ERC-8004 reputation registry.

How agents pay each other

b402: the price travels with the response.

b402 is Binance's facilitator for x402, which turns HTTP's long-unused 402 Payment Required status into a real payment step. No accounts, no invoices: the price travels with the response.

  1. 01Execution requests /signal from the analyst it picked and gets 402 with the price, token and payee.
  2. 02It signs a USDT payment authorisation with its wallet and retries.
  3. 03The analyst checks it with the b402 facilitator, produces the signal, then settles. If it can't produce one, the payment is never taken.
  4. 04The signal comes back with a settlement receipt, viewable on BscScan.
b402 · HTTP exchange
# Execution → Analyst
GET /signal?symbol=NVDAB

# Analyst → Execution
HTTP/1.1 402 Payment Required
PAYMENT-REQUIRED: eyJ4NDAyVmVyc2lvbiI6Mi…

{ "x402Version": 2,
  "accepts": [{
    "scheme": "exact",
    "network": "eip155:56",
    "amount": "10000000000000000",
    "asset": "0x55d3…7955",   // USDT
    "payTo": "0x…" }] }

# Retry with PAYMENT-SIGNATURE → 200 OK
{ "symbol": "NVDAB", "score": 72, "stance": "bullish", … }
04Analyst market

Analysts earn trust by being right. The trader pays for track records, not promises.

Every signal the trader buys is scored when its horizon ends: was the call right, and by how many basis points? That record decides who gets paid next.

01

Thompson sampling

Each analyst's right/wrong record becomes a probability distribution. Every cycle the trader draws once from each and buys from the highest draw, so proven analysts win most purchases and newcomers still get tested.

02

Trust-weighted confidence

Before the risk engine sees it, an analyst's score is pulled toward a neutral 50 by how little the trader trusts it. A 78 from an unproven analyst becomes 64 and fails the 65 minimum; a 72 from a proven one passes as 72.

03

Paused when wrong

Below 0.45 trust after 10 scored calls, an analyst is paused: the trader stops paying it. Hit rate, average return and the pause line are all on the dashboard.

Live on BSC

Agents rating agents, on-chain. Each agent gets an ERC-8004 identity on BSC, and after every scored call the trader posts the analyst's accuracy to the ERC-8004 reputation registry, where any other agent can check it before paying. Elitr's agents are registered on BSC mainnet as #365554 (news analyst), #365555 (flow analyst) and #365556 (trader), and the trader posts a rating after every scored call. Every identity and rating links to BscScan from the dashboard.

05Safety

Fourteen rules stand between a signal and a buy.

All 14 are checked before every buy, and six before every sell, each shown on the dashboard with the observed value next to the limit. The defaults below are deliberately small, and the operator can tighten or loosen them.

RuleDefault limit
01Kill switchOff (one click stops everything)
02Signal confidence≥ 65 / 100, weighted by analyst trust
03Signal stanceBullish
04Signal age≤ 5 minutes
05Price gapOn-chain ≥ 0.5% below reference
06Trade size≤ $5
07Position size (per stock)≤ $25
08Portfolio size (all stocks)≤ $50
09Daily trading spend≤ $25
10Pool liquidity≥ $50,000
11Slippage / price impact≤ 1%
12Route can be simulatedSwap routes only
13USDT balanceEnough for the trade
14BNB for gas≥ 0.001 BNB
Exits and analyst limits
—Take profit+3% over average cost
—Stop loss−2% under average cost
—Bearish signalSell on a bearish call (configurable)
—Analyst pauseTrust < 0.45 after 10 scored calls
  • Paper by default

    Quotes and dry-runs are real and fills are booked at quoted amounts, but nothing is broadcast until live trading is explicitly switched on.

  • Portfolio cap and exits

    A cap on all positions combined, plus automatic take-profit and stop-loss sells, so a winning or losing position never just sits there.

  • Dry-run every transaction

    Approvals and swaps go through Binance's Transaction API first. If the simulation fails, the trade doesn't happen.

  • Swap routes only

    Off-chain RFQ orders can't be simulated, so Elitr refuses them, even when they quote better.

  • Keys stay local

    The agent signs on its own machine. No Binance API ever receives a private key.

  • Kill switch

    One operator click stops all new trades until the agent is restarted. Visitors get a read-only dashboard.

06Assets

Why Elitr trades NVDAB and TSLAB.

Tokenized stocks from bStocks, Ondo and xStocks are all deployed on BSC, but only bStocks have the pool depth to trade safely. We checked on-chain before choosing.

PlatformTokenBest DEX liquidity on BSCIn Elitr
bStocksNVDAB≈ $4.2MTraded
bStocksTSLAB≈ $2.0MTraded
OndoNVDAon / TSLAon< $10kTracked
xStocksTSLAx≈ $23Tracked

Snapshot of 4 Oct 2026 from DexScreener and on-chain pool balances. Liquidity changes constantly.

07Built on

Binance Web3 API end to end, plus BNB Chain and Claude.

b402 Payments

Agent-to-agent pay-per-signal

RWA Data API

Reference price and market status

Market API

Live on-chain token price

Trading API

Aggregated swap quotes and calldata

Transaction API

Simulation and broadcast

BNB Smart Chain

Mainnet settlement

Claude via 0G Compute

News scoring with citations

PancakeSwap v3

Swap flow and pool prices, read on-chain

ERC-8004

Agent identity and on-chain reputation

Docker + CI

One-command stack, tested on every push

Next.js dashboard

Live event stream from all three agents

See it running
08New here?

How to read the dashboard.

The dashboard is a live window into all three agents. Everything on it comes from real events: if an agent is offline or a cycle hasn't run, the panel says so.

01

Top bar

Connection status of all three agents, the PAPER / LIVE badge, the kill switch, and operator controls (read-only for visitors).

02

Agent-to-agent flow

Every b402 payment from the trader to each analyst, with the BscScan settlement link and today's spend.

03

Analyst market

Each analyst's price, hit rate, trust and weight, who was picked for each stock and why, and every scored call.

04

Portfolio & P&L

Net P&L after signal costs and gas, positions per stock with take-profit and stop-loss levels. Paper fills are always labelled.

05

Signal · Prices · Risk

Per stock: the latest signal and which analyst sold it, reference vs on-chain prices, and every risk rule from the last check.

06

Execution log

Each attempt as a pipeline: simulated → broadcast → filled, buy or sell, with the exit reason and PAPER or LIVE.

07

Timeline

Every event from all three agents, filterable, with raw JSON for anyone who wants to verify.

Badges at a glance

  • PAPERReal data and dry-runs; fills booked, nothing broadcast.
  • LIVEThe agent can sign and send trades.
  • PASSEvery rule passed in the last check.
  • BLOCKEDAt least one rule failed; the agent held.
  • PAUSEDAn analyst's trust fell below the line; the trader stopped paying it.

Run it yourself

Terminal
pnpm install
cp .env.example .env   # add your keys
pnpm build
pnpm dev               # agents :4001-4003, dashboard :3000

# or everything in containers
docker compose up

Needs a Binance Web3 API key with b402 enabled, a Claude key (0G Compute or Anthropic), and a fresh BSC wallet with a little USDT and BNB. Run the one-time approval script so swaps can be simulated. Starts in paper mode.

09FAQ

Questions people ask first.

Does Elitr trade real money?

Only when its operator switches it on. By default it runs in paper mode: every price, quote and dry-run is real, but nothing is broadcast. Live mode trades small amounts on BSC mainnet, capped by the risk limits.

What is paper mode?

The default. The agent does everything for real up to the last step: it buys real signals, fetches real prices and quotes, and simulates the exact swap with Binance's Transaction API. If the simulation passes, the fill is booked at the quoted amounts, but nothing is broadcast. The dashboard marks every paper fill and paper P&L as PAPER — it is never presented as real money.

Why pay your own analyst?

Because a paid signal comes with a track record. Every call is scored when its horizon ends, so each analyst builds a public hit rate and average return. The trader favours analysts that have been right, weights their confidence by trust, and stops paying one that keeps being wrong until its record recovers.

How does it choose between analysts?

Thompson sampling. Each analyst's record of right and wrong calls becomes a probability distribution; the trader draws once from each and buys from the highest draw. Good analysts win most draws, while newer ones still get a chance to prove themselves.

Why does it say “hold” so often?

Because holding is usually the right call. If the US market is closed, the signal is weak, or the token is trading above the real stock price, a rule fails and the agent explains which one.

What is b402?

Binance's payment facilitator for x402, a standard that revives HTTP's 402 “Payment Required” status. A server names its price, the client signs a stablecoin payment, and the facilitator verifies and settles it on BSC, with gas sponsored.

Why NVDAB and TSLAB, not Ondo or xStocks?

Liquidity. On BSC, only bStocks have real pool depth today. Ondo and xStocks tokens exist on BSC but their pools are too thin to trade safely, so Elitr tracks them without trading them.

Who holds the keys?

The Execution agent signs with its own dedicated hot wallet, locally. Binance's Trading and Transaction APIs never see a private key. Fund it with small amounts only.

What is ERC-8004?

A standard for on-chain agent identity and reputation. Each Elitr agent gets an ERC-8004 identity on BSC, and the trader posts every analyst's accuracy to the reputation registry, so any other agent can read an analyst's record before buying from it. Elitr's three agents are registered on BSC mainnet (#365554 news analyst, #365555 flow analyst, #365556 trader), and the trader has been posting ratings since 7 Oct 2026.

Can I check the agents myself?

Yes. Each analyst publishes its price, symbols and horizon at GET /info, and every agent serves its ERC-8004 registration file at /.well-known/agent-registration.json. Every event the agents emit is on the dashboard timeline with its raw JSON, and payments and trades link to BscScan.

Is this financial advice?

No. Elitr is an experimental hackathon project. Tokenized stocks carry issuer, liquidity and regulatory risk, and are not available to US persons or in several other regions.

Watch the agents work.

Analyst picks, payments, signals, risk decisions, fills and P&L, live as they happen.