交易成本与组合实施

4168 字
21 分钟
交易成本与组合实施

课程导航#

  1. 课时 1:信念、风险与量化投资流程(Beliefs, Risk, and Process)
  2. 课时 2:投资组合理论(Portfolio Theory)
  3. 课时 3:风险模型与风险分析(Risk Models and Risk Analysis)
  4. 课时 4:Alpha 因子评价(Evaluation of Alpha Factors)
  5. 课时 5:量化因子(Quantitative Factors)
  6. 课时 6:估值技术与价值创造(Valuation Techniques and Value Creation)
  7. 课时 7:多因子 Alpha 模型(Multifactor Alpha Models)
  8. 课时 8:组合换手与最优 Alpha 模型(Portfolio Turnover and Optimal Alpha Model)
  9. 课时 9:高级 Alpha 建模(Advanced Alpha Modeling Techniques)
  10. 课时 10:因子择时模型(Factor Timing Models)
  11. 课时 11:投资约束与信息比率(Portfolio Constraints and Information Ratio)
  12. 课时 12:交易成本与组合实施(Transaction Costs and Portfolio Implementation)

第一节 成本分解与单资产决策#

1. 成本组成与计量分母#

交易成本(Transaction Cost) 是建仓、调仓或平仓使实际组合相对同一决策基准下无摩擦纸面组合发生的经济损耗。纸面组合是按决策价立即、足额建立目标持仓且不计摩擦的反事实组合;成本必须注明是事前估计还是事后实现值,以及分母是成交名义金额还是组合净值。

  • 显性成本(Explicit Cost):佣金、交易税费和结算费用等可直接记账的支出;按成交量收费时近似线性,按订单收费时还含固定票据成本。
  • 买卖价差成本(Bid-ask Spread Cost):主动成交价相对同时点中间价的不利差额;立即买入通常支付卖价,立即卖出通常接受买价。
  • 市场冲击(Market Impact):订单改变市场供需或暴露交易意图,使成交价格偏离无该订单时反事实价格路径的部分;大额交易或高参与率下通常呈凸性。
  • 机会成本(Opportunity Cost):延迟、部分成交或未成交使实际头寸偏离决策时纸面头寸而产生的收益差额;按“正值表示损失”报告时,价格有利变动也可使事后分量为负。

显性成本和价差较容易从订单与成交记录估计;市场冲击需要构造反事实价格,机会成本还需要保存取消与未成交订单。只研究成功成交样本会同时低估后两类成本。

例:统一成本分母

  • 已知:单边成交额等于组合净值的 5%5\%,每单位成交额成本为 20 bp20\text{ bp}
  • 求解:成本对组合净值的拖累。
5%×20 bp=1 bp5\%\times20\text{ bp}=1\text{ bp}

20 bp20\text{ bp} 以成交额为分母,1 bp1\text{ bp} 以组合净值为分母;只有后者能直接与组合层面的同期 alpha 预测比较。

2. 线性成本与二次冲击#

将持仓变化同时纳入价差与冲击后,一期事前成本可近似为:

C(Δh)=θΔh+ΔhΨΔhC(\Delta\mathbf h) =\boldsymbol\theta^{\prime}|\Delta\mathbf h| +\Delta\mathbf h^{\prime}\boldsymbol\Psi\Delta\mathbf h

其中:

  • Δh=hh0\Delta\mathbf h=\mathbf h-\mathbf h_0:从当前主动权重 h0\mathbf h_0 到交易后主动权重 h\mathbf hn×1n\times1 交易向量。
  • θ\boldsymbol\thetan×1n\times1 事前线性成本率向量,通常以每单位单边成交额的基点表示。
  • Ψ\boldsymbol\Psin×nn\times n 对称正半定冲击矩阵,其量纲把权重平方换算为组合收益率成本。
  • C(Δh)C(\Delta\mathbf h):以组合净值为分母的事前成本率,与 alpha 的预测期限和收益率口径一致。

