halo 的技术博客

返回

先说结论:TAR 的硬门限有个尴尬的隐含假设——yt1y_{t-1} 从 −0.0001 变到 +0.0001 的瞬间,模型系数整套跳变。市场没有这种开关。STAR(Smooth Transition Autoregression)用一个逻辑过渡函数 G(γ,c)G(\gamma, c) 把两套 AR 系数连续混合:γ\gamma 大就是硬切换(退化成 TAR),γ\gamma 小就是渐变,让数据自己决定 regime 边界该多软。 合成数据实测:估出 γ^=2.5\hat\gamma=2.5(明确的软边界),RSS 比线性 AR 低 4.4%。但 STAR 真正的交易红利不在拟合,而在仓位端:过渡函数天然输出 0~1 的连续状态权重,直接映射成仓位——软仓位择时样本外 Sharpe 4.95,碾压硬 0/1 仓位的 4.19,最大回撤从 −10.0% 收窄到 −5.2%,平均仓位只有 53%。代价也要说清:γ\gammacc 的联合估计是出了名的病态,本实验训练集就把真值 2.5 估成了 6。

逻辑过渡函数:γ 控制切换的软硬

一、硬门限的物理缺陷#

上一篇 TAR 把状态空间一刀切成两段。这一刀在数学上干净,在金融上却别扭:

  • 门限两侧无穷小的邻域里,预测值可以不连续跳变——今天 yt1=105y_{t-1}=-10^{-5} 用反转模型、明天 yt1=+105y_{t-1}=+10^{-5} 用动量模型,但这两天的市场状态实际上没有任何区别;
  • 参与者的行为切换是渐进的:恐慌不是在某个精确点位瞬间爆发,追涨盘也不是过了某条线才集体进场;
  • 硬边界让策略信号在门限附近高频抖动,实盘换手被无意义地放大。

二、STAR:把指示函数换成 S 形曲线#

LSTAR(Logistic STAR)把 TAR 的指示函数 1(yt1c)\mathbb{1}(y_{t-1} \ge c) 换成逻辑函数:

yt=(ϕ0+ϕ1yt1)(1G)+(θ0+θ1yt1)G+εty_t = (\phi_0 + \phi_1 y_{t-1})\big(1 - G\big) + (\theta_0 + \theta_1 y_{t-1})\, G + \varepsilon_t G(yt1;γ,c)=11+exp ⁣(γ(yt1c)/s)G(y_{t-1}; \gamma, c) = \frac{1}{1 + \exp\!\big(-\gamma (y_{t-1} - c)/s\big)}

其中 ss 是转移变量的标准差(让 γ\gamma 无量纲、跨数据可比)。两个关键参数:

  • cc:过渡中心,G(c)=0.5G(c) = 0.5 的位置;
  • γ\gamma:过渡陡峭度。γ\gamma \to \inftyGG 退化成阶跃函数——TAR 是 STAR 的极限特例γ0\gamma \to 0GG 趋于常数——退化回线性 AR。

这个嵌套关系是 STAR 最优雅的地方:硬切换、软切换、无切换,全在一个参数族里,让数据投票

估计上,给定 (γ,c)(\gamma, c),模型对其余系数是线性的(设计矩阵 [1,yt1,G,Gyt1][1, y_{t-1}, G, G\cdot y_{t-1}] 的 OLS),所以用双重网格搜索外层、OLS 内层:

γ\gamma 网格要用对数间隔(0.5 到 40),因为 GGγ\gamma 的敏感度随 γ\gamma 增大急剧下降——γ=20\gamma=20γ=40\gamma=40 的曲线几乎重合,这正是后面要讲的识别问题的根源。

三、实验:软边界被正确找回#

生成 2000 期 LSTAR 数据:下状态斜率 −0.50(超跌强反弹)、上状态 +0.30(温和动量),真实 γ=2.5\gamma=2.5——一条明确的软边界。

估计结果:全样本估出 γ^=2.5\hat\gamma=2.5c^=0.0076\hat c=0.0076,斜率系数 ϕ^1=0.41\hat\phi_1=-0.41ϕ^1+θ^1=+0.04\hat\phi_1+\hat\theta_1=+0.04。过渡陡峭度精确恢复;条件斜率从下状态的 −0.41 连续爬升到上状态——右图那条红色 S 形斜率曲线就是 STAR 相对 TAR 的全部增量信息:TAR 只能给两条水平虚线,STAR 告诉你两条线之间怎么走

同一份数据三种拟合

拟合优度对比:STAR 的 RSS 比线性 AR 低 4.4%,比硬 TAR 低 0.015%。注意这个对比的含义——在拟合层面 STAR 相对 TAR 的优势很小,因为 TAR 的折线在大部分区域和 S 曲线重合,只在过渡带内有差异。STAR 的真正价值不在这里。

