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 btc-chan-swing.runner.json
quantelse-local run --config btc-chan-swing.runner.json --offline
quantelse-local run --config btc-chan-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": "btc-chan-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": "btc-chan-swing",
"version": "0.2.0",
"kind": "trend",
"framework_id": "technical-indicators",
"framework_version": "0.1.0",
"strategy_plugin": "quantelse.strategy.trend",
"name": "BTC 缠论结构波段",
"symbol": "BTC/USDT",
"timeframe": "4h",
"risk_level": "medium",
"capital": 1000,
"signal_definition": {
"type": "builtin",
"strategy_kind": "trend"
},
"parameters": {
"composition": "{'schema_version': 1, 'combination_mode': 'max_conviction', 'signal_threshold': 0.05, 'quorum_ratio': 0.5, 'deadband': 0.08, 'children': [{'child_id': 'chan-structure-alpha', 'source_type': 'system', 'role': 'alpha', 'name': '缠论笔与中枢方向', 'summary': '基于包含处理、严格分型、有效笔和三笔重叠中枢输出方向。', 'catalog_slug': None, 'catalog_version': None, 'system_template_id': 'system-chan-stroke', 'kind': 'trend', 'signal_definition': None, 'symbol': 'BTC/USDT', 'timeframe': '4h', 'weight': 1.4, 'parameters': {'window': 120, 'min_stroke_pct': 0.015}, 'parameter_schema': [{'id': 'window', 'label': '结构窗口', 'value_type': 'integer', 'description': '参与结构识别的最近 K 线数。', 'default': 120, 'unit': None, 'minimum': 20.0, 'maximum': 1000.0, 'step': 1.0, 'display_scale': 1.0, 'options': []}, {'id': 'min_stroke_pct', 'label': '最小笔振幅', 'value_type': 'number', 'description': '过滤过小结构笔。', 'default': 0.015, 'unit': None, 'minimum': 0.0, 'maximum': 0.3, 'step': 0.001, 'display_scale': 1.0, 'options': []}], 'origin_slug': 'btc-chan-swing', 'origin_version': '0.2.0', 'system_default': False}, {'child_id': 'momentum-confirmation', 'source_type': 'system', 'role': 'confirmation', 'name': 'MACD + RSI 波段', 'summary': '用 MACD 动量方向并用 RSI 过滤过热区域。', 'catalog_slug': None, 'catalog_version': None, 'system_template_id': 'system-macd-rsi-swing', 'kind': 'trend', 'signal_definition': None, 'symbol': 'BTC/USDT', 'timeframe': '4h', 'weight': 1.0, 'parameters': {'fast_period': 12, 'slow_period': 26, 'signal_period': 9, 'rsi_period': 14, 'rsi_low': 30, 'rsi_high': 70}, 'parameter_schema': [{'id': 'fast_period', 'label': 'MACD 快周期', 'value_type': 'integer', 'description': 'MACD 快速 EMA 周期。', 'default': 12, 'unit': None, 'minimum': 2.0, 'maximum': 200.0, 'step': 1.0, 'display_scale': 1.0, 'options': []}, {'id': 'slow_period', 'label': 'MACD 慢周期', 'value_type': 'integer', 'description': 'MACD 慢速 EMA 周期。', 'default': 26, 'unit': None, 'minimum': 3.0, 'maximum': 500.0, 'step': 1.0, 'display_scale': 1.0, 'options': []}, {'id': 'signal_period', 'label': 'MACD 信号周期', 'value_type': 'integer', 'description': 'MACD 信号线周期。', 'default': 9, 'unit': None, 'minimum': 2.0, 'maximum': 100.0, 'step': 1.0, 'display_scale': 1.0, 'options': []}, {'id': 'rsi_period', 'label': 'RSI 周期', 'value_type': 'integer', 'description': '动量过热过滤周期。', 'default': 14, 'unit': None, 'minimum': 2.0, 'maximum': 200.0, 'step': 1.0, 'display_scale': 1.0, 'options': []}, {'id': 'rsi_low', 'label': 'RSI 下限', 'value_type': 'number', 'description': '空头信号的过冷保护。', 'default': 30, 'unit': None, 'minimum': 1.0, 'maximum': 49.0, 'step': 1.0, 'display_scale': 1.0, 'options': []}, {'id': 'rsi_high', 'label': 'RSI 上限', 'value_type': 'number', 'description': '多头信号的过热保护。', 'default': 70, 'unit': None, 'minimum': 51.0, 'maximum': 99.0, 'step': 1.0, 'display_scale': 1.0, 'options': []}], 'origin_slug': 'btc-chan-swing', 'origin_version': '0.2.0', 'system_default': False}, {'child_id': 'volatility-veto', 'source_type': 'system', 'role': 'veto', 'name': '异常波动否决', 'summary': 'ATR 占价格比例过高时输出否决,令母策略暂时归零。', 'catalog_slug': None, 'catalog_version': None, 'system_template_id': 'system-volatility-veto', 'kind': 'trend', 'signal_definition': None, 'symbol': 'BTC/USDT', 'timeframe': '1h', 'weight': 1.0, 'parameters': {'atr_period': 14, 'max_atr_pct': 0.06}, 'parameter_schema': [{'id': 'atr_period', 'label': 'ATR 周期', 'value_type': 'integer', 'description': '波动率观察窗口。', 'default': 14, 'unit': None, 'minimum': 2.0, 'maximum': 200.0, 'step': 1.0, 'display_scale': 1.0, 'options': []}, {'id': 'max_atr_pct', 'label': '最大 ATR 比例', 'value_type': 'number', 'description': '超过此比例时否决交易。', 'default': 0.06, 'unit': None, 'minimum': 0.001, 'maximum': 0.5, 'step': 0.001, 'display_scale': 1.0, 'options': []}], 'origin_slug': 'btc-chan-swing', 'origin_version': '0.2.0', 'system_default': False}]}",
"fast_period": 12,
"slow_period": 26
},
"enabled": true,
"execution_mode": "paper"
}
}
]
}