Bastix
Resources

股票持仓管理方法

股票持仓管理不只是计算占比,还要明确账本责任人、目标版本、变更依据、数据例外、外部成交核对和定期复盘,才能让每次调整都可追溯。本文提供四张台账、状态流转以及缺价和不可交易对象的治理方法,帮助建立可复核的持仓记录流程,不给具体仓位建议。

股票持仓管理首先是治理问题,然后才是计算问题。一套可用制度要说明:谁提出目标、依据是什么、谁能修改、数据异常时谁处理、真实成交以哪里为准、多久复核一次、错误如何更正。

Bastix 可以保存沙箱策略账本中的目标或当前仓位、标的、仓位比例、变更时间和原因。但这本账不是券商持仓、委托回报或资金流水,不能承担真实账户对账。怎样核对这些策略记录,见持仓分析工具;本页只讲管理制度与责任链。1

先把三本账分开

账本唯一用途责任来源禁止混入
研究目标账保存研究对象、目标版本、理由、证据与例外研究负责人或策略智能体,用户复核未确认的真实成交和账户余额
券商事实账保存真实数量、成交、费用、现金和账户状态券商正式记录模型推测、模拟交易、研究目标
证据档案保存公告、数据快照、会议决定、更正说明材料所有者与复核人无来源截图、过期链接、无法识别版本的结论

三本账可以相互引用,但不能把字段复制后丢掉来源。例如研究目标变更可以引用券商成交编号;没有成交编号时,状态只能是“待外部核对”,不能写成“已调仓”。

四张台账构成最小管理系统

1. 组合主表:定义对象和责任

字段填写规则
portfolio_id永久唯一,不用组合名称代替
portfolio_name可读名称;改名不改变 ID
purpose研究、模拟、真实账户对账三选一
base_currency组合基础币种
owner最终责任人
editor_list可以提出或写入变更的人
reviewer定期复核人,不能与所有编辑者完全重合
source_of_truth研究账本、券商名称或文件路径
review_cycle每日、每周、月度或事件触发
retention_rule历史与证据保留规则
statusdraftactivefrozenclosed

purpose=研究,页面必须显示“非真实账户”;若 purpose=真实账户对账,必须填写券商或托管记录作为事实来源。

2. 目标与变更表:每次修改都形成新记录

字段含义
change_id本次变更唯一编号
submitted_at / submitted_by提交时间与提交者
symbol归一化后的完整代码
previous_target修改前目标;首次建立可为空
proposed_target提议目标,不代表平台建议
reason可读的变更原因
evidence_refs公告、数据快照、研究记录等来源编号
data_as_of形成提议时的数据截止时间
review_statuspendingapproved_for_ledgerrejectedneeds_information
reviewed_by / reviewed_at复核人和时间
ledger_write_ref写入策略账本后的记录编号
broker_execution_ref真实执行编号;没有真实执行则必须为空

“批准写入研究账本”和“批准真实交易”是两种不同状态。本模板只定义前者,不设计交易审批,也不提供目标比例判断。

3. 数据例外表:把未知从结果里拆出来

字段示例状态
exception_idPX-20260814-001
detected_at发现时间
scope标的、现金、价格、企业行为、权限或代码映射
error_typeprice_missingstale_dataduplicate_symbolcash_mismatchcorporate_action_unknown
affected_outputs当前权重、净值、集中度或报告
last_good_as_of最近一次可确认数据时间
temporary_action留空结果、冻结变更、改用正式来源等
owner / due_at处理人和期限
resolution修复方式和证据
closed_by / closed_at关闭人和时间

例外未关闭前,受影响结果应显示“不可用”或“部分可用”。0 是一个数值,不是缺失状态;不能用零填充未知价格、未知现金或未知仓位。

4. 复核与更正表:不覆盖旧值

字段用途
review_idperiod标识复核批次和期间
expected_records / actual_records应有记录与实际记录数量
open_exceptions未关闭例外编号
broker_reconciled是否与券商事实账核对;研究组合填“不适用”
rule_version本期采用的数据与管理规则版本
corrections更正编号列表
review_resultpasspass_with_exceptionsrework
reviewerreviewed_at复核责任链

发现错误时新增一条更正记录,包含旧值、新值、原因、影响范围和复核人。不要直接覆盖旧记录,否则后续无法解释历史报表为什么改变。

状态流转:目标不是写完就结束