第一项是绝对值分段线性函数,第二项是凸二次函数。Ψ\boldsymbol\Psi 的对角项描述单只股票的自身冲击,非对角项近似篮子交易的交叉冲击;正半定性保证模型成本非负。θ\boldsymbol\thetaΨ\boldsymbol\Psi 都是依赖波动率、流动性、订单方向、参与率和市场状态的估计量,不是结构常数。

3. 二次成本把目标拉向当前持仓#

单资产在同一决策期限内的预测收益、风险和二次成本可写成效用:

U(w)=αw12λσ2w2ψ(ww0)2U(w)=\alpha w-\frac12\lambda\sigma^2w^2-\psi(w-w_0)^2

其中:

  • ww:单一风险资产的交易后权重,其余财富配置于现金。
  • w0w_0:决策时的当前权重。
  • α\alpha:与风险和成本使用同一期限的事前收益率预测;原书以 ff 表示,本课程改用 α\alpha,避免与因子收益向量 f\mathbf f 混淆。
  • σ2\sigma^2:该期限内资产收益率方差。
  • λ>0\lambda>0:风险厌恶系数,已按效用单位校准。
  • ψ0\psi\ge0:把权重变化平方换算为组合收益率损耗的冲击系数。

无约束一阶条件给出:

w=α+2ψw0λσ2+2ψw^*=\frac{\alpha+2\psi w_0}{\lambda\sigma^2+2\psi}

无成本目标为 w~=α/(λσ2)\widetilde w=\alpha/(\lambda\sigma^2),故最优交易是:

ww0=w~w01+2ψ/(λσ2)w^*-w_0= \frac{\widetilde w-w_0}{1+2\psi/(\lambda\sigma^2)}

二次成本使交易按风险惩罚与冲击之比连续收缩。只要 w~w0\widetilde w\ne w_0ψ\psi 有限,模型仍会交易,因为二次函数在零交易处的边际成本为零;它不会自行产生无交易区间。

4. 线性成本产生无交易区间#

无交易区间(No-trade Region) 是当前持仓附近一组不值得支付交易成本的状态:区间内边际预测收益不足以覆盖线性成本,最优决策保持原持仓。

把二次成本替换为 θww0\theta|w-w_0| 后,当前持仓的边际无成本效用为 m0=αλσ2w0m_0=\alpha-\lambda\sigma^2w_0。最优决策满足:

m0θw=w0|m_0|\le\theta \quad\Longrightarrow\quad w^*=w_0

定义无成本交易 Δw~=w~w0\Delta\widetilde w=\widetilde w-w_0 与成本权重 wc=θ/(λσ2)w_c=\theta/(\lambda\sigma^2),完整解是软阈值函数:

Δw=sign(Δw~)max ⁣(Δw~wc,0)\Delta w^* =\operatorname{sign}(\Delta\widetilde w) \max\!\left(|\Delta\widetilde w|-w_c,0\right)

其中:

  • Δw=ww0\Delta w^*=w^*-w_0:计入线性成本后的最优交易。
  • Δw~\Delta\widetilde w:忽略成本时的目标交易。
  • wcw_c:把单位交易成本换算为权重阈值后的无交易区间半宽。
  • sign()\operatorname{sign}(\cdot):保留买卖方向的符号函数。

例:线性成本的软阈值

假设同一决策期限内 α=3%\alpha=3\%λσ2=0.20\lambda\sigma^2=0.20w0=10%w_0=10\%θ=0.5%\theta=0.5\%。无成本目标为 15%15\%,故 Δw~=5%\Delta\widetilde w=5\%;成本权重为 wc=0.5%/0.20=2.5%w_c=0.5\%/0.20=2.5\%。最优交易是买入 2.5%2.5\%,交易后权重为 12.5%12.5\%,而不是机械追到 15%15\%

下图比较两种成本几何:二次成本把所有交易连续缩小,线性成本先设置阈值,再只执行超过阈值的部分。

-9% +9% +9% -9% 0 ±3% 线
图 12-1:同一笔无成本目标交易在不同成本函数下的响应。虚线是不计成本的 45° 线;二次成本按固定比例连续收缩;线性成本采用软阈值,目标交易未超过 3% 时保持零交易。阈值与 55% 收缩比例均为教学参数。

