4. 价差约束下的信号收益分解
在买卖价差约束下讨论信号筛选,最容易犯的错误是只看“信号方向对不对”,却忽略“这笔交易到底赚不赚钱”。一个信号即便方向判断正确,如果它预测的价格变动幅度小于跨越买卖价差所需的成本,那么执行后依然是亏损的。因此,本节的核心任务是把信号的收益拆开来看:毛收益、价差成本与净收益,并在此基础上建立一个可操作的净收益评估框架,让信号筛选从“看方向”升级为“看净值”。
一、三个收益口径的定义与符号约定
为避免后续计算混乱,先统一参照约定。设某标的当前最优买价为 Bid,最优卖价为 Ask,中间价为 Mid = (Bid + Ask) / 2,买卖价差为 S = Ask − Bid,半价差为 h = S / 2。所有收益均以“相对中间价的价格变动”为基准,向上为正、向下为负,单位统一用基点(bp)或价格单位,全文保持一致。
- 毛收益(Gross PnL):假设以中间价无摩擦成交时,信号持有期内价格从入场中间价到出场中间价的变化。它衡量的是信号本身的预测能力,不含任何交易摩擦。
- 价差成本(Spread Cost):实际成交必须付出买卖价差。买入时成交在
Ask,卖出时成交在Bid,一次完整的“买入—卖出”往返,相对中间价额外损失约一个完整价差S(若只做单边开仓,则承担半价差h)。 - 净收益(Net PnL):毛收益扣除价差成本后的剩余,即
Net = Gross − Spread Cost。只有净收益为正的信号,才具备被纳入交易池的资格。
二、用一张图看清收益分解结构
下面的图示把一次完整往返交易的收益拆解为“信号贡献”和“摩擦扣减”两条支路,并给出净收益的判定门槛。可以看到,毛收益是信号质量的度量,价差成本是市场微观结构的硬约束,二者相减才得到真正可比的净收益。
三、净收益评估框架的四个步骤
把上述分解落到信号筛选流程中,可以组织为四个可执行的步骤。这里的关键不是公式本身,而是每一步需要哪些输入、如何计算、以及用什么阈值做判断。
- 估计信号的毛收益分布:对每个候选信号,统计其在历史样本上的持有期收益(以中间价计),得到均值
μ_g与标准差σ_g。均值代表预期毛收益,标准差代表不确定性。样本不足时,应使用滚动窗口或收缩估计,避免单次极端值主导结论。 - 测算该标的的价差成本:取信号实际执行时段的平均买卖价差
S̄。若信号只做单边开仓并持有到平仓,往返成本按S̄计;若只做开仓不立即平仓,则按h̄ = S̄/2计。价差随波动率和时段变化明显,应使用与信号持有期匹配的时段数据,而非全天均值。 - 计算净收益并做显著性判断:
Net = μ_g − S̄。仅看 Net 为正还不够,还要看它相对不确定性的倍数,即t = Net / (σ_g / √n)。当Net > 0且t超过设定门槛(例如 2)时,信号才具备统计意义上的净收益。 - 按净收益排序并设定筛选线:将候选信号按 Net 或风险调整后的 Net/σ_g 排序,结合容量与换手约束确定最终入池名单。筛选线应随价差水平动态调整,价差走阔时自动提高门槛。
四、一个可复算的教学示例
假设某标的当前 Bid = 99.98、Ask = 100.02,则 Mid = 100.00、S = 0.04、h = 0.02。某做多信号在历史样本上的平均持有期毛收益为 μ_g = 0.05(价格单位),毛收益标准差 σ_g = 0.10,样本数 n = 100。按往返交易计算:
价差成本 = S = 0.04
净收益 = μ_g − S = 0.05 − 0.04 = 0.01
标准误 = σ_g / √n = 0.10 / 10 = 0.01
t 值 = Net / 标准误 = 0.01 / 0.01 = 1.0
这个结果很有代表性:毛收益 0.05 看起来不错,但扣除 0.04 的价差后只剩 0.01,t 值仅为 1.0,未达到常见门槛 2。结论是该信号在当前价差水平下不具备可靠的净收益,应被剔除或降权。若该标的价差收窄到 0.02,则 Net = 0.03、t = 3.0,信号即可通过筛选。这说明同一信号在不同价差环境下的命运可能完全相反,价差是筛选框架中不可省略的变量。
五、筛选框架的落地要点
把框架固化为可复用的评估表,能让筛选过程透明且可审计。建议每个候选信号至少记录以下字段:信号标识、样本区间、μ_g、σ_g、n、执行时段平均价差 S̄、Net、t 值、是否入池。这样在价差环境变化时,只需更新 S̄ 即可重新评估,而无需重跑全部信号研究。
| 信号 | μ_g | σ_g | n | S̄ | Net | t 值 | 结论 |
|---|---|---|---|---|---|---|---|
| A(做多) | 0.05 | 0.10 | 100 | 0.04 | 0.01 | 1.0 | 剔除 |
| A(价差收窄后) | 0.05 | 0.10 | 100 | 0.02 | 0.03 | 3.0 | 入池 |
| B(做空) | 0.08 | 0.12 | 120 | 0.03 | 0.05 | 4.6 | 入池 |
需要强调的是,净收益评估不是一次性动作,而是随市场状态滚动的过程。价差在开盘、收盘、重大事件前后会显著变化,同一信号在不同时段的净收益可能跨越正负边界。因此,筛选框架应把“执行时段”作为显式参数,而不是用全天平均价差一刀切。只有把毛收益、价差成本与净收益三者放在同一张表里持续跟踪,信号筛选才真正建立在可实现收益之上,而非纸面预测之上。