四、真正的红利:G 函数就是仓位#

TAR 输出的状态是离散的(0 或 1),STAR 输出的 GG 是连续的 0~1——这天然就是一个状态置信度,可以直接映射成仓位。

前 1000 期训练、后 999 期样本外,两种规则同台:

  • 硬仓位:预测 > 0 满仓,否则空仓(TAR 式 0/1);
  • 软仓位:仓位 = clip(预测值 / 波动尺度, 0, 1),预测越强仓越重。

样本外:连续仓位 vs 0/1 仓位

指标STAR 软仓位硬 0/1 仓位买入持有
终值7.3212.9612.96
Sharpe4.954.194.19
最大回撤−5.2%−10.0%−10.0%
平均仓位53%~100%100%

读法要诚实:

  • 软仓位终值更低但 Sharpe 更高——它用一半的平均仓位拿到了更高的单位风险回报,回撤直接砍半。终值差距是仓位杠杆差距,把软仓位等波动放大后优势会体现在收益端;
  • 这份测试集里硬仓位几乎从不空仓(预测大部分时间为正),所以硬仓位曲线和买入持有重合——硬门控在温和市场里退化成”永远满仓”,连续仓位才保留了信息的灰度
  • 软仓位的换手成本没有计入。连续仓位意味着每天都在调仓,实盘要加换手惩罚项(比如仓位变化超过 5% 才执行)。

五、γ 的识别陷阱:STAR 最出名的坑#

γ\gamma 大时似然面是平的。 γ=20\gamma=20γ=100\gamma=100 的过渡函数几乎不可区分,除非恰好有大量样本落在极窄的过渡带内。后果:γ^\hat\gamma 的置信区间可以宽到没有意义。本实验就是活例——全样本估出 2.5(准确),但训练集单独估出 6,同一过程、不同窗口,γ^\hat\gamma 翻倍。永远不要对 γ^\hat\gamma 的点估计做精确解读,它只回答”软还是硬”这个定性问题。

线性检验不能用标准 LR。 零假设”线性”下 γ\gammacc 都不可识别(Davies 问题),正解是 Luukkonen-Saikkonen-Teräsvirta 的 LM 检验:把 GG 泰勒展开成 yt1y_{t-1} 的多项式,检验高次项系数联合为零。这一步同时能帮你在 LSTAR(逻辑,捕捉涨跌不对称)和 ESTAR(指数,捕捉大小偏离不对称)之间做选择。

过渡变量的选择比模型形式更重要。 本文用 yt1y_{t-1} 自激励,实际中用波动率、利差、成交量做过渡变量往往更符合”regime 由环境变量驱动”的直觉——这时 STAR 就变成了一个可估计的”条件择时”框架。

六、拆穿几个流行误读#

“STAR 更一般,所以一定优于 TAR”。 嵌套关系只保证样本内 RSS 不升,不保证样本外。多估一个 γ\gamma 的代价是识别病态;若真实边界就是硬的,TAR 更少的参数反而更稳。

γ^\hat\gamma 告诉我们市场切换的精确速度”。 见上——γ\gamma 的估计误差大到只能做定性判断。任何把 γ^=6.3\hat\gamma=6.3 解读成”市场用 6.3 个单位速度切换”的说法都是过度解读。

“软边界=模型模糊=没有用”。 恰恰相反,本实验显示软边界的价值集中在仓位端:连续的 GG 让仓位随状态置信度渐变,避免了硬门限在边界附近的信号抖动。“模糊”是特性,不是缺陷。

“拟合提升 0.015%,STAR 白做了”。 用拟合优度评价 STAR 是问错了问题。STAR vs TAR 的增量在过渡带的仓位分辨率,反映在 Sharpe 4.95 vs 4.19 上,而不是 RSS 第四位小数上。

七、总结#

STAR 把 TAR 的硬开关换成了可估计软硬的 S 形过渡,用一个参数族统一了”线性—软切换—硬切换”三种世界。它在拟合上相对 TAR 的增益微弱,但过渡函数输出的连续状态权重是天然的仓位信号——这才是它进交易系统的理由。使用时记住三条纪律:γ\gamma 只做定性解读、线性检验用 LM 不用 LR、软仓位必须补算换手成本。

平滑转移自回归 STAR:用连续过渡函数给 regime 加一条软边界
https://blog.halo26812.eu.org/blog/smooth-transition-star
Author halo
Published at 2026年7月24日
版权声明 CC BY-NC-SA 4.0
Comment seems to stuck. Try to refresh?✨