2026年十月1日 · 研究

卖掉明日赢家的再平衡:换手率拆解

卖掉明日赢家的再平衡:换手率拆解

月度动量策略即使能正确排列资产,也仍可能算出虚幻的交易成本。缺失的环节是再平衡:把昨日的持仓和今日的目标权重转换成实际订单。下面用4种流动性较好的加密货币现货资产做个小型拆解,数字简单到可以手工核对。

假设有一个$100,000的投资组合,只做多,每月再平衡。组合持有过去收益率排名前两位的资产,权重相等。上次再平衡时,A和B各持有价值$50,000的资产。一个月后,价格变动,组合价值达到$110,000:A现在价值$60,000,B价值$50,000。新排名将B和C列入前两位。组合目前还没有持有C。

排名行:哪些资产该进入组合?

信号要求持有B和C,各占50%。按当前组合价值计算,两者的目标持仓金额各为$55,000。排名变化告诉我们该持有哪些资产,却没有告诉我们该交易多少。这取决于再平衡前已有的持仓。

资产当前价值目标价值订单
A$60,000$0卖出 $60,000
B$50,000$55,000买入 $5,000
C$0$55,000买入 $55,000
合计$110,000$110,000交易额 $120,000

留意这个容易忽略的细节:组合继续持有B,但仍需下达$5,000的订单来恢复目标权重。只交易新增和剔除资产的回测,会漏掉这次漂移修正。

订单行:产生了多少换手?

交易总名义金额等于买入和卖出的总和:$60,000 + $5,000 + $55,000 = $120,000。除以$110,000的组合价值后,这次再平衡的总换手率为109.1%。如果策略报告单边换手率,也可以除以2,把卖出并再投资视为一次轮换。两种口径都可以,但要明确标注,并使用相匹配的成本公式。

假设所有订单都以taker方式成交,每边手续费为0.10%。手续费共$120。若假设每边价格冲击为0.15%,预计还会产生$180的冲击成本。再平衡总成本为$300,约占组合价值的27个基点。如果直接从交易总名义金额中扣除0.25%,这里同样得到$300。只有在对每一笔交易金额都一致地应用手续费和冲击成本假设时,这种简化算法才成立。

109.1%每次再平衡的总换手率
27 bp预计组合成本

这些只是估算假设,并非实际成交。价格冲击通常取决于订单规模相对于市场成交量的大小,用一个固定费率可能会严重低估最大订单的成本。在流动性充足的市场买入$55,000或许轻而易举;同样金额的订单若涉及流动性稀薄的代币,就可能一路扫过订单簿。如果策略只按排名确定仓位规模,可能会不知不觉地把大部分交易导向流动性最差的资产。

时点行:策略实际能以什么价格成交?

这个例子里还藏着另一个陷阱。如果排名使用月末收盘价,那么这些价格要到收盘后才最终确定。策略不可能既看到完整排名,又按同一收盘价成交。一种站得住脚的模拟方法是在收盘时计算目标,并在下一个交易时段开盘时执行,同时对产生的订单计入成本。对于全天候交易的加密货币,应定义截止时间和之后的执行窗口;“月末收盘”需要明确时区和实际下单时间。

这段延迟可能改变持仓,进而改变订单。如果执行前A继续上涨,卖出名义金额就会增加;如果C价格跳涨,买入成本也会更高。应根据下单时的组合价值和可执行价格重新计算目标数量。如果把收盘时的目标金额原封不动地保留下来,却推迟执行时点,目标权重就会在不知不觉中改变。

账簿行:成本是否从组合中扣除?

成交后,从现金余额或权益中扣除$300。此时,后续市场变动发生前,组合价值为$109,700。如果模拟器只从收益中扣成本,却不调整现金,后续仓位规模计算就可能花掉已经被消耗的资金。应在同一份账簿中记录订单、成交、手续费和持仓;否则下一次再平衡可能会从一个从未真实存在过的组合开始。

针对这个例子,我会为每种资产记录信号时间戳、目标权重、交易前持仓、订单名义金额、成交价格、手续费和冲击成本估算。然后将计算得出的换手率与成交名义金额的直接合计进行对照。这样可以发现那些常见错误:漏掉保留资产的权重漂移、对单边换手率重复计费,以及把目标权重当成实际成交。

再平衡把组合规则转化为一组交易。把每一步转换写清楚,保留账簿,并明确换手率口径。这样得出的回测可能没那么漂亮,但至少描述的是策略实际可能下达的订单。

投资组合再平衡换手率回测交易成本策略研究
← 全部文章