Bot Lab/Examples

Examples & reference fleet

Beginner scripts first, then signal reads, then full bot-lab strategies. The 23-bot fleet is open source — not shipped in the app.

Reference bots
23
Open source
MIT
API routes
19
Zero risk
Paper

Learning path

Tutorial scripts

01

Hello trade

Beginner~2 min

Pick the top active market and place one YES limit order. The smallest program that proves your key works.

Run

shell
1$ export MARKETRY_URL=http://localhost:30002$ export MARKETRY_API_KEY=mkt_live_your_key3 4$ npx tsx packages/bot-lab/examples/01-hello-trade/index.ts

Source

path
packages/bot-lab/examples/01-hello-trade/index.ts

Core logic

typescript
1import { createClientFromEnv } from "@marketry/sdk";2 3const client = createClientFromEnv();4 5const [market] = await client.markets.list({ status: "active", limit: 1 });6if (!market) throw new Error("No active markets");7 8const price = Math.round(Math.min(0.65, market.probability + 0.02) * 100) / 100;9 10const order = await client.orders.create({11  marketId: market.id,12  outcome: "yes",13  side: "buy",14  price,15  quantity: 5,16});17 18console.log("Placed on:", market.title);19console.log(order);
Verify

Check Portfolio → your sub-account shows the open order and updated cash.

02

Read portfolio

Beginner~1 min

Fetch cash, mark-to-market positions, open orders, and settlement history as typed JSON.

Run

shell
$ MARKETRY_API_KEY=mkt_live_… npx tsx packages/bot-lab/examples/02-read-portfolio/index.ts

Source

path
packages/bot-lab/examples/02-read-portfolio/index.ts

Core logic

typescript
1import { createClientFromEnv } from "@marketry/sdk";2 3const client = createClientFromEnv();4const portfolio = await client.portfolio.get();5 6console.log(portfolio.summary.displayName, "$", portfolio.summary.portfolioValue.toFixed(2));7console.log("Positions:", portfolio.positions.length);8console.log("Open orders:", portfolio.orders.length);
Verify

summary.portfolioValue should match what you see in the Portfolio UI.

03

Read signals

Intermediate~3 min

Pull the enriched signal feed and inspect momentum inputs — no bot-lab engine required.

Run

shell
$ MARKETRY_API_KEY=mkt_live_… npx tsx packages/bot-lab/examples/04-read-signals/index.ts

Source

path
packages/bot-lab/examples/04-read-signals/index.ts

Core logic

typescript
1import { createClientFromEnv } from "@marketry/sdk";2 3const client = createClientFromEnv();4const signals = await client.markets.signals();5 6const top = [...signals]7  .sort((a, b) => Math.abs(b.snapshotDelta) - Math.abs(a.snapshotDelta))8  .slice(0, 5);9 10for (const s of top) {11  console.log(s.title.slice(0, 40), "Δ", (s.snapshotDelta * 100).toFixed(1) + "¢");12}
Verify

snapshotDelta values change as markets move — compare with /markets detail pages.

04

Momentum bot (one cycle)

Advanced~5 min

Uses @marketry/bot-lab evaluateStrategy — same logic as Atlas. One cycle, then exit.

Run

shell
$ MARKETRY_API_KEY=mkt_live_… npx tsx packages/bot-lab/examples/03-momentum-bot/index.ts

Source

path
packages/bot-lab/examples/03-momentum-bot/index.ts
Verify

Portfolio shows new trades; leaderboard row updates for your sub-account.

Demo

Reference fleet

05

Reference fleet (23 bots)

Advanced~10 min

Atlas, Nova, Cipher… the full open-source demo fleet. Each bot is a named sub-account with its own API key.

Run

shell
1# Bootstrap founder + 23 sub-accounts2$ npx tsx packages/bot-lab/scripts/setup-bots.ts --create-founder "You" you@example.com3 4$ npm run demo:trade   # continuous paper trading

Source

path
packages/bot-lab/scripts/setup-bots.ts
Verify

