金融, 统计

多阶回归波动通道tos_stdevall

TD Ameritrade's Think or Swim Standard Deviation All

“多阶回归波动通道” —— 基于 Thinkorswim 全周期标准差的波动雷达 (TD Ameritrade Standard Deviation All,pandas_ta 函数名:tos_stdevall()) 一、指标缘起:把标准差做成“剥洋葱”式通道 在 Thinkorswim 交易平台里,Standard Deviation All 指标可一次性输出 1σ、2σ、3σ 三条上下包络,并且不局限于最近 N…

“多阶回归波动通道” —— 基于 Thinkorswim 全周期标准差的波动雷达

(TD Ameritrade Standard Deviation All,pandas_ta 函数名:tos_stdevall()


一、指标缘起:把标准差做成“剥洋葱”式通道

在 Thinkorswim 交易平台里,Standard Deviation All 指标可一次性输出 1σ、2σ、3σ 三条上下包络,并且不局限于最近 N 根K线,而是支持“自上市以来”全周期计算,配合线性回归中轴,形成立体的波动分布。借助 pandas_ta,我们可以在 Python 中完全复刻这一思路,用来:

  • 量化价格偏离度:判断当前收盘价离回归中轴有多极端;
  • 识别动态支撑阻力:多层包络天然构成多空防守位;
  • 快速评估振幅压缩/扩张:σ 通道收窄或张口即为信号。

中文命名多阶回归波动通道(英文缩写 TOS StdevAll)。


二、核心公式与滚动逻辑

  1. 先以线性回归(LR)拟合全部或最近 length 根收盘价,得到中轴 LR
  2. 计算拟合残差的标准差 σ;
  3. 依序画出 ±1σ、±2σ、±3σ 通道。

length=None 时,指标会对所有历史 K 线重建回归线,通道更平稳;若指定窗口,则只关注近段周期的局部波动。


三、pandas_ta 调用方法与列含义

import pandas as pd, pandas_ta as ta
df = pd.read_csv("price.csv")                       # 含 close
# 全历史回归通道
df = df.join(ta.tos_stdevall(df["close"], length=None, stds=[1,2,3]))

返回 7 列:

列名 含义
TOS_STDEVALL_LR 线性回归中轴
TOS_STDEVALL_L_1/U_1 -1σ / +1σ 支撑阻力
TOS_STDEVALL_L_2/U_2 -2σ / +2σ 警戒通道
TOS_STDEVALL_L_3/U_3 -3σ / +3σ 极端波动带

四、实战图解:一眼看穿“价格在哪一层”

import matplotlib.pyplot as plt
cols = ["close","TOS_STDEVALL_LR",
        "TOS_STDEVALL_L_1","TOS_STDEVALL_U_1",
        "TOS_STDEVALL_L_2","TOS_STDEVALL_U_2",
        "TOS_STDEVALL_L_3","TOS_STDEVALL_U_3"]
df[cols].plot(figsize=(14,6), title="多阶回归波动通道")
plt.show()
  • 价格触及 ±3σ:说明已偏离平均轨迹 99.7% 置信区间,常伴随情绪极端,可做逆势观察点;
  • 价格在 ±1σ 区间震荡:市场进入压缩期,等待通道“张口”后的趋势爆发;
  • 通道整体上扬/下弯:反映回归斜率变化,可视作中期多空分水岭。

五、策略落地:怎么用多阶回归波动通道?

  • 顺势加仓:当收盘价回踩 +1σ 并未跌破回归线,即可沿趋势加仓,目标看 +2σ/ +3σ;
  • 逆势博反转:触及 -3σ 并伴随 RSI 背离,可分批尝试低吸,止损放在通道外;
  • 波动选股器:筛选 σ 通道急速收窄的标的,预判“闷声放炮”行情。

六、优缺点与避坑提示

优势 ● 全历史/局部窗口二选一,兼具稳健与灵活
● 多阶σ直观量化极端偏离
限制 ● 依赖回归直线,若长期大级别趋势扭转需手动重设窗口
● σ 层数越多,极端带越宽,需结合其他动量/成交量过滤

技巧:与布林带、ATR、OBV 等指标联用,可显著提高信号可信度。


结语

多阶回归波动通道 以“全周期 σ 包络+回归中轴”的简洁逻辑,让你在一张图里同时看到趋势方向、价格偏离度、潜在支撑阻力,是波段交易者与量化模型不可错过的波动性雷达。借助 pandas_ta.tos_stdevall(),把 Thinkorswim 的强大通道搬进 Python,只需数行代码即可开启你的统计套利或趋势跟随之旅。