第二节 多资产成本感知优化#

1. 二次成本的解析解#

以主动权重为决策变量,无额外约束的多资产目标为:

maxh[αhλ2hΣh(hh0)Ψ(hh0)]\max_{\mathbf h} \left[ \boldsymbol\alpha^{\prime}\mathbf h -\frac{\lambda}{2}\mathbf h^{\prime}\boldsymbol\Sigma\mathbf h -(\mathbf h-\mathbf h_0)^{\prime} \boldsymbol\Psi(\mathbf h-\mathbf h_0) \right]

其中:

  • h,h0\mathbf h,\mathbf h_0n×1n\times1 交易后与当前主动权重向量,均相对同一基准定义。
  • α\boldsymbol\alphan×1n\times1 事前 alpha 向量,与优化持有期一致。
  • Σ\boldsymbol\Sigman×nn\times n 主动收益协方差矩阵。
  • Ψ\boldsymbol\Psin×nn\times n 对称正半定冲击矩阵。
  • λ>0\lambda>0:风险厌恶系数。

λΣ+2Ψ\lambda\boldsymbol\Sigma+2\boldsymbol\Psi 正定,则唯一解析解为:

h=(λΣ+2Ψ)1(α+2Ψh0)\mathbf h^*= (\lambda\boldsymbol\Sigma+2\boldsymbol\Psi)^{-1} (\boldsymbol\alpha+2\boldsymbol\Psi\mathbf h_0)

风险相关与交叉冲击共同改变交易方向,只有 Σ\boldsymbol\SigmaΨ\boldsymbol\Psi 同时为对角矩阵时,问题才退化为逐只股票的独立收缩。实务求逆前还要检查条件数、协方差收缩和正定性。

2. 重复一期优化形成持仓递推#

B=(λΣ+2Ψ)1\mathbf B=(\lambda\boldsymbol\Sigma+2\boldsymbol\Psi)^{-1}A=2BΨ\mathbf A=2\mathbf B\boldsymbol\Psi。参数暂时不变时,逐期重复上一小节的一期优化得到:

ht=Bαt+Aht1\mathbf h_t=\mathbf B\boldsymbol\alpha_t+\mathbf A\mathbf h_{t-1}

A\mathbf A 的谱半径小于 1,初始持仓影响会逐渐衰减,递推可展开为:

ht=k=0AkBαtk\mathbf h_t =\sum_{k=0}^{\infty} \mathbf A^k\mathbf B\boldsymbol\alpha_{t-k}

A\mathbf A 是由风险与成本共同决定的矩阵型平滑系数:冲击越高,旧持仓保留越多;风险惩罚越高,目标更快收缩。该递推只是连续重复一期问题的结果,不等于已计入未来信号衰减、流动性状态和约束的多期动态规划。真正的滚动决策只能使用各期当时可得的 alpha、风险和成本估计。

3. 线性成本转化为二次规划#

多资产线性成本含 hh0|\mathbf h-\mathbf h_0|,可用非负买入向量 b\mathbf b 与卖出向量 s\mathbf s 改写:

h=h0+bs,b,s0\mathbf h=\mathbf h_0+\mathbf b-\mathbf s, \qquad \mathbf b,\mathbf s\ge\mathbf0

在目标函数中用 θ(b+s)\boldsymbol\theta^{\prime}(\mathbf b+\mathbf s) 表示线性成本,得到标准凸二次规划:

maxb,s0[α(h0+bs)λ2(h0+bs)Σ(h0+bs)θ(b+s)]\max_{\mathbf b,\mathbf s\ge\mathbf0} \left[ \boldsymbol\alpha^{\prime}(\mathbf h_0+\mathbf b-\mathbf s) -\frac{\lambda}{2} (\mathbf h_0+\mathbf b-\mathbf s)^{\prime} \boldsymbol\Sigma (\mathbf h_0+\mathbf b-\mathbf s) -\boldsymbol\theta^{\prime}(\mathbf b+\mathbf s) \right]