Founder Portfolio dropdown shows fleet; .demo-bots.json holds keys (gitignored).

OSS boundary

Strategy code lives in packages/bot-lab (MIT). The Marketry app bundle contains zero strategy logic — only the signals API on the server.

Gallery

All reference strategies

Atlas

Core
momentum

Snapshot velocity

Trades YES when probability is rising across snapshots; NO when falling.

Signal inputs

snapshotDeltaprobability

strategies/momentum.ts

Nova

Core
graph

Graph neighbor consensus

Fades local price vs graph neighbor consensus.

Signal inputs

neighborSignalgraphCentrality

strategies/graph-alpha.ts

Cipher

Core
book

Order-book imbalance

Quotes when book imbalance favors one side.

Signal inputs

bestYesBidspreadopenInterest

strategies/book-imbalance.ts

Orbit

Core
horizon

Event-horizon urgency

Increases urgency as resolution approaches.

Signal inputs

daysToEndprobability

strategies/horizon.ts

Forge

Core
sector

Sector rotation

Rotates into sectors trading below sector average.

Signal inputs

sectorAvgProbprobability

strategies/sector-rotation.ts

Pulse

Core
flow

Volume acceleration

Chases volume acceleration.

Signal inputs

volumeDeltavolume

strategies/flow-chase.ts

Axiom

Core
impact

Impact + category tilt

Overweights high-impact names vs sector.

Signal inputs

companyImpactsectorAvgProb

strategies/impact-tilt.ts

Blitz

High risk
blitz

Aggressive momentum

Aggressive momentum sizing.

Signal inputs

snapshotDelta

strategies/high-risk.ts

Razor

High risk
razor

Concentrated conviction

Concentrated conviction trades.

Signal inputs

probabilityspread

strategies/high-risk.ts

Bidwell

Market maker
mm_tight

Tight two-sided quotes

Tight two-sided quotes.

Signal inputs

spreadbestYesBid

strategies/market-maker.ts

Spreadex

Market maker
mm_wide

Wide liquidity bands

Wide bands for illiquid names.

Signal inputs

spread

strategies/market-maker.ts

Depth

Market maker
mm_deep

Deep size both sides

Deep size both sides.

Signal inputs

openInterest

strategies/market-maker.ts

Scatter

Market maker
mm_scatter

Multi-level ladder quotes

Multi-level ladder.

Signal inputs

spread

strategies/market-maker.ts

Rotator

Market maker
mm_rotate

Full-market rotation

Rotates quotes across markets.

Signal inputs

volume

strategies/market-maker.ts

Titan

Whale
whale_titan

Block size into high-volume markets

Block size into liquid markets.

Signal inputs

volumecompanyImpact

strategies/whale.ts

Vault

Whale
whale_vault

Patient passive blocks

Patient passive blocks.

Signal inputs

daysToEnd

strategies/whale.ts

Sweep

Whale
whale_sweep

Sweep wide spreads

Sweep wide spreads.

Signal inputs

spread

strategies/whale.ts

Anchor

Whale
whale_anchor

Anchor key probability levels

Anchor key levels.

Signal inputs

probabilityoracleScore

strategies/whale.ts

Cluster

Marketry-native
mkt_cluster

Dependency-cluster cascade

Cluster cascade trades.

Signal inputs

clusterRiskScoreclusterIds

strategies/marketry-alpha.ts

Oracle

Marketry-native
mkt_oracle

Settlement-source scoring

Settlement-source scoring.

Signal inputs

oracleScoresettlementSource

strategies/marketry-alpha.ts

Driver

Marketry-native
mkt_driver

Related-driver alignment

Driver alignment.

Signal inputs

relatedDrivers

strategies/marketry-alpha.ts

Lattice

Marketry-native
mkt_lattice

Cross-market lattice arb

Cross-market lattice.

Signal inputs

neighborSignalclusterIds

strategies/marketry-alpha.ts

Nexus

Marketry-native
mkt_nexus

Graph edge centrality

Edge centrality alpha.

Signal inputs

graphCentrality

strategies/marketry-alpha.ts