API reference
Plan experiment
POST/backtests/atop/plan
Validate a multi-window experiment plan without dispatching jobs. The body wraps a shared base_spec with named windows; each window is validated as its own run spec.
10 requests / minute per key (write tier). Returns the {success, message, data} envelope.
Authorizations
Authorizationstringheaderrequired
Bearer token - an ito_* key (from Settings) holding the backtests:read scope.
Body
namestring
Example: "rolling_eval"
base_specobject
Example: {"strategy_id":"wsc_crypto_updown_delta_hedged_roll","dataset_id":"clickhouse:ito_hot.platform_orderbook_l2...
windowsarray
Example: [{"name":"may_w1","role":"train","date_range":{"start":"2026-05-14T14:45:00Z","end":"2026-05-14T14:46:00Z"}...
Request
curl -X POST "https://itomarkets.com/api/v1/backtests/atop/plan" \ -H "Authorization: Bearer $ITO_API_KEY" \ -H "Content-Type: application/json" \ -d ' { "name": "rolling_eval", "base_spec": { "strategy_id": "wsc_crypto_updown_delta_hedged_roll", "dataset_id": "clickhouse:ito_hot.platform_orderbook_l2", "venues": [ "polymarket" ], "date_range": { "start": "2026-05-14T14:45:00Z", "end": "2026-05-14T14:46:00Z" }, "params": { "roll_trigger": "liquidity_spread_score", "size_mode": "liquidity_weighted", "liquidity_size_fraction": 0.1 }, "execution": { "fill_model": "l2_vwap", "latency_ms": 50, "max_book_age_ms": 1000, "partial_fills": true, "fee_bps": 0 }, "budgets": { "max_wall_clock_seconds": 1800, "max_rows": 10000000000, "max_cost_usd": 25 } }, "windows": [ { "name": "may_w1", "role": "train", "date_range": { "start": "2026-05-14T14:45:00Z", "end": "2026-05-14T14:46:00Z" } }, { "name": "may_w2", "role": "test", "date_range": { "start": "2026-05-14T14:46:00Z", "end": "2026-05-14T14:47:00Z" } } ] } 'ResponseJSON
{ "success": true, "message": "Success", "data": { "plan_version": "atop-experiment-plan-v1", "name": "rolling_eval", "plan_id": "3d7e5a1f9c2b8e4d6a0c5f3b7e9d1a8c2f4b6d0e8a3c5e7f9b1d4a6c8e0f2b53", "created_at": "2026-05-14T14:50:00+00:00", "runs": [ { "name": "may_w1", "role": "train", "status": "validated" }, { "name": "may_w2", "role": "test", "status": "validated" } ] }}