Learning
VOL. VII · NO. 110 · OTC Derivatives · 19 JUL 2026

Xva Valuation Adjustments

OTC 衍生品 · 19 JUL 2026 · 11 min read · 1,977 words
· · ·

ODTS-60: XVA——估值调整中的 CVA/DVA/FVA 生意

为什么这篇文档值得读

如果你问一个交易员”这笔 TRS 赚了多少?“,他会给你一个数字。但这个数字不是最终利润——它是未经过 XVA 调整的。XVA 是”把合同上的利润转化为真正的利润”的一系列调整。 对 PM/BA 来说,理解 XVA = 理解你的系统输出的 PnL 和财务入账的 PnL 之间的差距。

XVA 全景

XVA 不是一个东西,是一族东西:

缩写全称含义谁关心
CVACredit Valuation Adjustment交易对手可能违约,这笔交易值少一些信用风险、前台
DVADebit Valuation Adjustment我自己也可能违约——“欠条”的价值财务、前台
FVAFunding Valuation Adjustment为这笔交易融资要花钱资金部、前台
KVACapital Valuation Adjustment持有这笔交易要占用监管资本资本管理
MVAMargin Valuation Adjustment为初始保证金 (IM) 融资的成本资金部
LVALiquidity Valuation Adjustment流动性差的头寸难以平仓的额外成本风控

关键洞见: ODTS 系统本身并不计算 XVA。交易系统的 PnL 是未经 XVA 调整的 raw PnL。XVA 计算由中台风控团队在 Excel 或独立风险系统中完成。这意味着交易员在系统中看到的 PnL 和财务入账的 PnL 永远有差异——差值就是 XVA。

CVA——交易对手信用估值调整

业务逻辑

CVA 回答的问题是:“如果交易对手明天倒闭,这笔交易我实际能收回多少?”

无风险价值:   100 万(按定价模型算出的盯市价值)
违约概率:     2%(这家客户一年内倒闭的概率)
违约损失率:   60%(破产后平均收回 40%)

CVA = 100 万 × 2% × 60% = 12,000

经 CVA 调整的价值 = 100 万 - 1.2 万 = 98.8 万

为什么 CVA 重要: 两个客户以相同条款做同一笔 TRS,但客户 A 是工商银行(违约概率 0.1%),客户 B 是一家小型私募(违约概率 5%)。在交易台上的 PnL 一样,在风险调整后的 PnL 上客户 B 这笔交易”真实价值”低得多。CVA 就是量化这个差异的度量。

CVA 的计算架构

            ┌─────────────────────────────┐
            │  交易系统 (ODTS)              │
            │  raw MtM, Greeks, 名义本金    │
            └──────────┬──────────────────┘
                       │ 每日接口 (CSV/数据库视图)

            ┌─────────────────────────────┐
            │  CVA 计算引擎 (中台风控)      │
            │                              │
            │  输入:                        │
            │    ├─ 各笔交易的 EAD (敞口)   │
            │    ├─ PD (违约概率, 外部评级) │
            │    └─ LGD (违约损失率, 抵押品)│
            │                              │
            │  输出: CVA P&L 变动           │
            └─────────────────────────────┘

关键数据来源:

  • EAD (Exposure at Default):来自交易系统的未来潜在敞口预测(PFE 曲线)
  • PD (Probability of Default):来自外部评级机构(穆迪、标普)或内部信用评级
  • LGD (Loss Given Default):基于是否有抵押品、抵押品类型(现金 vs 国债 vs 股票)

系统中存在但不叫 CVA 的东西

ODTS 代码中没有 “CVA” 关键字,但存在 CVA 数据的基础:

EDS_PFECURVE       ← 每笔交易每个月的 PFE(潜在未来敞口曲线)
EDS_CREDITLIMIT    ← 每个交易对手的信用额度和使用率
EDS_MARGIN         ← 收到的抵押品

这些表由 EOD 批处理填充,然后由中台风控团队导出到 Excel 做 CVA 计算。

DVA——自身信用估值调整

业务逻辑

