Changelog
Release notes for Market Lab.
Version to be updated
Release in development. The version number and release date will be added before publishing.
Bulk Execution
- Added normal market and limit orders through BULK.
- Added long and short directions with size-based or notional-based order planning.
- Added GTC, IOC, and ALO time-in-force support for limit orders.
- Added leverage, reduce-only orders, cancellation, and complete position closing.
- Added native stop-loss, take-profit, and OCO on-fill protection.
- Added normalized commands for positions, open orders, and fills.
- Added dry-run trade plans that validate without signing, submitting, or starting the execution runtime.
- Added embedded BULK market-rule validation for symbol support, tick size, lot size, minimum notional, and maximum leverage.
- Added TOML execution configuration with CLI values taking precedence.
Market Lab Runtime
- Added the persistent
mlabdexecution runtime. - Moved agent-key access, signing, nonce sequencing, order submission, and cancellation into the daemon.
- Added automatic daemon startup for live execution and explicit status, event, and stop commands.
- Replaced timer-based order polling with BULK account WebSocket updates for orders, fills, positions, margin, liquidations, and ADL.
- Added reconnect backoff and one-shot REST order/fill recovery for disconnected intervals.
- Added account-stream, recovery, tracked-order, and active-script telemetry to daemon status.
- Added JSONL lifecycle events for submissions, cancellations, account updates, recovery, tracking, and order-status changes.
- Secured the local execution directory and Unix socket with owner-only permissions.
- Updated installation, release archives, and upgrades so the runtime is bundled automatically with Market Lab.
Bulk Market Data
- Added BULK as a native market-data provider alongside MMT.
- Added BULK candles, orderbooks, open interest, volume, volume delta, statistics, and funding support where the provider exposes them.
- Added the embedded BULK market catalog with deterministic symbol mapping and offline trading-rule lookup.
- Added public BULK health and source commands without an API credential requirement.
Bulk Scripting
- Added
--provider bulksupport toscript runandscript backtestwithout requiring--exchange. - Added provider-neutral script records for candles, orderbooks, volume delta, open interest, and volume.
- Added BULK-specific source validation and defaults instead of applying MMT-only parameters to BULK.
- Added live BULK script streams for candles, reconstructed orderbooks, trade-derived volume delta, open interest, and candle-derived volume.
- Added historical BULK candle and candle-derived volume loading for script backtests.
- Added provider, exchange, and symbol context to script hook input.
- Updated
examples/all-sources-live.jsto handle MMT bucketed VD and BULK trade-derived VD correctly. - Updated
examples/candle-summary.jsto expose total volume while returning directional volume only when the provider supplies it.
Script Execution
- Added
ctx.tradeandctx.cancelas the strategy execution contract instead of interpreting returned signals or intents. - Added explicit
--venue bulkarming; scripts deployed without a venue cannot execute. - Added stable local order references and per-job idempotency keys.
- Added market, limit, GTC, IOC, ALO, leverage, reduce-only, cancellation,
sl, andtprequest support. - Added detached immutable script jobs managed by
mlabd. - Added
script jobs,status,logs,stop, andrestartcommands. - Added the
onExecution(ctx, event)hook for journaled order, fill, position, and account lifecycle events. - Added acknowledged event cursors and replay of unacknowledged events after worker restarts.
Backtest Simulator
- Added simulation of
ctx.tradeandctx.cancelwithout signing, daemon startup, or venue submission. - Added immediate market fills and later-bar limit fills against the selected clock source.
- Added simulated pending and cancelled order tracking with stable script order IDs.
- Added per-request size or notional, leverage, stop-loss, and take-profit accounting.
- Added conservative OHLC protection handling: when one candle touches both triggers, the stop is applied first.
- Added order IDs and protection prices to closed-trade and open-position reports.