Premio Dashboard 业务语义口径
本文是当前 Dashboard 面向主板、标签说明页、实盘执行台、回测中心的业务语义专题规格。
- 本文不是当前系统总手册。
- 本文不重新定义系统真相层级。
- 本文只负责页面用户可见语义、标签口径和交易台面解释语言。
- 当前系统主手册见 [../../CURRENT_SYSTEM_MANUAL_CN.md](../../CURRENT_SYSTEM_MANUAL_CN.md)
- 统一架构原则见 [../../FUTURES_OPTIONS_UNIFIED_ARCHITECTURE_PRINCIPLE_CN.md](../../FUTURES_OPTIONS_UNIFIED_ARCHITECTURE_PRINCIPLE_CN.md)
- 系统总哲学见 [../../SYSTEM_PHILOSOPHY_CN.md](../../SYSTEM_PHILOSOPHY_CN.md)
- 文档地图见 [../../DOCUMENTATION_MAP_CN.md](../../DOCUMENTATION_MAP_CN.md)
当前自动执行主链仍以期货执行口径为主;期货与期权如何统一成一个系统,统一见统一架构原则。本文继续负责 dashboard 用户可读业务语义与交易口径,不替代总哲学或当前系统主手册。
系统总则
- 战术负责发现机会、定义入场、止损、止盈和持仓管理。
- 战略负责给战术设定风险边界、持有模式、方向约束和实盘放行纪律。
- 纸面仓用于表达策略意图与管理逻辑。
- 正式执行仓只认真实下单、真实成交、真实持仓这些事实。
- 任何“可下单”都不等于“已经成交”;任何“有意图”都不等于“已形成事实仓”。
战略核定与实盘放行
战略核定
thesis_human_confirmed = true表示当前战略已经过人工核定。- 没有人工核定时,战略可以给出提示、降级、观察意见,但不应把战术逻辑静默改写成另一套黑箱。
- 战略最重要的作用,是定义:
- 是否允许新开
- 是否允许加仓
- 当前更适合核心持有、战术持有,还是只保留试仓
- 当前是增强、延续、转弱、反转,还是进入待移仓阶段
战略任务中心
queued / running / completed / failed / interrupted这些状态,只描述“战略生成任务”本身的执行过程。- 它们属于研究/战略层的任务状态,不属于 broker facts,也不属于正式执行事实。
- 任务完成只表示
evidence_pack / thesis_plan / continuity这条研究链已经跑完,不代表系统已经下单、成交或形成事实仓。 - 任务失败或中断时,允许用户整任务重跑;这里的“重试”表示重新发起研究,不表示从某个 LLM 内部中间态继续执行。
- 页面如果展示战略任务进度,应优先回答“做到哪一步、卡在哪、最后一次结果是什么”;但不能把这些过程状态写成“已经形成执行事实”。
战略研究画像
research_profile属于研究/战略层的编排蓝图,不属于 observation、broker facts 或 formal execution facts。- 它定义的是“优先查什么、优先反证什么、优先参考哪些来源、如何拆分 agent 分工”,不是“系统已经确认了什么事实”。
- 无论是模板模式还是多 agent 模式,
research_profile都只能约束调查顺序、驱动排序和情景建模;真正写入evidence_pack / thesis_plan的内容,仍必须来自实际输入材料与已核验的公开信息。
实盘放行
live_release_symbols表示“允许进入实盘执行范围的品种列表”。- 进入
live_release_symbols只代表进入实盘放行池,不代表一定会下单。 live_release_symbols不会覆盖其他阻断条件,尤其不会覆盖:- 战略禁止新开
- 旧月待移仓
- 交易所最小开仓手数
TargetPosTask/ 下单模式兼容性- 手工干预或待人工确认
放行池来源
- 若用户显式保存了
trading.live.release_symbols,则主口径就是live_release_symbols。 - 若没有显式保存,系统会退回到当前执行池/主板执行范围作为默认观察口径。
纸面仓、观测样本、正式执行仓
纸面仓
- 纸面仓首先表达“系统想做什么”。
- 它保留计划手数、计划止损、计划止盈、管理阶段和复盘信息。
- 当前实现中,纸面仓还会通过独立的
ExecutionIntentCoordinator导出一层显式execution_intent_ledger快照,作为 live backend 的同步边界。 - 这层
execution_intent_ledger仍然属于“执行意图”,不是成交事实,也不是正式执行仓。
观测样本
- 观测样本用于跟踪结构,不直接视为正式执行结果。
- 观测样本可以帮助判断 setup 是否值得升级,但不应与正式账本混算。
正式执行仓
- 正式执行仓只在真实成交事实出现后才成立。
- 正式执行仓的入场价、开仓时间、实际手数,应来自真实成交,而不是沿用计划触发价。
- 部分成交时,只把已经成交的部分纳入正式账本;未成交余量只是执行意图,不算事实仓。
开仓执行阶段
系统对开仓事实的用户可读阶段,按下面的语义理解:
仅纸面- 目前只有纸面管理,还没有正式执行事实。
待执行回报- 系统已有执行目标,但 broker 侧还没有回到可归因的委托或成交。
开仓挂单中- 委托已经在路上,但真实开仓尚未完全形成。
部分成交- 已有真实成交,但还有余量待成交或待收敛。
待确认事实仓- 已形成真实持仓,但当前仍是候选接管,需要更直接的身份归因或人工确认。
已形成事实仓- 真实成交已经足够清晰,正式账本可按事实口径接管。
共享执行事实- 同一执行合约被多条 trade 共享,暂不做按单精细管理。
执行待收敛- 已有活动或成交迹象,但当前还不能安全拆分到某一条仓位。
待人工检查- 当前执行事实存在方向冲突、归因歧义或仓位异常。
最小开仓手数与自动补手原则
- 每个合约都有交易所最小开仓手数,字段是
min_open_order_volume。 - 当
recommended_lots < min_open_order_volume时,系统直接阻断自动开仓。 - 对应阻断状态是
blocked_min_open_order_volume。 - 系统不会为了凑够交易所门槛而自动补手。
这条原则非常重要:
- 不自动补手,避免把“本来只想轻试 1 手”的信号,被系统偷偷放大成更大真实风险。
- 不自动补手,避免纸面和 live 在风险尺度上失真。
- 如果连最小开仓门槛都达不到,说明这笔机会当前不适合进入自动执行。
旧月待移仓与目标月执行
roll_pending的核心意思,不是“所有相关机会一律作废”,而是“旧月不再继续扩大风险,优先处理迁移与收缩”。- 如果当前执行已经切到目标月,那么旧月待移仓约束不应再机械阻断目标月的新执行。
- 这时系统更合理的动作,是把执行标签降级到轻仓验证或试仓,而不是继续把目标月误当成旧月禁止。
主板标签应该怎么读
- 主板优先说“当前你该怎么理解这个机会”,而不是把内部状态原样堆给用户。
- 用户最需要看的通常是:
- 现在是否值得跟
- 当前处于什么持仓管理阶段
- 当前正式执行处于什么阶段
- 为什么能做,或者为什么被拦
因此,主板标签必须尽量避免“系统自说自话”:
- 能说“部分成交”,就不要只说底层归因状态名。
- 能说“待人工检查”,就不要把一串内部枚举直接暴露给用户。
- 能用一条说明说清楚,就不要让用户自己从多个互相耦合的标签里猜真实状态。
实盘与纸面的边界
- 纸面可以比 live 更灵敏,因为它承担研究、验证、观察的职责。
- live 必须比纸面更克制,因为 live 会真实承受买一卖一、手续费、滑点和成交不确定性。
- 真正优雅的系统,不是“纸面想什么,live 一字不差照抄”,而是:
- 纸面先表达机会与管理逻辑
- live 再判断这笔机会是否仍然具备净 edge
- 正式账本最后只接受真实执行事实
文档维护原则
- 新增标签、新增阻断、新增执行阶段时,必须同步更新本文。
- 如果某个页面文案与本文冲突,以本文应表达的业务语义为准,再回头修页面。
- 若未来期权 package 正式进入 risk / ledger / execution,一等用户语义应先按 [../../FUTURES_OPTIONS_UNIFIED_ARCHITECTURE_PRINCIPLE_CN.md](../../FUTURES_OPTIONS_UNIFIED_ARCHITECTURE_PRINCIPLE_CN.md) 收口,再扩充本文。
- 后续关于系统哲学、战略与战术分工、formal/live 一体化,应优先收敛到 [../../SYSTEM_PHILOSOPHY_CN.md](../../SYSTEM_PHILOSOPHY_CN.md);本文继续负责用户可读业务语义与交易口径。
- 本文如与 [../../CURRENT_SYSTEM_MANUAL_CN.md](../../CURRENT_SYSTEM_MANUAL_CN.md) 冲突,以当前系统主手册为准;本文只负责 dashboard 用户语义专题,不是第二本系统总手册。