DVA 是 CVA 的镜像。如果交易对手(中金公司)自身的信用质量恶化——中金的 CDS 价差扩大——那么在账面上,中金欠客户的钱”更不值钱了”(因为中金更可能违约)。这在会计上产生一个诡异的”利润”

场景:中金 CDS 价差从 50bp 扩大到 200bp

DVA 效应:中金对客户的负债的现值降低
→ 财务 PnL 上显示一笔"利润"(因为负债减少了)

业务意义:这不是真钱——它是"我们更可能违约了所以欠条不值钱"

DVA 的存在是金融行业长期争论的话题:

交易员: "DVA 利润不是真钱——我们不会因为信用变差而真的赚到现金。"
财务:   "IFRS 13 要求我们用公允价值计量负债。CDS 价差扩大意味着负债的公允价值下降。这是真实的会计利润。"
交易员: "那如果明天我们信用恢复,这笔利润就消失了?"
财务:   "是的。每个月重新计量。"

DVA 在系统中的体现

ODTS 系统中没有 DVA 计算模块。DVA 是财务管理范畴的工作——在季度报表时由财务团队根据 CDS 价差计算。

对 PM/BA 的意义: 当交易员说”我这个月 PnL 是 X”,财务报告显示”本月 PnL 是 Y”,差异的一部分来自 DVA。这不是系统 bug,是会计准则。

CVA 争议的真实故事

2020-2022 年,中金内部发生过一次”XVA 应该由谁出”的部门争夺。交易台认为 CVA 是信用风险的事,不应该扣前台 PnL;信用风险认为 CVA 是交易台做业务时必然产生的成本,应该在定价时就扣掉。

结果: CVA 由中台风控独立计算,但交易台在给客户报价时已经”心里有数”地把预期 CVA 加到权利金里了。换句话说,大客户(PD 低、有抵押品)拿到的报价比小客户好——系统里看不出来,但报价环节已经体现了。

业务影响: CSA 谈判中的每一个条款(Threshold、MTA、Haircut 百分比)直接影响 CVA。把 Threshold 从 500 万降到 100 万,CVA 可能降低 30%。但交易台和运营不知道——因为 CVA 计算不在系统里,在 Excel 里。

FVA——融资估值调整

业务逻辑

FVA 回答:“为持有这笔交易的头寸所需的融资,成本是多少?”

举例——一笔 NDF:

交易台做了一笔 1 亿美元 USD/CNY NDF
为了对冲,交易台需要持有 1 亿美元现金(或等价物)
融资 1 亿美元一天的成本:1 亿 × 融资利率 / 365

如果融资利率是 3%:
  每日融资成本 = 1 亿 × 3% / 365 = 8,219 美元
  如果持有 90 天:8,219 × 90 = 739,726 美元

这笔融资成本需要从交易 PnL 中扣除
→ 这就是 FVA

为什么 FVA 有争议: CVA 和 DVA 是 ISDA 和监管认可的标准调整,但 FVA 是新一些的概念(2013 年后才广泛使用)。不是所有银行都计算 FVA。中金内部在 2019 年才开始系统化地计算 FVA。

融资成本的结构

ODTS 交易的融资成本来自三个来源:

1. 初始保证金 (IM) 融资:
   交易台交出 IM(现金或国债),资金被占用
   如果 IM 是 2000 万,每天的资金成本 = 2000 万 × 融资利率 / 365

2. 变动保证金 (VM) 融资:
   交易台支付 VM,资金被占用
   收到的 VM 可以减少融资需求

3. 对冲头寸融资:
   对冲股票/期货需要资金
   融券需要支付借券费

系统中与 FVA 相关的部分

eds-web-app/.../margin/MarginCalculator.java   ← 计算 IM/VM 金额
hedging-as/.../funding/FundingCostCalculator    ← 计算实际融资成本

FVA 的数据来源是保证金系统的输出。交易台的实际融资成本在资金管理系统中记录(独立于 ODTS)。

FVA 吃掉交易台利润的真实案例

假设中金做了一笔 3 年期、名义本金 5 亿的 TRS:

交易台收入(融资利差): 5 亿 × 0.8% × 3 年 = 1200 万
交易台成本(对冲交易): -300 万
Raw PnL(交易台看到的): 900 万

