halo 的技术博客

返回

先说结论:线性 AR 模型假设市场对涨跌的反应是对称的——同一个自回归系数既管上涨也管下跌。但实证事实是:大跌之后反转倾向强,上涨之后延续倾向弱,两边根本不是一套动力学。门限自回归(TAR,Threshold Autoregression)用一个门限值把状态空间切成两段,每段各配一套 AR 系数,让「昨天处于什么状态」决定「今天用哪个模型」。 在合成 SETAR 数据上实测:下状态斜率估出 −0.20(均值回归)、上状态 +0.36(动量延续),线性 AR 只能给一条”平均直线”把两种动力学全部拟丢;样本外择时回测中 TAR 择时 Sharpe 4.69,高于线性 AR 择时的 4.19 和买入持有的 4.46,最大回撤从 −7.6% 收窄到 −6.1%。但门限估计本身的抽样误差不小——真实门限 0,全样本估出 −0.0034,这个误差在实盘里就是信号错位。

TAR:门限两侧是两个完全不同的世界

一、线性 AR 的原罪:一条直线管两个世界#

标准 AR(1) 写作 yt=ϕ0+ϕ1yt1+εty_t = \phi_0 + \phi_1 y_{t-1} + \varepsilon_t。这个模型有一个几乎从不被明说的假设:ϕ1\phi_1 对所有 yt1y_{t-1} 都一样。昨天涨 3% 和昨天跌 3%,模型给出的”延续强度”是同一个数。

但市场的经验事实恰恰相反:

  • 恐慌下跌后:超卖反弹、抄底盘进场,短期均值回归强(负自相关);
  • 温和上涨中:趋势资金追涨,动量延续(正自相关);
  • 政策底/流动性冲击:反应速度完全不对称。

把这两种动力学塞进一个系数,得到的是两边都不像的”平均”。这不是参数估计误差,是模型设定错误

二、TAR:让状态决定模型#

TAR 的想法极其直接。以最常用的两状态 SETAR(Self-Exciting TAR,转移变量是序列自身滞后)为例:

