Commit Graph

8 Commits

Author SHA1 Message Date
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
claude_dev a8105264cd fix(layout): 顶栏被挤成窄条、用户区跑到中央不在右上角
根因: Layout 内层 <el-container> 用原生 <header>(非 <el-header>),
element-plus 不会自动转纵向 → flex-direction 保持 row, header 与 el-main
横向并排, header 被挤成 308px 窄条(应满宽 ~992px), 用户区(头像/用户名/登出)
随 justify-content 落到屏幕中央, 不在右上角。

修复:
- 内层 <el-container direction="vertical"> 强制纵向 → header 回到顶部满宽栏,
  el-main 在下; 用户区回到右上角
- 顶栏静态口号 "投研·回测·模拟 控制台" 换成动态面包屑(分组/页名, 按路由推断)
2026-07-11 22:53:04 +08:00
claude_dev 41a788c431 feat(frontend): P2全平台聚宽级复刻—模拟盘/因子/回测表单页重做+模拟盘列表页
模拟盘模块:
- 新增模拟盘列表页(List.vue):统计行+富表格(名称/模式/频率/收益/最新净值/状态/操作)+搜索筛选
- 后端加 GET /paper 列表端点(类比 GET /task,带最新净值+收益率)
- paper/New 分区富表单(卡式模式选择+频率+撮合时点说明)
- paper/Result 重做(收益/年化/回撤/夏普/波动指标卡+净值曲线+归因表+成交明细,净值客户端算指标)

因子模块:
- factor/Result 重做(最优ICIR/平均IC/显著数指标卡+彩色IC表+tears报告tab化)
- factor/New 重做(因子按类分组多选+标的批量+实时计数)

回测模块:
- backtest/Progress 重做(步骤时间线+进度条+实时日志尾3s刷新)
- backtest/New 重做(策略/参数/标的区间/基准分区富表单)
- backtest/Optimize 重做(结果列头可排序+Top1高亮+按收益默认降序)
- History 迁移scoped chip→全局chips.css(DRY清理)

全局:深色主题统一,复用 tokens.css + chips.css
2026-07-11 21:10:27 +08:00
claude_dev e0d32c0d1a feat(frontend): P1仪表盘首页(统计卡+快捷入口+最近任务)+全局chip样式+侧栏工作台入口 2026-07-11 20:45:57 +08:00
claude_dev 18d4ba2013 feat(web): 前端全局重构专业量化后台(深色+红涨绿跌+设计系统)
- 设计系统 styles/tokens.css: 深色token(#0d1117底/#161b22卡片) + 红涨绿跌
  (--up#f85149/--down#3fb950) + 品牌蓝#1890ff + 间距/圆角/阴影/mono
- Element Plus深色(element-dark.css + dark/css-vars)+reset
- 删Vite脚手架残留(style.css重写/HelloWorld/hero/vite/vue资源)
- Layout重构(深色专业侧边)+Login+图表统一深色(useChart/echartsDark)
- 新建paper/Live.vue实走监控(step状态/净值/持仓/今日信号10s轮询)
- 业务页套.page头, 保留所有功能/路由/api
- 验证: vue-tsc --noEmit  + npm run build 
2026-07-09 23:02:31 +08:00
claude_dev 36b4299934 feat(web): 模拟盘前端(点亮入口+router+New/Result页+归因/拒单展示) 2026-07-07 12:50:55 +08:00
claude_dev 54fc1b656f feat(s3): 历史任务 + 参数优化端到端跑通
- result_store.load_result_by_task_id + orchestrator.get_result DB 兜底(历史回看)
- GET /task 列表、GET /task/{id}/optimization-results
- Task.raw_result 存优化结果 list(内存)
- cta_optimizer 修同款 bug(interval d / capital 1M / vnpy DB SETTINGS)
- get_status 返回 error_msg(str 守卫)
- 前端 优化页(网格输入+轮询+结果表)、历史页(任务列表+回看)、侧栏子菜单
- 修 5 个旧 test_routes 回归;73 tests passed
- 冒烟:历史 3 任务 + 优化 9 组合
2026-07-07 06:35:54 +08:00
claude_dev a5b00c2dea feat(frontend): S0 Vue3 脚手架 + auth + Layout shell(4入口,模拟/实盘灰显)
- Vite+TS+ElementPlus+ECharts+Pinia+Router+Axios
- auth store + JWT axios 拦截器 + 路由守卫
- 登录页 + Layout(侧栏 4 入口,回测/投研 active,模拟/实盘 disabled)
- 占位页(backtest/factor,S1/S2 填充)
- vitest auth store 3 tests passed + build 通过(dist 生成)
2026-07-07 05:56:24 +08:00