其中 b,s\mathbf b,\mathbf sn×1n\times1 权重交易向量,θ\boldsymbol\thetan×1n\times1 事前线性成本率向量。当 θi>0\theta_i>0 且约束只依赖净交易时,同一股票同时买入和卖出会保持风险与预期收益不变却增加成本,故最优解自动满足 bisi=0b_is_i=0,进而有 hh0=b+s|\mathbf h-\mathbf h_0|=\mathbf b+\mathbf s,无需加入非凸互斥约束。该表示还能直接加入:

  • 资金中性1(bs)=0\mathbf1^{\prime}(\mathbf b-\mathbf s)=0
  • 双边换手上限1(b+s)τ\mathbf1^{\prime}(\mathbf b+\mathbf s)\le\tau,其中 τ\tau 与报告采用同一换手定义。
  • 持仓边界lh0+bsu\mathbf l\le\mathbf h_0+\mathbf b-\mathbf s\le\mathbf u
  • 暴露约束:行业、beta 或其他因子暴露在交易后仍位于指定区间。

成本增加时,活跃交易名单通常缩短,已有交易规模也收缩;协方差与共同约束存在时,单只股票的交易量不必随换手预算单调变化。数值结果需要同时检查可行性、最优性条件、求解容差和单位一致性。

4. 目标持仓不等于必然成交#

  • 目标持仓(Target Holding):组合优化在指定信息集、风险模型、成本估计和约束下给出的期望交易后头寸。
  • 实际持仓(Actual Holding):截至评价时点,由已成交订单形成的头寸。

两者之间的差额可能来自限价未触发、部分成交、流动性骤降、借券失败或执行中重新估计 alpha。

限价单可能降低价差与冲击,却把成本转移为不成交风险。订单评估必须保留母单、子单、取消、部分成交和未成交记录,并按决策时信息构造反事实基准;只分析成交记录会产生选择偏差。全日成交量在开盘时尚不可得,历史回放若用日终真实成交量设定早盘参与率,也会产生前视偏差。

第三节 最优交易路径与实施评价#

1. 单资产执行目标#

最优交易路径(Optimal Trading Path) 是在给定目标交易和执行期限内,使预期收益损失、未完成头寸风险与交易成本的加权目标最小的累计成交轨迹。它决定“何时成交多少”,不重新定义“最终应持有多少”。

令带符号目标交易为 x=Δw0x=\Delta w\ne0,在 [0,T][0,T] 内完成;h(t)h(t) 是累计完成比例,满足 h(0)=0h(0)=0h(T)=1h(T)=1。原书的连续时间目标可等价写为最小化:

K[h,T]=0T{αx[1h(t)]+λ2σ2x2[1h(t)]2+cx+ψx2h˙(t)2}dtK[h,T] =\int_0^T \left\{ \alpha x[1-h(t)] +\frac{\lambda}{2}\sigma^2x^2[1-h(t)]^2 +c|x| +\psi x^2\dot h(t)^2 \right\}dt

其中:

  • xx:以组合权重表示的总交易,x>0x>0 为买入,x<0x<0 为卖出。
  • h(t)h(t)h˙(t)\dot h(t):截至 tt 的累计完成比例与瞬时交易速度。
  • α\alpha:单位时间的事前收益率预测,αx>0\alpha x>0 表示交易方向与预测一致。
  • σ2\sigma^2:单位时间收益率方差,λ>0\lambda>0 衡量对未完成头寸风险的厌恶。
  • cxc|x|:单位执行时间的线性成本;积分后为 cxTc|x|T,这是“交易期越长、下单批次越多”的模型假设,不是会计恒等式。
  • ψx2h˙(t)2\psi x^2\dot h(t)^2:瞬时二次冲击成本,ψ>0\psi>0
  • TT:执行期限,时间单位与 α\alphaσ2\sigma^2 和成本参数一致。

αx>0\alpha x>0 时,等待损失随未完成比例增加;αx<0\alpha x<0 时,模型会奖励延迟,说明目标交易与最新预测相冲突,应先重新验证目标,而不是机械延长订单。快速成交降低 alpha 损失和未完成风险,却以更高冲击为代价。

2. 固定期限的路径形状#

对上一目标应用 Euler–Lagrange 条件,定义:

