1923 字
10 分钟

期货与 CTA 策略:趋势、期限结构与组合价值

本课目标:理解期货的保证金与双向交易机制,掌握 CTA 趋势跟踪的三要素——信号、波动率目标、多品种分散,认识期限结构与展期收益,并理解 CTA 对股票策略投资者的组合价值。

期货:一个对量化更友好的交易场#

从股票转向期货,交易机制上有三个根本变化:

  • 保证金交易:只需缴纳合约价值一定比例的保证金即可持仓,天然自带杠杆。杠杆是中性的工具——它放大收益也放大亏损,真正重要的是你主动控制杠杆,而不是被杠杆控制。
  • 做空与做多同样便利:没有券源限制,卖开仓和买开仓完全对称。这意味着下跌趋势和上涨趋势同样是机会,策略空间天然是股票的两倍。
  • T+0 与到期机制:日内可自由开平,但合约有到期日,持续持仓必须”展期”——把即将到期的合约平掉、换到远月合约上。

国内期货市场覆盖商品(黑色、有色、能化、农产品等)、金融(股指期货、国债期货)两大类几十个活跃品种,品种间驱动逻辑差异大,这正是后面讲分散时的原料。

CTA 趋势跟踪:一套朴素但完整的框架#

CTA(商品交易顾问)策略中最主流的是趋势跟踪:不预测趋势何时开始,只识别趋势已经存在,然后顺势持有直到趋势结束。哲学上它是”截断亏损、让利润奔跑”的系统化版本:单次胜率往往不高,靠少数大趋势的丰厚利润覆盖多数小止损。

一个最小可行的框架由三部分组成:

信号层:常用双均线交叉、通道突破、过去 N 日收益率符号等。不同信号在细节上有差异,但捕捉的是同一类现象——价格的中期持续性。

波动率目标层:这是 CTA 工程上的精髓。各品种波动率差异巨大,如果每个品种下同样手数,组合风险会被高波动品种绑架。做法是给每个品种设定风险预算,按其近期波动率反推仓位:

import numpy as np
def trend_position(close, fast=20, slow=120,
target_vol=0.10, capital=1e7):
"""双均线趋势信号 + 波动率目标仓位"""
sig = np.sign(close.rolling(fast).mean() - close.rolling(slow).mean())
ret = close.pct_change()
realized_vol = ret.rolling(60).std() * np.sqrt(250)
# 波动越高仓位越小, 使该品种贡献的风险大致恒定
weight = target_vol / realized_vol.clip(lower=0.05)
return sig * weight * capital / close

波动率目标带来一个附加好处:市场剧烈动荡、波动率飙升时,仓位自动收缩,相当于内置了一层风控。

分散层:单品种趋势策略的净值通常难看,CTA 的可投资性几乎完全来自多品种分散。黑色系、农产品、贵金属、股指、国债的趋势各有自己的宏观驱动,彼此相关性低,几十个品种叠加后,“总有几个品种在走趋势”的概率大大提高,组合净值远比单品种平滑。

期限结构与展期收益:另一个收益维度#

同一品种不同到期月份的合约价格连起来,就是期限结构

形态特征持仓的展期含义
贴水(back)远月比近月便宜多头展期是”卖贵买便宜”,随时间获得正向滚动收益
升水(contango)远月比近月贵多头展期持续支付成本,空头则反之

期限结构反映了库存、仓储成本与市场对远期供需的预期。它的重要性有两层:其一,长期持有期货的总收益中,展期损益的贡献可能不亚于价格涨跌本身,忽略它的回测是错的;其二,期限结构本身可以做成因子——在贴水品种上偏多、升水品种上偏空的”期限结构策略”,与趋势信号相关性不高,是 CTA 组合里常见的第二条腿。

CTA 对股票投资者的组合价值#

对已经运行股票策略的人,CTA 最大的意义不在其自身收益,而在相关性。CTA 的收益来源(商品与宏观趋势)与股票市场beta 的驱动因素差异很大,两类策略的长期相关性通常很低;尤其在股票市场持续下跌的阶段,趋势跟踪可以通过做空股指或商品捕捉下跌趋势,历史上多次危机时期表现出”危机阿尔法”的特征——当然这是特性描述,不是保证。

组合层面的算术很直接:把两个低相关的收益流按风险预算组合,整体波动的下降幅度超过收益的稀释幅度,风险调整后收益改善。这正是前面组合构建课里”分散是唯一免费午餐”在策略层面的应用——分散不仅可以发生在股票之间,更可以发生在策略类型之间。

风险点:趋势策略最怕的市场#

趋势跟踪的痛苦形态非常明确——震荡市。价格反复突破又反复回落,策略不断开仓、止损、反向开仓、再止损,净值被一刀一刀”钝刀割肉”。这不是缺陷,而是这类策略的成本结构:用震荡期的持续小额亏损,换取趋势期的大额盈利。几点务实认知:

  1. 回撤期可能以年计,投资 CTA 需要与之匹配的耐心和事前的心理建设。
  2. 不要在震荡市里手工干预信号——“这次先不开仓了”式的干预会精准错过下一波趋势,摧毁策略的统计基础。
  3. 品种流动性差异大,小品种的趋势信号可能因冲击成本无法变现,容量评估要落到每个品种。
  4. 杠杆纪律高于一切:保证金交易下,风控失效的代价不是回撤,而是穿仓出局。

本文为策略框架讨论,不构成投资建议。

本课小结#

  • 期货的保证金与双向交易机制为量化提供了做空便利与杠杆工具,代价是必须管理展期与杠杆纪律。
  • CTA 趋势跟踪 = 趋势信号 + 波动率目标仓位 + 多品种分散,三者缺一不可,分散是可投资性的来源。
  • 期限结构决定展期损益,既是回测必须计入的成本项,也可以独立构成低相关的策略信号。
  • CTA 与股票策略低相关,在组合层面提供真正的分散价值,历史上在股票熊市阶段常有独立表现。
  • 震荡市的连续止损是趋势策略的固有成本,靠纪律和长期视角消化,而不是靠临时干预回避。

动手练习:选取三个不同板块的活跃期货品种(如一个黑色、一个农产品、一个股指),用后复权的主力连续合约数据:(1) 实现 20/120 双均线趋势信号并加上波动率目标仓位;(2) 分别回测单品种与等风险组合的净值,对比最大回撤与收益波动比;(3) 找出组合中最长的回撤区间,观察那段时间三个品种是否同时处于震荡状态,并思考再增加品种能否缓解。