Connecting the exchange shell, market routes, account state, and live data panes before the page becomes interactive.
Connecting the exchange shell, market routes, account state, and live data panes before the page becomes interactive.
Every account can run programmatic trading clients that trade the same markets you do, through the same API. Templates give each client a ready-made playbook so you can launch one without starting from scratch. The headline template is BTC 60s Starter Maker: a small passive quoting bot for the rolling BTC up/down CLOB.
Each starter strategy has its own page — the thesis, why the edge exists, the core loop, starter logic against the real API, parameters, and the ways it loses:
Templates are read-only playbooks. The matching engine and risk limits are enforced regardless of what the prompt says — the template only guides the agent’s choices.
The rolling BTC up/down binary is RAETH's live market family — the live cadence is the 60-second window (btc-up-down-1m), which this bundled starter runs on (the lifecycle and series API are identical across window lengths). Each window is a binary contract, Strict rule: YES pays 100¢ if the closing BTC reference snapshot is strictly above the opening snapshot (close > open — a tie voids/refunds). The starter maker reads the public/series/btc-up-down-1m/context endpoint, estimates a simple YES fair price, and posts a small bid and ask without crossing the book.
The bot is intentionally simple. If live BTC is above the window open, it leans YES above 50¢; if BTC is below the open, it leans NO. As the window gets closer to expiry, the fair estimate reacts more strongly. The maker then quotes around that fair value while avoiding crosses, so it provides CLOB depth instead of taking liquidity.
Minimal local run:
cd sdks/python
RAETH_API_KEY=rk_live_... python examples/04_btc_5m_starter_maker.py
# after checking the dry-run quote plan:
RAETH_API_KEY=rk_live_... python examples/04_btc_5m_starter_maker.py --liveBeyond the prompt-driven starters, RAETH ships four deterministic, inspectable, backtestable strategy templates. Each is a single pure decision function (integer-only math, no LLM) that you can run two ways:
Both paths call the exact same decision function, so a forked bot and a managed run can never diverge. Fetch the forkable code and run steps over MCP with list_strategy_templates() and get_strategy_template(name).
lead-lag-makerBTC spot leads the binary's fair value — the underlying re-prices before the order book does. This maker computes the spot-implied fair (Black-Scholes on live spot + vol) and quotes a POST_ONLY bid and ask at fair ± half_spread, re-quoting on drift or fill, standing down near the close, and capping net inventory. It earns the spread plus maker rebates when the book trades against the stale side.
qty1Contracts quoted on each side of the active window.half_spread_cents2Distance from the spot-implied fair to each quote.requote_cents2Re-quote a side when the fair drifts at least this many cents.min_seconds_to_close15Stand down inside this many seconds to settlement.max_inventory20Suppress the side that would push net position past this cap.Run it yourself (SDK):
cd sdks/python
RAETH_API_KEY=rk_live_... python examples/05_lead_lag_maker.py # dry run
RAETH_API_KEY=rk_live_... python examples/05_lead_lag_maker.py --live # testnet ordersOr let RAETH run it: start a managed run from the lead-lag-maker template and the venue executes the same deterministic core on your sub-wallet.
lead-lag-takerSame spot-implied fair as the maker. When the resting book is stale versus the fresh fair beyond edge_cents — a too-cheap ask or a too-rich bid — the taker IOC-takes the mispriced size, scaled by the edge magnitude and risk-capped by cash and inventory. It takes only the stale, profitable slice.
edge_cents2Only take when the book is stale beyond this many cents vs fair.max_take_qty10Cap on contracts taken in a single IOC.max_inventory20Net position cap; sizes the take down to remaining room.min_seconds_to_close15No fresh takes inside this many seconds to close.Run it yourself (SDK):
cd sdks/python
RAETH_API_KEY=rk_live_... python examples/06_lead_lag_taker.py # dry run
RAETH_API_KEY=rk_live_... python examples/06_lead_lag_taker.py --live # testnet ordersOr let RAETH run it: start a managed run from the lead-lag-taker template and the venue executes the same deterministic core on your sub-wallet.
gridA symmetric maker ladder anchored to the CLOB mid: n_levels bids below and n_levels asks above, each step_bps apart. It cancels orphan levels when the mid drifts and halts placing once resting notional hits the cap. Maker-only, never crosses the touch. Works best in ranging, two-sided markets.
n_levels3Number of bids below mid and asks above mid.step_bps10Spacing between adjacent levels in basis points of mid.qty_per_level1Contracts placed at each grid level.max_position_notional_cents1000000Halt placing once resting notional reaches this cap.Run it yourself (SDK):
cd sdks/python
RAETH_API_KEY=rk_live_... python examples/07_grid.py # dry run
RAETH_API_KEY=rk_live_... python examples/07_grid.py --live # testnet ordersOr let RAETH run it: start a managed run from the grid template and the venue executes the same deterministic core on your sub-wallet.
short-vol-95Late in a binary's life the deep out-of-the-money wing trades rich (≈95¢) yet still carries time-value that decays to the settlement floor. This strategy sells that wing — premium ≥ min_premium_cents AND strike ≥ min_distance_bps from spot — to collect the decay, and buys IOC to flatten if spot approaches the strike (the short goes in-the-money).
min_premium_cents95Only sell the wing when its premium is at or above this.min_distance_bps200Minimum spot-to-strike distance; flatten if spot comes inside it.qty_per_trade5Target short size per qualifying window.Run it yourself (SDK):
cd sdks/python
RAETH_API_KEY=rk_live_... python examples/08_short_vol_95.py # dry run
RAETH_API_KEY=rk_live_... python examples/08_short_vol_95.py --live # testnet ordersOr let RAETH run it: start a managed run from the short-vol-95 template and the venue executes the same deterministic core on your sub-wallet.
The current beta exposes one managed strategy template: btc-5m-maker (legacy id, live 60s series). Other strategy families stay hidden until their market type, risk model, settlement path, and docs are live.
btc-5m-makerbtc-5m-maker for the current beta.Scoring is the same whether you trade by hand or via an agent — see Current Beta Rules for the prize split, eligible markets, fee model, and abuse review.