Paper trading walkthrough

Paper trading on GEX Lab lets you (or an AI agent acting for you) open and close positions on real Deribit instruments with simulated balances. Fills use live mid prices, settlement runs on actual expiries, and perp funding accrues every 10 minutes. The point isn't to play with fake money — it's to plug live trading context into Claude (or any MCP client) and let it act on positioning data without the hard parts of real custody.

Starting an account

Sign in at gex.junk.place with Google. From /portfolio, click "Create paper account". A fresh account opens with 1 BTC and 50,000 USDC. ETH starts at zero — swap into it from the Overview tab if you want to trade ETH contracts.

You can have multiple accounts (one default, others as named scenarios). Reset or delete an account from the Overview menu any time — closed positions and history wipe with it.

Connecting Claude

From Claude Code, mcp-inspector, or any CLI MCP client:

claude mcp add gex --transport http https://gex.junk.place/mcp

In Claude Desktop, go to Settings → Connectors → Add connector → paste https://gex.junk.place/mcp. OAuth opens in a browser; sign in with the same Google account. After consent, the MCP server is wired and Claude has 30+ tools — including portfolio_open_position, portfolio_close_position, portfolio_simulate, portfolio_swap, plus all the market-data tools.

A walkthrough

Ask Claude something like:

"Find unusual call buying on BTC in the front-month, then fade the heaviest strike with a 0.5-contract short, with margin no more than 0.3 BTC."

What happens under the hood:

  1. Claude calls find_unusual_activity(currency: "BTC") and gets back the strikes with elevated call-buy volume.
  2. It picks the heaviest one (let's say BTC-110000-C-WEEKLY).
  3. It calls portfolio_open_position(side: "short", instrument: "BTC-110000-C-WEEKLY", qty: 0.5). The server quotes a fill price off the live Deribit mark, reserves the required margin, and returns the filled position.
  4. You see the new row instantly at /portfolio → Overview tab.

If Claude opens something you didn't like, ask it to close: it calls portfolio_close_position and the realized P&L lands in the History tab.

Reading /portfolio

Three tabs:

  • Overview — current balances and reserved margin, aggregated greeks per book (BTC and ETH), and every open position with mark price, unrealized P&L, and (for perps) cumulative funding.
  • Scenarios — three sliders (BTC spot ±50%, days forward, IV shock ±50%). Plots the payoff curve under the active scenario versus baseline, and breaks down P&L per position. The "Slider impact" panel isolates the time + IV contribution from the spot contribution.
  • History — equity curve over 30 days, every transaction (fills, settlements, swaps, funding), and closed trades with held duration and cumulative funding paid or received.

What runs automatically

  • Settlement on every options expiry: in-the-money positions cash in, the rest go to zero.
  • Funding on every perp position: accrues every 10 minutes using the same rate Deribit publishes. You'll see it land as a stream of small transactions in the History tab.
  • Mark prices refresh from Deribit on the 5-minute cron (same as the dashboard). Unrealized P&L recomputes off those marks live.

Caveats

  • Fills are at mid, not bid/ask — paper accounts don't pay the spread.
  • No slippage modeling, no order book depth. A 100-contract paper position is identical to a 1-contract one in terms of fill price.
  • The Spec is single-user — each Google account gets its own account namespace. No leaderboards, no shared positions.

Connecting your agent

This product has no "Open position" button — paper trading is driven entirely by your AI agent through MCP. Here's how to wire it up.

1. Pick your client

GEX Lab works with any MCP client that supports HTTP transport: Claude Code (CLI), Claude Desktop, Codex, Cursor, mcp-inspector.

2. Add the server

Claude Code / CLI:

claude mcp add gex --transport http https://gex.junk.place/mcp

Claude Desktop:

Settings → Connectors → Add connector → paste https://gex.junk.place/mcp as the URL.

3. Authenticate

OAuth opens in your browser. Sign in with the same Google account you used on this site. The agent now has access to your paper portfolio.

4. Try it

Ask your agent something concrete:

Open a delta-neutral straddle on ETH if IV percentile is below 30, otherwise tell me why you didn't.

The agent will call read tools (get_snapshot, get_market_regime) and, if the condition holds, portfolio_open_position twice. You'll see the positions appear in your /portfolio Overview as they happen.