CTA策略

CTA 状态机别只看趋势和波动,把换月成本、切换摩擦和容量约束一起状态化才更像实盘

结合近期调度、可靠性与研究闭环讨论,解释为什么 CTA 状态机需要把执行摩擦一起状态化,而不是只做行情层面的状态识别。

2026-04-0910分钟
很多 CTA 研究已经不满足于单一均线或单一波动过滤器,开始把市场划分成趋势、震荡、高波动、低波动、多资产联动等不同状态。这当然是一种进步,因为它让策略开始尊重环境差异。但问题在于,很多状态机只把行情结构写进去,却把真正决定上线质量的执行摩擦留在状态外面。换月成本、持仓切换的冲击、容量上限、滑点非线性、流动性收缩,这些都被当作“之后再加的惩罚项”,而不是状态定义的一部分。于是研究系统以为自己在描述真实环境,实际上只描述了价格环境。
这也是为什么同一套状态机,在回测里看起来非常聪明,到了实盘仿真或真实部署时却迅速掉速。不是状态机没用,而是它忽略了真正改变动作可行性的那部分现实。全流程高级班里一直强调策略闭环不是信号结束于回测,而是信号必须经过执行和风控的真实约束。CTA 状态机如果不把这些摩擦一起写进状态,闭环就永远断在“看懂行情”与“能不能做动作”之间。
  • 只对行情分状态,不足以支撑实盘化 CTA
  • 换月、切换和容量摩擦会直接改变动作可行性
  • 状态机若忽略执行现实,回测容易系统性乐观

更接近实盘的做法,是把“环境状态”和“动作成本状态”联合建模

一个更成熟的 CTA 状态机,至少要把两类对象同时写进去。第一类是环境状态,比如趋势方向、期限结构、波动水平、相关性和资金流。第二类是动作成本状态,比如当前换月窗口、合约流动性、预期切换频率、单位仓位冲击和容量占用率。真正的状态不是单看价格就能决定的,而是要问:在这个行情环境下,以当前的动作成本和执行压力,我们还能不能做同样的调仓动作?
这样一来,状态机输出的就不再只是“多空判断”,而是一个更接近实盘控制的问题:该不该进、该不该减、该不该延后、该不该只保留核心腿。决策矩阵会比简单分类器更适合这类问题,因为它天然要求你把目标、约束和代价写在一张表里。对 CTA 课程和全流程课程来说,这一步尤其关键,因为它把研究语言从“看对行情”升级成“在真实摩擦下还能不能执行”。
  • CTA 状态应由环境状态和动作成本状态联合定义
  • 状态机输出应从方向判断升级为动作可行性判断
  • 决策矩阵比单纯分类器更适合表达 CTA 实盘约束

当摩擦被状态化后,CTA 研究才更容易和部署、风控、容量管理接上

一旦把执行摩擦纳入状态机,研究、部署和风控的语言就更容易统一。研究员不再只汇报“这个状态下 Sharpe 更高”,而会同时说明“这个状态下仓位切换成本更低、换月压力更可控、容量边界还没被顶到”。部署侧也不需要把研究结论重新翻译成执行规则,因为状态定义里已经内含了动作可行性。容量管理也不再只是事后加一道限制,而是直接参与状态划分。
这就是为什么越来越多成熟 CTA 研究不再满足于“状态分类更细”,而开始追求“状态定义更像真实交易控制”。对于学院内容来说,这种角度比单纯谈某个指标或某个模型更有长期价值,因为它能直接帮助学习者把研究语言接到实盘语言上。
  • 摩擦状态化会统一研究、部署和风控语言
  • 容量管理应前置到状态定义,而不是后置成惩罚项
  • 更成熟的 CTA 状态机,本质上更像交易控制系统

关键结论

  • CTA 状态机不能只看行情,还要把执行摩擦一起状态化。
  • 更成熟的状态定义应联合环境状态与动作成本状态。
  • 当摩擦进入状态机,研究、部署和风控才更容易真正闭环。

关联课程

如果你想把这篇文章里的方法系统化学习,可以从这些课程继续深入。

继续阅读

微信:446860105