真实波动区间(True Range):揭示市场真正振幅的经典指标
在金融市场中,衡量“价格波动”是理解趋势、判断风险、制定止损策略的基础。而真实波动区间(True Range, 简称 TR),作为最基础的波动性测量工具之一,至今仍广泛应用于日内交易、趋势识别和波动性策略。
一、什么是真实波动区间(True Range)?
True Range(真实波动区间) 是由传奇技术分析师 J. Welles Wilder 提出的波动指标,它克服了仅用 最高价减最低价 计算波动范围的局限,考虑了跳空缺口的情况,从而更加全面地反映市场实际的价格振幅。
二、True Range 的计算逻辑
True Range 并不是简单地用 High - Low
,而是考虑到隔夜跳空或极端行情的影响:
$$ TR_t = \max \left( \begin{array}{l} High_t - Low_t, \ |Hight - Close{t-1}|, \ |Lowt - Close{t-1}| \end{array} \right) $$
✅ 它反映了三种波动可能性:
- 日内波动: 最高价 - 最低价
- 上跳波动: 当高价远离前一日收盘
- 下跳波动: 当低价远离前一日收盘
最终取这三者中的最大值,即为市场的真实振幅。
三、pandas_ta 中的参数说明
在 pandas_ta
中,调用 True Range 非常方便:
import pandas_ta as ta
tr = ta.true_range(high, low, close)
参数名 | 类型 | 描述 | 默认值 |
---|---|---|---|
high |
Series | 最高价序列(必填) | 必需 |
low |
Series | 最低价序列(必填) | 必需 |
close |
Series | 收盘价序列(必填) | 必需 |
talib |
bool | 若安装 TA-Lib,可调用其实现版本 | True |
prenan |
bool | 是否设置前几项为 NaN(用于保持数据对齐) | False |
drift |
int | 差分周期,默认使用前一周期(1) | 1 |
offset |
int | 平移结果,适用于图表显示 | 0 |
四、返回结果说明
该函数返回一个 pandas.Series
,列名格式通常为:
TRUERANGE
你可以将其合并入原始 DataFrame 进行进一步分析或画图。
五、Python 示例:绘制真实波动区间图表
import pandas as pd
import pandas_ta as ta
import matplotlib.pyplot as plt
# 加载股票数据
df = pd.read_csv("AAPL.csv", index_col="Date", parse_dates=True)
# 计算 TR 指标
df["TRUERANGE"] = ta.true_range(df["High"], df["Low"], df["Close"])
# 可视化
plt.figure(figsize=(14,6))
plt.plot(df["TRUERANGE"], label="True Range", color="orange")
plt.title("真实波动区间(True Range)")
plt.ylabel("点数")
plt.grid(True)
plt.legend()
plt.show()
六、True Range 的实际应用
✅ 1. 波动性监控
TR 是衡量波动性最直接的指标,适合:
- 判断是否处于剧烈震荡阶段
- 判断价格是否出现异常跳空行为
✅ 2. ATR 的基础构件
Average True Range(ATR) 就是对 TR 进行平均处理的衍生指标:
$$ ATR_t = EMA(TR_t, \text{length}) $$
ATR 广泛应用于:
- 设置止损区间
- 构建波动性带(如凯尔特纳通道、ATR Trailing Stop)
✅ 3. 判断事件驱动走势
- 新闻面事件、财报发布、加息等会导致 TR 暴增;
- 突然变大的 TR 可用作交易信号的过滤器,防止追单时进场于错误位置。
七、与其他波动性指标对比
指标名称 | 特点 | 是否平滑 | 是否考虑跳空 | 应用场景 |
---|---|---|---|---|
High-Low Range | 仅考虑当前 K 线的振幅 | 否 | 否 | 简单的高低差测量 |
True Range | 真实反映价格波动,包含跳空 | 否 | ✅ 是 | 波动捕捉、事件监测、止损基础 |
ATR | True Range 的平滑版本 | ✅ 是 | ✅ 是 | 止损设置、区间策略、趋势判断 |
八、总结:基础而不可替代的波动度衡量工具
📌 True Range 是几乎所有波动性指标的核心组成部分,如 ATR、Keltner Channel、SuperTrend 等。
📌 尽管它计算简单,但其对价格真实振幅的刻画尤为准确,能够揭示市场中不为人知的“隐性波动”。
📌 对量化策略开发者而言,True Range 是构建所有动态止盈止损系统的基石。