多市场 NAV 与绩效归因:一个净值真源支撑多资产

当平台只做 A 股时,净值很简单:持仓市值加现金。
但一旦同时有股票、期货、期权、多市场并行,问题就来了——不同资产的估值口径不同、交易时段不同、货币与乘数不同,净值到底以谁为准?归因又该怎么拆?

结论先行:EasyQuant 坚持单一净值真源——所有资产的估值并入同一份 NAV(LiveNavRefreshJob 刷新,valuePositions 为唯一真源),再在其上做 Brinson 与 Barra 归因。多市场是“并行核算进一份净值”,不是“各算各的再拼”。


一、多资产净值的陷阱

  • 期权要用曲面估值,不能拿陈旧最新价(见 24 期权定价与波动率曲面
  • 期货有乘数和保证金,市值口径与股票不同
  • 多市场交易时段错开,某标的价缺失时若静默剔除,净值会悄悄失真

如果每类资产各维护一份净值再加总,口径漂移几乎必然发生。所以必须有一个真源


二、单一真源:valuePositions + LiveNavRefreshJob

净值收口在一处:

  • valuePositions 是估值持仓的唯一真源,各资产按各自估值方式折算后并入
  • LiveNavRefreshJob 负责刷新净值快照
  • 标的价缺失时的处理是显式的:走估值或显式剔除并留痕,而不是静默丢弃导致净值虚高

这条纪律很关键——净值一旦有第二个真源,对账就永远对不平。


三、绩效归因:Brinson 与 Barra 两条线

有了可信净值,才谈得上归因:

归因 组件 回答的问题
Brinson BrinsonAttributionService 超额收益来自配置(选行业)还是选股
Barra BarraAttributionService 收益暴露在哪些风格因子上
组合分析 PortfolioAnalysisService 总览、贡献、协方差与优化

Brinson 基准做了缓存优化、带 market_id 吃 hypertable 索引,组合优化器补了协方差收缩——这些是把归因从“能算”做到“算得快、算得稳”。


四、产品化:归因要能交付给客户

归因不是内部调试工具,要能出报告:

  • ProductReportService:把净值、绩效、归因产品化成可交付的产品报告
  • 多市场并行核算的结果统一进这份报告,客户看到的是一致口径

这与产品层(Phase2 机构级引擎)对齐,让“多资产、多市场”不只是能跑,而是能对客户讲清楚钱是怎么赚/亏的


结语

多资产平台的成熟度,看的不是支持几类资产,而是这几类资产能不能进同一份净值、拆同一套归因。

坚持单一净值真源、缺价显式处理、Brinson/Barra 双线归因并产品化,EasyQuant 把“多市场”从“并列几个模块”推进到一份净值真源支撑多资产的机构级核算。