“多阶回归波动通道” —— 基于 Thinkorswim 全周期标准差的波动雷达
(TD Ameritrade Standard Deviation All,pandas_ta 函数名:tos_stdevall()
)
一、指标缘起:把标准差做成“剥洋葱”式通道
在 Thinkorswim 交易平台里,Standard Deviation All 指标可一次性输出 1σ、2σ、3σ 三条上下包络,并且不局限于最近 N 根K线,而是支持“自上市以来”全周期计算,配合线性回归中轴,形成立体的波动分布。借助 pandas_ta
,我们可以在 Python 中完全复刻这一思路,用来:
- 量化价格偏离度:判断当前收盘价离回归中轴有多极端;
- 识别动态支撑阻力:多层包络天然构成多空防守位;
- 快速评估振幅压缩/扩张:σ 通道收窄或张口即为信号。
中文命名:多阶回归波动通道(英文缩写 TOS StdevAll)。
二、核心公式与滚动逻辑
- 先以线性回归(LR)拟合全部或最近 length 根收盘价,得到中轴
LR
; - 计算拟合残差的标准差 σ;
- 依序画出 ±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,只需数行代码即可开启你的统计套利或趋势跟随之旅。