广告计费四视角 → 交易盈亏四视角:CPM / CPC / OCPC / OCPX 的同构映射
广告计费模型经历了四次进化:CPM → CPC → OCPC → OCPX。每一次进化,都是把更多的决策权从人交给模型。
交易系统的盈亏拆解完全同构——同样的四级演进,同样的逻辑。
四视角总览
| 视角 | 广告:优化什么 | 交易:优化什么 | 核心变化 |
|---|---|---|---|
| CPM | 展示级计费 | 信号级拆解 | 按量计价,不管效果 |
| CPC | 点击级计费 | 交易级拆解 | 按效果计价,人定出价 |
| OCPC | 模型动态调价 | 模型动态调仓 | 模型预估转化率,自动调出价/仓位 |
| OCPX | 深度目标优化 | 组合目标优化 | 优化深层目标(LTV/Sharpe),而非表层指标 |
视角一:CPM — 按展示计费 vs 按信号计价
广告:3 种 CPM 拆法
① 消费 = PV × CPM₁
② 消费 = PV × PVR × CPM₃
③ 消费 = PV × PVR × ASN × CPM₂
越拆越细:流量(PV) → 展示率(PVR) → 广告位数(ASN)。消费下降时,能定位是流量跌了、展示率低了、还是广告位变少了。
交易:3 种信号级拆法
① PnL = Capital × Return
② PnL = Signals × E[PnL_per_signal]
③ PnL = Signals × TriggerRate × E[PnL_per_trade]
同构映射:机会(Signals) → 触发率(TriggerRate) → 单笔期望。亏钱时定位:是机会变少了、触发率低了、还是单笔期望恶化了。
CPM 视角的映射
| 广告 | 交易 | 本质 |
|---|---|---|
| PV(流量) | Signals(信号数) | 系统看到多少机会 |
| PVR(展示率) | TriggerRate(触发率) | 机会转化为动作的比例 |
| ASN(广告位数) | PositionSize(仓位) | 每次动作的规模 |
| CPM(千次展示成本) | E[PnL_per_signal](单信号期望) | 每单位流量的价值 |
CPM 视角的局限:只看量,不看质。广告不知道展示带来了多少点击和转化,交易不知道信号带来了多少胜率和盈亏比。
视角二:CPC — 按点击计费 vs 按交易计价
广告:3 种 CPC 拆法
④ 消费 = PV × CTR₁ × ACP
⑤ 消费 = PV × PVR × CTR₃ × ACP
⑥ 消费 = PV × PVR × ASN × CTR₂ × ACP
引入了点击率(CTR)和点击均价(ACP),开始按效果付费。
交易:3 种交易级拆法
④ PnL = Signals × TriggerRate × PositionSize × E[Return_per_unit]
⑤ PnL = Signals × TriggerRate × PositionSize × (WinRate × AvgWin% - LossRate × AvgLoss%)
⑥ NetPnL = GrossPnL - Trades × (Commission + Slippage + Spread)
引入了胜率(WinRate)和盈亏比(AvgWin/AvgLoss),开始按交易质量拆解。
CPC 视角的映射
| 广告 | 交易 | 本质 |
|---|---|---|
| CTR(点击率) | WinRate(胜率) | 动作转化为正结果的比例 |
| ACP(点击均价) | AvgWin - AvgLoss(盈亏差) | 每次正结果的价值 |
| 无效点击/退费 | Commission + Slippage | 摩擦成本 |
CPC 视角的进步:知道了”效果”,可以诊断问题在哪一层。
| 检查 | 广告 | 交易 |
|---|---|---|
| 转化率下降 | CTR 下降 → 创意/匹配问题 | WinRate 下降 → 策略失效 |
| 单价异常 | ACP 飙升 → 竞争加剧 | AvgLoss 放大 → 止损太晚 |
| 成本侵蚀 | 无效点击占比高 | 手续费+滑点吃掉利润 |
CPC 视角的局限:出价是人定的。广告主凭经验出 2 块钱一个点击,交易者凭感觉开 10% 仓位——都是拍脑袋。
视角三:OCPC — 模型调价 vs 模型调仓
OCPC 是广告系统的一次质变:出价不再由人定,而是由模型根据预估转化率动态调整。
广告:OCPC 的核心公式
Bid = base_bid × (pCVR / targetCVR)
pCVR:模型预估的转化率(这个用户点击后购买的概率)targetCVR:广告主的目标转化率- 转化概率高的流量,系统自动加价抢
- 转化概率低的流量,系统自动降价或不竞价
本质:用模型的预估能力替代人的出价判断。广告主只需设定 CPA 目标(每个转化愿意花多少钱),系统自动分配预算到高价值流量。
交易:模型驱动的动态仓位
PositionSize = basePS × f(pWinRate, pEdge)
pWinRate:模型预估的胜率(当前市场状态下这笔交易盈利的概率)pEdge:模型预估的边际(预期盈亏比)- 高胜率+高边际的信号,自动加仓
- 低胜率或低边际的信号,自动减仓或跳过
OCPC 视角的映射
| 广告 OCPC | 交易 OCPC | 本质 |
|---|---|---|
| pCVR(预估转化率) | pWinRate(预估胜率) | 模型对”这次动作能否成功”的预判 |
| targetCVR(目标转化率) | targetWinRate(目标胜率) | 系统运行的基准线 |
| 动态出价 | 动态仓位 | 模型替代人做规模决策 |
| CPA 约束(每转化成本) | 单笔最大亏损约束 | 风控红线 |
| 两阶段:先 CPC 积累数据 → 再 OCPC 自动调价 | 两阶段:先固定仓位积累数据 → 再模型驱动调仓 | 冷启动一样需要人工介入 |
关键相似点:两阶段启动
OCPC 不是从第一天就能用。广告系统要求先跑 CPC 积累转化数据,模型学到足够的 pCVR 信号后才切换到 OCPC。
交易系统一样:先用固定仓位跑够样本量,模型学到市场状态→胜率的映射后,才能可靠地做动态仓位管理。
过早切换 = 模型在噪音上拟合 = 亏钱。
视角四:OCPX — 深度目标优化 vs 组合目标优化
OCPX 是广告系统的又一次进化:不再优化表层指标(点击、转化),而是优化深层业务目标(付费、留存、LTV)。
广告:OCPX 优化什么
OCPC:优化转化数(注册、下载)
OCPX:优化深度转化(首次付费、7日留存、LTV)
- 一个用户注册了但从不付费 → OCPC 算成功,OCPX 不算
- 一个用户 LTV 很高 → OCPX 给这类用户更高出价
- 目标从”有多少人来”变成”来的人值多少钱”
OCPX 的核心变化:优化目标从单次事件变成了用户生命周期价值。
交易:组合级目标优化
CPC 视角:优化单笔 PnL
OCPC 视角:优化单笔仓位分配
OCPX 视角:优化组合级目标(Sharpe、Calmar、最大回撤)
- 一笔交易赚了 5% 但让组合回撤了 15% → 单笔看是好交易,组合看是坏交易
- Sharpe 2.0 但最大回撤 40% → 收益好但风险不可接受
- 目标从”这笔赚不赚”变成”整个组合健不健康”
OCPX 视角的映射
| 广告 OCPX | 交易 OCPX | 本质 |
|---|---|---|
| LTV(用户生命周期价值) | 组合长期收益 | 从单次到全局的价值衡量 |
| 7 日留存 / 付费率 | Sharpe / Calmar Ratio | 质量指标,不只是数量指标 |
| 多目标联合优化 | 多策略组合优化 | 子目标之间有取舍 |
| 归因窗口(7天/30天) | 评估周期(月度/季度) | 看得越远,优化越难 |
| 模型需要深度转化数据 | 模型需要足够长的交易历史 | 数据稀疏是核心挑战 |
OCPX 的核心难题:延迟反馈
广告系统的痛点:用户今天点了广告,30 天后才付费。模型怎么学?
交易系统一样:策略今天开仓,可能持仓 2 周后才平仓。在这 2 周里,你不知道这笔交易的最终结果。
解法也类似:
| 广告 | 交易 |
|---|---|
| 预估 LTV 模型(不等真实数据,用预估值训练) | 预估 PnL 模型(用 MAE/MFE 路径预估最终收益) |
| 分层归因(付费、留存分别建模) | 分层评估(胜率、盈亏比、回撤分别建模) |
| 增量实验(A/B test 衡量增量 LTV) | 控制实验(Shadow Mode 对比策略增量贡献) |
四视角的演进脉络
CPM → 按量计价 → 信号级拆解 → "有多少机会"
CPC → 按效果计价 → 交易级拆解 → "效果怎么样"
OCPC → 模型动态调价 → 模型动态调仓 → "模型替人决策"
OCPX → 深度目标优化 → 组合目标优化 → "优化全局目标"
每一级进化的本质:把更多的决策权从人交给模型,把优化目标从局部推向全局。
这就是量化指标体系的底层逻辑——不是看单个数字好不好,而是要清楚你在优化哪一级的目标。
一句话总结
广告系统从 CPM 进化到 OCPX,是把计费粒度从”展示”推进到”用户生命周期价值”。交易系统的同构演进,是把盈亏粒度从”信号”推进到”组合健康度”。同一条路,同一个方向:让模型替代人做越来越深层的决策。