s=α2ψx,g2=λσ22ψs=\frac{\alpha}{2\psi x}, \qquad g^2=\frac{\lambda\sigma^2}{2\psi}

固定 TT 时的内部解满足常微分方程:

h¨(t)g2h(t)=sg2,h(0)=0,h(T)=1\ddot h(t)-g^2h(t)=-s-g^2, \qquad h(0)=0,\quad h(T)=1

三个特例给出可直接复述的路径方向:

  • s=g=0s=g=0 时,h(t)=t/Th(t)=t/T,只剩二次冲击,最优速度恒定。
  • g=0g=0 时,h(t)=t/T+(s/2)t(Tt)h(t)=t/T+(s/2)t(T-t)s>0s>0 表示交易与 alpha 一致,路径前置,s<0s<0 时路径后置。
  • s=0s=0g>0g>0 时,h(t)=1sinh(g(Tt))/sinh(gT)h(t)=1-\sinh(g(T-t))/\sinh(gT);未完成风险使路径相对匀速方案前置。

下图以归一化时间展示方向,不代表历史成交数据。曲线的位置由预测方向、风险厌恶和冲击共同决定。

t / T h(t) 0 0.5 1 50% 100% s > 0 s = g = 0 s < 0
图 12-2:固定期限下的累计成交路径。交易方向与 alpha 一致时,路径位于匀速线上方;仅有二次冲击时匀速成交;交易与 alpha 相反时,内部解位于匀速线下方。曲线采用 T=1、g=0、s=1.6、0、-1.6 的教学参数,并均满足起点与终点边界。

上述微分方程给出未加路径约束的内部解;s|s| 过大或期限过长时,数学解可能超过 [0,1][0,1],隐含先超额交易再反向回补。实际执行通常施加 0h(t)10\le h(t)\le1h˙(t)0\dot h(t)\ge0、参与率和最小成交单位等约束,此时需用数值最优控制求解。

3. 最优期限与篮子同步#

若执行期限也可选择,令 cw=c/xc_w=c/|x|。自由终点的横截条件为:

h˙(T)=cwψ\dot h(T)=\sqrt{\frac{c_w}{\psi}}

s=g=0s=g=0 的最简情形,总成本为 cwT+ψ/Tc_wT+\psi/T,因此:

T=ψcwT^*=\sqrt{\frac{\psi}{c_w}}

冲击系数或交易规模提高通常延长最优期限;与交易同向的 alpha、未完成风险厌恶或每期固定成本提高通常缩短期限。若 cw=0c_w=0 且 alpha 与风险也被忽略,模型会令 TT\to\infty 以消除冲击,这个退化结果说明有限期限必须由真实的等待代价或制度约束支撑。

多股票订单不能逐只独立安排。令 x=Δh\mathbf x=\Delta\mathbf hD=diag(x)\mathbf D=\operatorname{diag}(\mathbf x),并在有交易的股票子空间定义:

Σx=DΣD,Ψx=DΨD,αx=Dα\boldsymbol\Sigma_x=\mathbf D\boldsymbol\Sigma\mathbf D, \qquad \boldsymbol\Psi_x=\mathbf D\boldsymbol\Psi\mathbf D, \qquad \boldsymbol\alpha_x=\mathbf D\boldsymbol\alpha

z(t)\mathbf z(t) 是各股票的累计完成比例向量,篮子内部解满足:

2Ψxz¨(t)λΣxz(t)=αxλΣx12\boldsymbol\Psi_x\ddot{\mathbf z}(t) -\lambda\boldsymbol\Sigma_x\mathbf z(t) =-\boldsymbol\alpha_x-\lambda\boldsymbol\Sigma_x\mathbf1

其中 α\boldsymbol\alphan×1n\times1 单位时间 alpha 向量,Σ\boldsymbol\Sigman×nn\times n 单位时间主动收益协方差矩阵,Ψ\boldsymbol\Psin×nn\times n 交叉冲击矩阵。缩放后的对象为:

  • Σx\boldsymbol\Sigma_x:未完成交易所对应的收益协方差矩阵。
  • Ψx\boldsymbol\Psi_x:按目标交易规模缩放后的交叉冲击矩阵。
  • αx\boldsymbol\alpha_x:目标交易方向上的预测收益贡献向量。
  • z(0)=0,z(T)=1\mathbf z(0)=\mathbf0,\mathbf z(T)=\mathbf1:篮子从未成交到全部完成的边界条件。

