如何使用 Pine 脚本 (TradingView) 计算 ATR 的 5 分钟滚动平均值?

问题描述

TradingView Pine 脚本中,我想计算:

  • ATR 在 30 分钟的时间段内获取高、低、收盘数据
  • ATR 的 5 分钟滚动平均值

在 Python 中,我这样做:

# Calculate the Average True Range(ATR)
df_indicator['ATR'] = talib.ATR(df_indicator['high'],df_indicator['low'],df_indicator['close'],timeperiod=30)
# Calculate the rolling mean of ATR
df_indicator['ATR_MA_5'] = df_indicator['ATR'].rolling(5).mean()

如何在 TradingView Pine 脚本中执行此操作?

解决方法

Pine 有一个内置函数 atr()
要获取当前时间范围内当前交易品种的值 atr,长度为 30,请使用 atr(30)
要获取长度为 30 的 5 分钟时间范围内当前交易品种的值 atr,请使用 security(syminfo.ticker,"5",atr(30))