Files
claude_dev 96b1924fd5 feat: 实盘模拟(live) + 组合回测MVP(portfolio)
[live] 实盘模拟 vnpy+miniQMT 直连(supervisor 轮询, 前后端):
- sanguo_live: LiveTradingEngine + AShareCtaTemplate(定寸/禁做空) + runner_supervisor(DB驱动) + persistence(4表WAL)
- sanguo_api/routes_live: 9路由(create/start/stop/positions/trades/account/status)
- frontend live: New/List/Monitor + api/live.ts; config/live.yaml

[portfolio] 组合回测 MVP(BulletTrade, 链路代码完成待验证):
- runner_backtest 加 JSON 入口(--json, BacktestEngine 顶层 import)
- sanguo_api/routes_portfolio: POST /portfolio/backtest SSH 触发 VPS 跑
- frontend PortfolioBacktest.vue + api/portfolio.ts: 表单+结果+净值曲线
- 路由/菜单注册(/backtest/portfolio 组合回测)
- 已知: MVP 链路未端到端验证, agent 改至中途被停; 待 Mac 起服务联调
2026-07-18 20:04:16 +08:00

35 lines
1.0 KiB
YAML

# 实盘模拟交易配置
# 用法:
# python -m sanguo_live
# SANGUO_QMT_ACCOUNT=66639661 python -m sanguo_live
#
# env SANGUO_QMT_ACCOUNT / SANGUO_QMT_PATH 优先于此文件。
# miniQMT 交易账号(可用 env SANGUO_QMT_ACCOUNT 覆盖)
account: "66639661"
# userdata_mini 路径;留空则由 vnpy_qmt/md.py 自动扫描 C:\
# (避免中文路径字面量编码问题,推荐留空或用 env SANGUO_QMT_PATH)
mini_path: ""
# 策略实例名(唯一,用于 CTA 引擎路由)
strategy_name: "dm_15min_600000"
# 策略类名(必须在 sanguo_live.runner._STRATEGY_REGISTRY 注册)
strategy_class: "AShareDoubleMaStrategy"
# 标的 vt_symbol(SYMBOL.EXCHANGE)。600000.SSE = 浦发银行
vt_symbol: "600000.SSE"
# 各阶段等待秒数
connect_wait_sec: 10
init_wait_sec: 60
# 策略参数(透传给 CtaTemplate.update_setting)
setting:
fast_window: 10
slow_window: 20
window: 15 # BarGenerator 分钟窗口(A 股 15min)
size: 100 # 1 手 = 100 股
forbid_short: true # A 股不可做空 → short() 拦截