NeuroScriptNeuroScript®

Volatilidade

5 funções de análise de volatilidade do NeuroScript®

Análise Técnica - Volatilidade (5 funções)

ta.tr(high, low, close) - True Range

Mede a volatilidade da faixa de preços. É o maior valor entre:

  • high - low
  • abs(high - close[1])
  • abs(low - close[1])
NeuroScript
NeuroScript®
var trueRange = ta.tr(high, low, close)

ta.atr(high, low, close, length) - Average True Range

Indicador de volatilidade suavizado usando RMA (Wilder's smoothing).

NeuroScript
NeuroScript®
indicator("ATR", overlay=false)

var atr14 = ta.atr(high, low, close, 14)
var stopLoss = close - 2 * atr14

plot(atr14, "ATR", color=color.blue)

Usos comuns: Medição de volatilidade, posicionamento de stop-loss, dimensionamento de posição

ta.stdev(series, length) - Standard Deviation (Desvio Padrão)

Calcula o desvio padrão populacional dos últimos N valores.

NeuroScript
NeuroScript®
var stddev = ta.stdev(close, 20)

ta.bb(series, length, mult) - Bollinger Bands

Calcula bandas de volatilidade usando desvio padrão. Retorna objeto com upper, middle e lower.

NeuroScript
NeuroScript®
indicator("Bollinger Bands", overlay=true)

var bbResult = ta.bb(close, 20, 2.0)
var upper = bbResult.upper
var middle = bbResult.middle
var lower = bbResult.lower

var p1 = plot(upper, "Upper Band", color=color.blue)
var p2 = plot(middle, "Middle Band", color=color.gray)
var p3 = plot(lower, "Lower Band", color=color.blue)
fill(p1, p3, color=color.blue, transp=95)

Parâmetros padrão: length=20, mult=2.0 Interpretação: Preço perto da banda superior = possível sobrecompra, banda inferior = possível sobrevenda

ta.bbw(series, length, mult) - Bollinger Bands Width ⭐ NOVO

Mede a largura entre as bandas superior e inferior de Bollinger. Útil para detectar "squeezes" (consolidação) que antecedem grandes movimentos.

NeuroScript
NeuroScript®
var bbw20 = ta.bbw(close, 20, 2.0)

// Squeeze: baixa volatilidade (possível breakout iminente)
var squeeze = bbw20 < 0.05

// Expansion: alta volatilidade (movimento forte em curso)
var expansion = bbw20 > 0.15

plot(bbw20, "BB Width", color=squeeze ? color.red : color.green)
hline(0.05, "Squeeze Level", color=color.red, linestyle=2)

Interpretação: BBW baixo indica consolidação (setup para breakout), BBW alto indica movimento forte


Exemplo: Bollinger Bands com Breakout

NeuroScript
NeuroScript®
indicator("Bollinger Breakout", overlay=true)

// Inputs
var length = input.int(20, "BB Period")
var mult = input.float(2.0, "Std Dev Multiplier", minval=0.5, maxval=5.0, step=0.1)

// Cálculo das Bollinger Bands
var bb = ta.bb(close, length, mult)
var upper = bb.upper
var middle = bb.middle
var lower = bb.lower

// Detecção de breakouts
var upperBreakout = close > upper
var lowerBreakout = close < lower

// Plotar bandas
var p1 = plot(upper, "Upper Band", color=color.blue, linewidth=1)
var p2 = plot(middle, "Middle Band", color=color.gray, linewidth=1, linestyle="dashed")
var p3 = plot(lower, "Lower Band", color=color.blue, linewidth=1)

// Preencher entre bandas
fill(p1, p3, color=color.blue, transp=95, title="BB Channel")

// Plotar breakouts
var breakColor = upperBreakout ? color.red : lowerBreakout ? color.green : ta.na
plot(breakColor != ta.na ? close : ta.na, "Breakout", color=breakColor, linewidth=3, style="circles")

return middle