AI Trading · Paper Account · Claude Code + Alpaca MCP

The market, checked
for you. Every hour.

An AI trading agent that reads the chart, calls the next move, and keeps a running score — on paper, with fake money. Built from scratch with Claude Code and the official Alpaca MCP. No coding, no watching the tape.

◆ PAPER TRADING · fake money ◆ 3 strategies, 1 honest score ◆ Live BTC data · Binance
Live · BTC / USDT

The tape, right now.

Real 1-hour candles from the Binance public feed, rendered live in your browser. This is the data the agent reads before it makes a call.

$—
— 24h loading…
Source: Binance public API · 1h candles · updates live last 7 days
Next Hour · The Bot's Call

It decides for you.

Three simple strategies each cast a vote on whether the next hour closes higher or lower. The agent weighs them and gives you one call — so you never have to sit in front of the screen.

Next hour · BTC/USDT
…
reading the latest candle…
— of 3 signals agree
Momentum
follows the last candle's direction
— 47.7%
Mean-reversion
fades the last candle — the strongest signal
— 52.4%
SMA 12 / 26
moving-average crossover trend
— 49.9%
Track Record · 90-Day Backtest

The honest score.

Every strategy was run over 6,000 real 1-hour BTC candles and scored on one thing: did the call for the next hour land right? Here is the score, unrounded and unflattering — because a 50/50 market scores 50%.

Momentum
47.7%
2,858 / 5,998 calls right
Mean-reversion · best
52.4%
3,140 / 5,998 calls right
SMA 12 / 26
49.9%
2,981 / 5,974 calls right

Directional accuracy on 6,000 real BTCUSDT 1-hour candles, 2026-02-24 → 2026-11-01 UTC (Binance). This is a historical backtest, not live forward predictions. It measures direction only — it does not count how much a move was, and it excludes fees, slippage, and position sizing. Nothing here is financial advice.

From Scratch · Step by Step

How it's built.

A simple moving-average crossover, wrapped in hard guardrails the agent can't talk its way out of. The strategy is the easy part — the rules are what keep it honest.

claude · alpaca-mcp-server
# the agent's guardrails — enforced by code, not by the LLM
STRATEGY  "sma_12_26_crossover"
MARKET    "BTCUSDT"  // paper

MAX_POSITION   10%  // of account equity
STOP_LOSS     1% – 15%  // mandatory on every entry
MAX_ORDERS_DAY 3      // it can't overtrade
SHORTS          off     // long-only, keep it simple

# every order passes the rule engine:
rule_engine.check(order) // ALLOW or BLOCK
"Building it is simple."

The agent checks the market for you, every hour, and only trades when the setup is clean and the guardrails say go. If a rule says BLOCK, the order never leaves the agent.

10%
max position size
1–15%
mandatory stop loss
3
orders per day, max
Long-only
no shorts, no leverage