草稿
  ↓ 字段完整
待复核
  ├─→ 退回补证 ─→ 待复核
  ├─→ 拒绝(终态)
  └─→ 批准写入研究账本
          ↓ 写入并核对记录编号
        已记录
          ↓ 定期复核或事件触发
        继续 / 修订 / 关闭

如果需要真实交易,已记录 后另行进入券商或机构批准的交易流程。Bastix 内置能力没有券商连接或真实下单,研究账本写入成功不能作为成交证明。2

一次变更的管理时间线

以下用“示例甲”说明记录顺序,不提供任何具体目标比例。

时间事件应写入的对象
周一 08:50研究负责人发现新公告证据档案:原文、发布日期、来源
周一 09:05提交目标变更变更表:前值、提议值、理由、data_as_of
周一 09:20数据负责人发现最新价格缺失例外表:price_missing,受影响输出
周一 09:25复核人退回变更状态改为 needs_information,不写目标
周一 14:10数据恢复并核对时间关闭例外,附来源和最近有效时间
周一 14:30复核通过approved_for_ledger,记录复核人
周一 14:35写入研究账本保存 ledger_write_ref;成交编号仍为空
周五 16:00周度复核检查理由、例外、历史和是否继续

这条时间线的重点是:缺价发生后,变更停在待补证状态;数据恢复不是自动批准;写入账本后也没有虚构真实成交。

两类高风险例外怎么处理

价格缺失或复权口径冲突

  1. 冻结受影响的当前权重和净值结论;
  2. 保存最近一次可确认价格及时间,但标记为历史值;
  3. 确认价格类型、复权方式、企业行为和供应商修订;
  4. 重新计算后生成新版本,不覆盖旧报告;
  5. 由不同于修改人的复核者关闭例外。

这是一套通用治理方法,不代表 Bastix 当前已经提供上述价格计算、缺价降级或基准重置行为。相关能力只有在字段、算法、失败样本和责任审批齐备后,才能写进产品说明。

负方向目标或不可交易对象

Bastix 当前公开事实没有批准针对负方向目标、指数、停牌或退市对象的具体提示与拦截行为,因此不能把这些行为写成产品现状。无论使用什么工具,管理制度都应对“研究表达可能无法真实执行”的情况增加人工处理:

  • 把对象、限制来源和核验日期写入例外表;
  • 将变更状态设为 needs_information
  • 若研究确实需要负方向表达,说明它只是研究假设,不是现实可成交声明;
  • 从交易所、券商或正式产品资料核对对象状态、账户资格与可用工具;
  • 未获得可交易性证据前,broker_execution_ref 保持为空;
  • 产品没有明确拦截证据时,不把“记录已保存”解释成“规则已校验”。

“系统保存成功”不等于“市场可执行”,更不等于“已经成交”。

每日、每周和事件复核各看什么

节奏复核内容输出
每日或每次运行标的解析、价格时间、现金、开放例外当日数据状态,不重做策略判断
每周目标版本、变更理由、未关闭例外、责任人逾期继续、补证、修订或关闭
月度券商对账、企业行为、权限和导出备份更正记录和权限调整
事件触发停牌、退市、代码变更、数据源切换、责任人交接冻结范围、迁移计划和新版本

复核频率应根据组合用途和风险确定,本页不提供统一周期建议。研究组合可以把主要精力放在理由和证据;真实账户还必须完成券商数量、现金、费用和成交核对。

可直接复制的空白变更记录

change_id:
portfolio_id:
symbol:
submitted_at:
submitted_by:
previous_target:
proposed_target:
reason:
evidence_refs: []
data_as_of:
open_exception_ids: []
review_status: pending
reviewed_by:
reviewed_at:
ledger_write_ref:
broker_execution_ref:
next_review_at:

只要 open_exception_ids 非空,或 data_as_of、理由、证据缺失,记录就不应进入 approved_for_ledger。如果团队没有独立复核人,应至少在变更记录中标明“提交者与复核者相同”,不要制造不存在的职责分离。


Footnotes

  1. Bastix《策略仓位记录》:策略仓位是沙箱内研究记录,不是券商账户持仓或真实成交。

  2. Bastix《公开产品事实登记》0.1.0 PF-07,取证日期 2026-08-14:内置能力没有券商连接或证券下单接口,也没有覆盖所有写操作的统一人工确认闸门。