LOCAL RUNTIME · PAPER
Run it on your device and through your AI harness
No signup. Configuration and state stay local; credentials only enter the operating-system keyring.
- 1Download the strategy config
It pins the strategy ID, framework version, and defaults and always starts in Paper.
- 2Choose headless or the local UI
The runtime continues in the background after the page is closed, or can run without a web UI at all.
- 3Give AI redacted context
Codex, OpenClaw, and other harnesses use controlled commands to inspect status and runtime events without secret material.
terminal
quantelse-local validate --config uni-bollinger-swing.runner.json
quantelse-local run --config uni-bollinger-swing.runner.json --offline
quantelse-local run --config uni-bollinger-swing.runner.json --ui --offlineView generated JSON
{
"config_version": 4,
"workspace_mode": "managed",
"interval_seconds": 60,
"client": {
"bootstrap_enabled": false,
"bootstrap_url": "https://quantelse.trade/v1/client/bootstrap",
"telemetry": "off",
"heartbeat_seconds": 21600
},
"bots": [
{
"local_id": "uni-bollinger-swing-paper-v1",
"owner_id": "local",
"exchange": "paper",
"signal_source": "paper",
"signal_connector": "quantelse.connector.paper",
"execution_connector": "quantelse.connector.paper",
"start_immediately": true,
"strategy": {
"id": "uni-bollinger-swing",
"version": "0.3.0",
"kind": "mean_reversion",
"framework_id": "technical-indicators",
"framework_version": "0.1.0",
"strategy_plugin": "quantelse.strategy.mean-reversion",
"name": "UNI 布林摆动",
"symbol": "UNI/USDT",
"timeframe": "1h",
"risk_level": "medium",
"capital": 1000,
"signal_definition": {
"type": "builtin",
"strategy_kind": "mean_reversion"
},
"parameters": {
"rsi_period": 14,
"rsi_low": 30,
"rsi_high": 70,
"signal_connector": "quantelse.connector.hyperliquid-public",
"default_execution_route": {
"mode": "paper",
"exchange": "hyperliquid",
"market": "linear_perpetual",
"connector_id": "quantelse.connector.paper",
"account_ref": null,
"settlement_asset": "USDC",
"margin_mode": "isolated",
"position_mode": "one_way",
"leverage": 1
},
"default_position_policy": {
"allow_short": true,
"reduce_only_on_exit": true
},
"composition": {
"schema_version": 1,
"combination_mode": "weighted_average",
"signal_threshold": 0.05,
"quorum_ratio": 0.5,
"deadband": 0.05,
"children": [
{
"child_id": "bollinger-swing-1",
"source_type": "system",
"role": "alpha",
"name": "布林带摆动回归",
"summary": "价格离开布林带并进入 RSI 极端区域时观察反向摆动。",
"catalog_slug": null,
"catalog_version": null,
"system_template_id": "system-bollinger-swing",
"kind": "mean_reversion",
"signal_definition": null,
"symbol": "UNI/USDT",
"timeframe": "1h",
"weight": 1.0,
"parameters": {
"period": 30,
"width": 2.1,
"rsi_period": 14,
"rsi_low": 30,
"rsi_high": 70
},
"parameter_schema": [
{
"id": "period",
"label": "布林周期",
"description": "价格中枢与波动窗口。",
"value_type": "integer",
"default": 20,
"minimum": 5.0,
"maximum": 500.0,
"step": 1.0,
"options": []
},
{
"id": "width",
"label": "标准差倍数",
"description": "布林带宽度。",
"value_type": "number",
"default": 2,
"minimum": 0.5,
"maximum": 5.0,
"step": 0.1,
"options": []
},
{
"id": "rsi_period",
"label": "RSI 周期",
"description": "极端区域确认周期。",
"value_type": "integer",
"default": 14,
"minimum": 2.0,
"maximum": 200.0,
"step": 1.0,
"options": []
},
{
"id": "rsi_low",
"label": "RSI 下限",
"description": "低于此值确认超卖。",
"value_type": "number",
"default": 30,
"minimum": 1.0,
"maximum": 49.0,
"step": 1.0,
"options": []
},
{
"id": "rsi_high",
"label": "RSI 上限",
"description": "高于此值确认超买。",
"value_type": "number",
"default": 70,
"minimum": 51.0,
"maximum": 99.0,
"step": 1.0,
"options": []
}
],
"origin_slug": "uni-bollinger-swing",
"origin_version": "0.3.0",
"system_default": false
},
{
"child_id": "volatility-veto-2",
"source_type": "system",
"role": "veto",
"name": "异常波动否决",
"summary": "ATR 占价格比例过高时输出否决,令母策略暂时归零。",
"catalog_slug": null,
"catalog_version": null,
"system_template_id": "system-volatility-veto",
"kind": "trend",
"signal_definition": null,
"symbol": "UNI/USDT",
"timeframe": "1h",
"weight": 1.0,
"parameters": {
"atr_period": 14,
"max_atr_pct": 0.08
},
"parameter_schema": [
{
"id": "atr_period",
"label": "ATR 周期",
"description": "波动率观察窗口。",
"value_type": "integer",
"default": 14,
"minimum": 2.0,
"maximum": 200.0,
"step": 1.0,
"options": []
},
{
"id": "max_atr_pct",
"label": "最大 ATR 比例",
"description": "超过此比例时否决交易。",
"value_type": "number",
"default": 0.06,
"minimum": 0.001,
"maximum": 0.5,
"step": 0.001,
"options": []
}
],
"origin_slug": "uni-bollinger-swing",
"origin_version": "0.3.0",
"system_default": false
}
]
}
},
"enabled": true,
"execution_mode": "paper"
}
}
]
}