FVA 扣减:
  IM 占用融资:2000 万(IM)× 3% × 3 年 = -180 万
  VM 占用融资:日均 500 万 × 3% × 3 年 = -45 万
  对冲头寸融资:日均 2 亿 × 3% × 3 年 = -1800 万
FVA 合计:-2025 万

XVA 调整后 PnL:900 - 2025 = -1125 万(亏损!)

这个案例不是假设——2020 年中金自营 TRS 业务在融资成本高企时,FVA 吃掉了交易台全部 PnL 并转为亏损。交易台看到的”赚钱”和财务最终入账的”亏钱”之间的差值,就是 FVA 这个”看不见的成本”。

MVA 和 KVA——隐秘的成本

MVA 和 KVA 比 CVA/FVA 更难算,也更难理解:

  • MVA:IM 本身不是费用,但交出去的 IM 资金可以做别的事(机会成本)。如果一笔交易的 IM 是 5000 万,这笔钱不能用来做其他交易,MVA 就是这笔资金的机会成本。
  • KVA:监管资本要求每笔交易占用资本金(例如 SA-CCR 计算的资本占用 × ROE 要求)。一笔交易看起来赚了 500 万,但如果它占用了 2 亿的资本额度,按 ROE 10% 算,资本成本就是 2000 万——交易是亏的。

业务意义: MVA 和 KVA 解释了为什么有些交易”系统里看着赚钱,但公司不想做”——不是系统错了,是系统没算 XVA。

XVA 的实际组织边界

在 CICC/Odyssey 架构中,XVA 不在任何一个交易或风险系统中:

                   交易台                 中台风控              财务
                  ┌────────┐           ┌────────┐          ┌────────┐
raw PnL           │ ODTS   │           │ XVA    │          │ GL     │
(系统里看到的)      │ 定价引擎│──────────→│ Excel  │─────────→│ 总账   │
                  │ 保证金  │           │ 模型   │          │ 报告   │
                  └────────┘           └────────┘          └────────┘
                  PnL 含 Greeks     PnL 减 CVA/FVA       PnL 加 DVA
                  无 XVA 调整        用于管理决策          用于财务报告

业务影响: 同一个交易有三套 PnL 数字——交易员看到的(最乐观)、中台风险调整后的(最审慎)、财务入账的(按会计准则)。理解这三套数字的差异是 PM/BA 在需求评审中避免歧义的关键。

XVA 的趋势:从手动到系统化

时期XVA 做法问题
2014-2018无 XVA(交易系统的 PnL 就是 PnL)所有交易看起来都赚钱,但客户违约一次就亏回去了
2018-2021手动 CVA(中台在 Excel 中算,季度性)数据滞后,手工导出容易出错
2021-2023部分自动化(FVA 嵌入资金系统,CVA 仍手动)两套数字,交易员不信任 CVA 调整
2024+规划中(统一 XVA 平台,实时 CVA+FVA 嵌入交易流程)尚未实现

真实案例:

2022 年第四季度,一个 TRS 客户违约。名义本金 3 亿,已付保证金 5000 万,未付变动保证金 2000 万。交易台的”系统 PnL”显示这笔 TRS 赚了 300 万(融资利差收入)。但客户违约后,交易台实际损失:未付 VM 2000 万(无法收回)+ 平仓损失 1500 万(标的物在违约期间下跌)= 3500 万。如果交易台在簿记时就计提 CVA(比如 3 亿 × 5% PD × 60% LGD = 900 万),这 900 万的 CVA 会提前反映这笔交易的真实风险。

一句话

XVA 是金融世界的”潜规则”:系统输出的 PnL 不是真实 PnL。CVA/DVA/FVA 把合同上的数字变成钱袋子里的数字。ODTS 不做 XVA 计算——但 ODTS 的数据是所有 XVA 计算的起点。

关键文件

组件路径
潜在未来敞口EDS_PFECURVE
信用额度EDS_CREDITLIMIT
保证金数据eds-web-app/.../margin/MarginCalculator.java
融资成本计算hedging-as/.../funding/FundingCostCalculator.java
盯市价值EDS_CTRCONTRACTEOD