yt={ϕ0(L)+ϕ1(L)yt1+εt,ytd<cϕ0(H)+ϕ1(H)yt1+εt,ytdcy_t = \begin{cases} \phi_0^{(L)} + \phi_1^{(L)} y_{t-1} + \varepsilon_t, & y_{t-d} < c \\ \phi_0^{(H)} + \phi_1^{(H)} y_{t-1} + \varepsilon_t, & y_{t-d} \ge c \end{cases}

三个要素:门限 cc(切在哪)、延迟 dd(用几期前的值判断状态)、两套 AR 系数。给定 cc,两段各自就是普通 OLS;难的只有 cc 本身——它不可导,只能网格搜索:

两个工程细节值得强调:

  1. trim(截尾):候选门限只在 15%~85% 分位之间取,保证两段都有足够样本,否则极端门限下小状态只剩几个点,系数纯属噪声;
  2. 每段最少样本数硬约束:这不是可选项,是防止过拟合的底线。

三、实验:线性 AR 拟丢了什么#

生成 2000 期 SETAR 数据:下状态(yt1<0y_{t-1}<0)斜率 −0.45(强均值回归),上状态斜率 +0.35(动量延续),噪声 σ=1%。

估计结果:网格搜索找到门限 −0.0034(真值 0),下状态斜率 −0.20、上状态 +0.36。上状态几乎精确恢复;下状态斜率偏浅,因为门限估偏导致部分上状态样本混入下状态,把负斜率”稀释”了——这正是门限抽样误差的直接代价。

网格搜索门限:RSS 曲线

RSS 曲线在真实门限附近有一个清晰的洼地,SETAR 把残差平方和比线性 AR 压低 3.4%。这个数字看起来不大,但要点在于:收益预测的 R² 本来就以 1% 计,3.4% 的 RSS 改善在信号层面是显著的结构增益,而且它来自模型形状的修正,不是参数微调。

四、样本外择时:不对称结构能变成钱吗#

前 1000 期训练(重新估门限与系数),后 999 期样本外。策略规则:TAR 一步预测 > 0 持有,否则空仓;对照组是线性 AR 择时和买入持有。

样本外择时对比

指标TAR 择时线性 AR 择时买入持有
终值16.7613.5517.06
Sharpe4.694.194.46
最大回撤−6.1%−7.6%
仓位暴露87.8%95.5%100%

三个读法:

  • 终值上 TAR 略输买入持有(16.76 vs 17.06)——这份合成数据整体漂移为正,任何择时都要付”踏空成本”。TAR 赢的是风险调整后收益:用 87.8% 的暴露拿到更高 Sharpe、更浅回撤;
  • TAR 相对线性 AR 的增益是纯结构增益:两者用同样的数据、同样的规则,唯一区别是 TAR 知道”下跌后该用反转逻辑”。线性 AR 的单一系数在下状态给出系统性错误的方向预测;
  • Sharpe 绝对值(4+)是合成数据信噪比高的产物,实盘日频择时能到 1 已经很好,看相对排序,别看绝对值

五、已知的坑:TAR 不是免费午餐#

门限的抽样误差比你想的大。 门限估计量收敛速度虽快(超一致,n 阶而非 √n 阶),但小样本下波动仍然可观——本实验 2000 个点,真值 0 估出 −0.0034,相当于 0.34 个日波动。门限错位意味着状态判断在边界附近系统性出错。

门限检验不是普通 t 检验。 检验”是否存在门限效应”时,零假设(线性)下门限参数 cc 不可识别,标准渐近分布失效,必须用 Hansen (1996) 的 bootstrap 上确界检验。直接看两段系数的 t 值差异会严重高估显著性——这是 TAR 文献里最常被忽略的一步。

两段样本不平衡是常态。 实盘数据里”极端状态”天然稀少,小状态可能只有全样本的 10%,那一段的系数标准误会大到没有实用价值。对策:要么把门限往中位数方向 trim,要么接受”小状态只做方向判断、不做精细预测”。

状态数与延迟 d 都是超参数。 本文固定两状态、d=1,实际应用中三状态(跌/盘/涨)和 d>1 都可能更优,但每加一个自由度,过拟合风险翻一倍,需要用 AIC/BIC 加样本外验证共同约束。

六、拆穿几个流行误读#

“门限 = 拐点,找到门限就找到了买卖点”。 错。门限是条件动力学切换的位置,不是价格拐点。yt1y_{t-1} 穿过门限只说明”预测模型换了一套系数”,方向信号仍取决于该状态下的完整预测值。

“RSS 只降 3.4%,模型没用”。 拟合优度的边际改善和交易价值不是线性关系。择时策略只需要在符号判断上做对更多——本实验中 3.4% 的 RSS 改善换来了 Sharpe 从 4.19 到 4.69、回撤收窄 1.5 个百分点。

“TAR 一定赢线性”。 只在数据真有门限结构时成立。若真实过程是线性的,TAR 多出来的参数就是纯过拟合,样本外必然反噬。先做 Hansen 检验确认非线性显著,再上 TAR——顺序不能反。

“合成实验赢了,实盘照搬”。 本文数据生成过程和估计模型同族(都是 SETAR),这是模型正确设定下的上限演示。实盘序列的非线性未必长成门限型(可能是平滑过渡、可能是时变系数),TAR 只是非线性工具箱里最简单的一把刀。

七、总结#

TAR 的核心贡献是把”市场反应不对称”这个人尽皆知的定性观察,变成了一个可估计、可检验、可回测的定量结构:一个门限、两套系数、网格搜索即可估计。它的代价同样清楚:门限抽样误差、非标准推断、小状态样本稀缺。把它当成线性 AR 之后的第一步非线性升级——而不是终点——是最合理的定位。

门限自回归 TAR 非线性建模:用状态依赖的回归捕捉市场不对称反应
https://blog.halo26812.eu.org/blog/threshold-autoregression-tar
Author halo
Published at 2026年7月24日
版权声明 CC BY-NC-SA 4.0
Comment seems to stuck. Try to refresh?✨