系统原理¶
分层架构¶
| 层级 | 职责 |
|---|---|
| FastAPI 应用层 | 装配 REST 路由、WebSocket、Gradio 前端、静态资源、帮助文档和异常处理 |
| Gradio 页面层 | 声明页面组件、绑定回调、注入轻量 CSS 与 JS |
| CallbackServices / FrontendService兼容入口 | 按回调所属领域惰性装配服务,直接调用领域服务,不经本机REST反调 |
| 领域服务层 | 行情、新闻、图谱、推荐、策略、回测、模拟交易、知识库、MCP 和 Skill |
| 核心层 | 配置、SQLite、文件存储、日志、异常、全文索引和运行时工具 |
| 数据层 | 公开行情、新闻、研报、论文和本地模拟数据 |
数据与策略闭环¶
系统围绕“研读、构建、仿真、监控”组织。
| 阶段 | 主要证据 |
|---|---|
| 研读 | 行情、新闻、研报、论文、知识库、关系图谱 |
| 构建 | 策略源码、参数 schema、接口检查、版本差异 |
| 仿真 | 回测任务、绩效曲线、交易明细、归因摘要、模拟账户 |
| 监控 | 账户风险、持仓行情、定时任务、运行日志、告警 |
Gradio 回调与 REST 路由共享领域服务,避免同一功能出现两套校验、两套存储或两套日志。
模型配置与知识资料的共享操作已下沉到中立应用服务,API与前端不再互相导入这些路由。样式脚本、AI页面区域、关系图构建和数据库迁移按职责拆分;访问/任务边界见安全与并发原理。
页面性能原则¶
正常入口是持久工作台壳,左侧二级导航切换九个按需创建的 Gradio 模块;模块 iframe 按缓存规则复用,不为每次点击打开新页面。兼容单体入口继续保留,但不代表默认架构。
按模块拆分只减少页面构建和渲染负担,不能消除重复数据读取。智能洞察摘要与明细有独立回调和缓存,强制刷新可能重复访问远端;首次进入若摘要空白,应查看状态并手动刷新,不能认为行情数据为零。日内缓存能改善重复访问,但不能作为冷加载性能的依据。
帮助文档由 MkDocs 静态站点承载。学习专栏另有章节索引及正文缓存:“刷新当前章节”只刷新正文;目录在进程内扫描并缓存,新增章节、标题与目录变化后需重启服务再查看。帮助站点的目录与学习专栏的选材范围不同,具体配置见 配置说明。