Ψx\boldsymbol\Psi_x 在交易子空间可逆时,解可分解为 Ψx1Σx\boldsymbol\Psi_x^{-1}\boldsymbol\Sigma_x 的广义特征模态。高度相关的买卖腿可能需要同步以控制中途 beta 或行业暴露,流动性差异又要求不同速度;路径约束必须在每个时点检查,而不能只保证终点组合可行。

4. 实施差额#

实施差额(Implementation Shortfall, IS 是实际订单相对决策时纸面订单的财富差额,按“正值表示执行损失”计量,并把已成交价格损失、未成交机会损失与显性费用放在同一货币口径。原书主要讨论收益短缺与最优路径;以下 IS 公式是连接决策与事后审计的教材级补充。

令成交数量均取绝对值,货币 IS 为:

IS=sd[jqj(pjp0)+(Qjqj)(pTp0)]+FIS=s_d\left[ \sum_jq_j(p_j-p_0) +\left(Q-\sum_jq_j\right)(p_T-p_0) \right]+F

其中:

  • sds_d:订单方向,买入为 +1+1,卖出为 1-1
  • Q>0Q>0:母单绝对数量,qj0q_j\ge0 是第 jj 笔成交的绝对数量。
  • p0p_0:投资经理决定交易且订单规模可执行时的决策价。
  • pjp_j:第 jj 笔成交价,pTp_T 是评价截止时未成交部分的估值价格。
  • FF:佣金、税费和其他显性货币费用。

除以 Qp0Qp_0 得相对母单名义金额的成本率,除以组合市值得到对组合收益的拖累。基准价格、订单方向、数量和评价截止时间必须事前固定;到达价可进一步分离决策延迟,但不能事后挑选最有利的基准。

例:部分成交的 IS

一笔买入母单 Q=1,000Q=1{,}000 股,决策价为 100 元;其中 800 股以 100.20 元成交,截止价为 100.50 元,显性费用为 20 元。则:

IS=800(100.20100)+200(100.50100)+20=280 元IS=800(100.20-100)+200(100.50-100)+20=280\text{ 元}

相对母单名义金额的成本为 280/(1,000×100)=28 bp280/(1{,}000\times100)=28\text{ bp};其中未成交部分贡献 100 元机会损失。

5. 从预测 alpha 到实现主动收益#

事前成本感知预测可写为:

α^net=αhC^trade(Δh)C^financeC^delay\widehat\alpha_{net} =\boldsymbol\alpha^{\prime}\mathbf h^* -\widehat C_{trade}(\Delta\mathbf h) -\widehat C_{finance} -\widehat C_{delay}

其中 α^net\widehat\alpha_{net} 是相对指定基准、指定期限的预测净 alpha,不是事后实现收益;帽号表示所有输入均为决策时估计值。C^trade\widehat C_{trade} 包含显性成本、价差与冲击,C^finance\widehat C_{finance} 包含融资和借券,C^delay\widehat C_{delay} 包含预期延迟与未成交损失。

端到端审计按真实时序连接 point-in-time 数据与股票池、信号和样本外 IC、风险模型与基准、目标持仓与约束、订单净额、成交与未成交、借券和融资、事前成本估计、事后 IS,最后把实现主动收益归因到预测、风险暴露、约束、交易成本与意外冲击。事前成本模型要用后续成交数据滚动校准,但历史决策只能使用当时可得的参数版本。

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

评论区

Profile Image of the Author
罗小饭
AI 软件开发工程师,热爱编程、开源与折腾,长期记录 AI、网络、软路由、博客搭建和云服务实践中的经验与思考。
公告
欢迎来到我的博客!这是一则示例公告。
分类
标签
站点统计
文章
47
分类
5
标签
144
总字数
526,682
运行时长
0
最后活动
0 天前

文章目录