La función ta.atr en Pine Script es una de las herramientas más útiles (y más mal utilizadas) del lenguaje. Calcula el Average True Range, una medida de volatilidad que sirve para dimensionar stops, objetivos y tamaño de posición de forma proporcional al «tamaño del movimiento» del activo. En esta guía honesta verás la sintaxis correcta en Pine Script v5, un ejemplo de código listo para pegar en TradingView y los errores más comunes de quien recién empieza.
¿Quieres convertir un indicador de TradingView en ejecución automática de órdenes? Mira cómo conectar señales a una plataforma de opciones binarias con Python.
Automatizar con la API en Python →Qué es el ATR y por qué importa
El ATR mide la amplitud media de las velas en un período, considerando los gaps entre el cierre anterior y la apertura actual (el «true range»). A diferencia de los indicadores de dirección, el ATR no dice si el precio va a subir o bajar: solo indica cuánto suele moverse el precio. Esto es muy valioso para definir un stop que no salte por el ruido normal del mercado, o para reducir la posición cuando la volatilidad se dispara.
Sintaxis de la función ta.atr en Pine Script v5
La firma es simple: recibe solo la longitud (número de velas) y devuelve una serie con el ATR suavizado por RMA:
Internamente, ta.atr(14) equivale a ta.rma(ta.tr(true), 14). Saber esto ayuda cuando quieres cambiar el suavizado (por ejemplo, usar ta.ema en lugar del RMA por defecto).
Ejemplo listo: ATR en el panel + stops dinámicos
Pega este código en el editor de Pine de TradingView. Traza el ATR en un panel separado y calcula niveles de stop a partir del precio actual:
Usando el ATR para el tamaño de posición
En mercados donde controlas el tamaño de la posición (forex, índices, cripto), un enfoque común es arriesgar una fracción fija del capital por operación y dejar que el ATR defina la distancia del stop:
Este cálculo automatiza la idea de «arriesgar siempre lo mismo» sin importar si el activo está calmo o agitado. Aun así, trata el número como punto de partida, no como una verdad absoluta.
Errores comunes con ta.atr
Tres trampas aparecen todo el tiempo. Primera: usar un length demasiado corto (1 a 3), lo que deja el ATR nervioso y sin valor estadístico. Segunda: comparar el ATR de activos diferentes en valor absoluto; un ATR de 0,5 en el oro y de 0,0005 en un par de divisas no se comparan directamente, normaliza dividiendo por el precio si lo necesitas. Tercera: esperar que el ATR prediga la dirección. Es volatilidad pura.
Preguntas frecuentes
¿Cuál es el mejor período para la función ta.atr? El valor por defecto, 14, funciona bien en la mayoría de los timeframes. Períodos menores (7-10) reaccionan más rápido; mayores (20-30) son más estables.
¿ta.atr funciona en cualquier timeframe? Sí. El valor cambia según el gráfico: el ATR de una vela de 1 minuto es mucho menor que el de una vela diaria.
¿Puedo usar ta.atr dentro de una estrategia (strategy)? Sí, exactamente de la misma forma. En scripts strategy() suele alimentar strategy.exit con stops y objetivos basados en ATR.
¿ta.atr repinta? No en el cierre de la vela. Como cualquier indicador, el valor de la vela actual, todavía en formación, puede cambiar hasta que cierre.
Aviso: las opciones binarias y el trading apalancado son productos de altísimo riesgo y la mayoría de los inversores minoristas pierde dinero. Este contenido es educativo, no constituye recomendación de inversión y no garantiza ningún resultado. Prueba siempre cualquier indicador o estrategia en cuenta demo antes de arriesgar dinero real.
