Work an order
01Execution algorithms
Volume-paced execution.
Volume-pacedMaker-firstParticipation cap
$ mlab strategy run vwap BTC \
--venue bulkf --side buy --margin 100 --duration 3600 \
--volume-sources binancef@mmt,okxf@mmt,bulkf --dry-runResearch, backtest, and execute across centralized and onchain markets from one local runtime.
$ curl -fsSL https://marketlab.sh/install.sh | bashmlab bot run grid BTC \--venue bulkf --margin 100 --leverage 10 \--duration 3600 --levels 5 --step-bps 6 \--stop-loss-pct 565,891.40.0015165,851.90.0015165,812.30.0015165,772.70.0015165,733.10.0015165,970.60.0015166,010.10.0015166,049.70.0015166,089.30.0015166,128.90.00151SELL L1 @ 65,931.0Copy the prompt. Your coding agent reads the docs, installs Market Lab, and verifies the runtime.
# Set Up Market Lab
Install or upgrade Market Lab on this machine and verify the setup.
Official documentation:
https://docs.marketlab.sh/
Read the Installation and Daemon pages before acting. Use the docs and the installed CLI's `--help` output as the source of truth.
1. Inspect the operating system, architecture, `PATH`, and any existing `mlab` installation.
2. Ask whether `mlabd` should use the **Native** or **Docker** backend. Do not choose or change the backend silently.
3. Follow the documented install or upgrade flow.
4. Verify:
```bash
mlab --version
mlab daemon backend
mlab daemon status
```
Ask before configuring market data, authentication, execution, SSH transport, or Python.
Never ask the user to paste a private key or API key into chat. Keep authentication inside Market Lab's hidden terminal prompts. Never place a live order during setup; use `--dry-run` when a check requires an execution plan.
Finish with the installed version, selected backend, daemon status, any optional setup completed, and one safe next command.
Run a native algorithm, deploy a market maker, or bring your own code.
Volume-paced execution.
$ mlab strategy run vwap BTC \
--venue bulkf --side buy --margin 100 --duration 3600 \
--volume-sources binancef@mmt,okxf@mmt,bulkf --dry-runFixed paired grid.
$ mlab bot run grid BTC \
--venue bulkf --margin 100 --leverage 10 \
--duration 3600 --levels 5 --step-bps 6 \
--stop-loss-pct 5 --dry-run$ mlab notebook$ mlab script backtest strategy.py \
--from 2026-08-01 --to 2026-08-20$ mlab bot status <JOB_ID>
mlab bot logs <JOB_ID> --follow
mlab bot stop <JOB_ID>One local runtime connects market data, strategy logic, and execution.
Binance spot order books and trades.
candlestradesorderbookvdvolumes--venue bulkfTestnet
hyperliquid / hyperliquidfDirect
hyperlink / hyperlinkfMainnet
Search the bundled catalog by provider, venue, or symbol.
Dry-run first. Then deploy, observe, and stop.
01 / 04$ mlab bot run grid BTC \
--venue bulkf --margin 100 --leverage 10 \
--duration 3600 --levels 5 --step-bps 6 \
--stop-loss-pct 5 --dry-run-levels per side 5-fixed step 6 bps-initial cells 10 equalokorders submitted 0Use your Python environment, or run lightweight JavaScript in QuickJS.
01 from statistics import fmean
02 SOURCE = "btc@candles@hyperliquidf:timeframe=60"
03 script = {
04 "name": "mean-cross",
05 "version": "2",
06 "lookback": 30,
07 }
08 def on_data(ctx, history):
09 rows = history.source(SOURCE)
10 if len(rows) < 20: return
11 fast = fmean(row["c"] for row in rows[-5:])
12 slow = fmean(row["c"] for row in rows[-20:])
13 if fast > slow:
14 ctx.trade({"exchange": "hyperliquidf", "symbol": "BTC", ...})