Categoría
Técnico
Nivel
Principiante
Se usa en
Diseño de estrategiasGestión del riesgoOperación de MT5

Rango Verdadero Medio (ATR)

Un indicador de volatilidad que mide el tamaño medio del movimiento reciente del precio, en unidades de precio. Los EA lo usan para fijar distancias de stop y tamaños de posición que se adaptan a las condiciones actuales en lugar de dar por supuestas las de ayer.

también: ATR, True Range

Actualizado

En palabras sencillas

Cuánto suele recorrer este mercado en una vela, promediado sobre el pasado reciente. No opina sobre la dirección: es una regla para medir distancia, y casi todo lo que un EA mide en pips se mide mejor en estas unidades.

Por qué importa

Toda distancia dentro de un EA — el stop, el objetivo, el paso del trailing, el umbral de ruptura — es un número de pips que alguien eligió. El ATR es lo que convierte esos números fijos en proporciones que siguen significando lo mismo cuando el mercado se acelera o se calma.

  • Es la forma práctica de la volatilidad. Un EA difícilmente puede calcular una desviación típica de los rendimientos en cada tick, pero sí puede leer el ATR desde un handle de indicador.
  • Viene en unidades de precio, así que se convierte directamente en una distancia de stop sin ningún paso estadístico intermedio.
  • Hace comparable una estrategia entre símbolos y periodos. Dos pips son un stop amplio en un instrumento y están dentro del ruido en otro; dos ATR son la misma afirmación en todas partes.
  • Incluye los huecos, cosa que un simple rango máximo menos mínimo no hace: el rango verdadero se mide también contra el cierre anterior, no solo contra la vela actual.

En MetaTrader 5

Dónde aparece en MT5

  • Insertar → Indicadores → Osciladores → Average True Range — se añade al gráfico con un parámetro de periodo
  • Navegador → Indicadores → Average True Range — se arrastra al gráfico para obtener lo mismo
  • El indicador se dibuja en una ventana aparte porque su escala es distancia de precio, no precio
  • Probador de Estrategias → Entradas — el periodo y el multiplicador de ATR de un EA son parámetros, y ambos se sobreoptimizan con facilidad

Cómo lo usan los EA

  • Crear el handle una sola vez en OnInit — iATR(_Symbol, PERIOD_CURRENT, 14) — y leer los valores con CopyBuffer, en lugar de crear handles dentro de OnTick.
  • Distancia de stop = multiplicador × ATR en la entrada, de modo que el stop quede fuera del movimiento ordinario y no en un número redondo de pips.
  • Tamaño de posición = importe en riesgo ÷ (distancia de stop × valor del pip), lo que hace que el lotaje caiga automáticamente cuando sube la volatilidad.
  • La distancia de trailing es la misma idea aplicada de forma continua: el trail se ensancha en mercados rápidos y se estrecha en los tranquilos.
  • Leer el ATR de una vela cerrada (índice 1) y no de la que se está formando (índice 0), cuyo valor cambia con cada tick.
  • No des por hecho que iATR es el ATR de Wilder. El ATR incluido en MetaTrader hace rodar una ventana fija donde Wilder suaviza. Por eso reaccionan con relojes distintos: tras triplicarse la volatilidad medimos 19 velas frente a 59 para alcanzar el 90 % del nuevo nivel.

Ajustes habituales

Ajuste Valor habitual Nota
Periodo 14 El valor por defecto convencional. Los periodos cortos (7–10) reaccionan más rápido; los largos (20–30) son más suaves y encajan con sistemas diarios.
Multiplicador del stop 1,5–2,5 × ATR Por debajo de 1,5 aproximadamente, el stop queda dentro del movimiento ordinario en la mayoría de instrumentos.
Multiplicador del trailing 2–3 × ATR Suele ser más amplio que el stop de entrada, para que un retroceso normal no termine una operación de tendencia.
Multiplicador del objetivo 2–4 × ATR Mantiene estable la relación riesgo/beneficio cuando cambian las condiciones.
Marco temporal de lectura el propio de la estrategia Un ATR de M5 y uno de D1 describen preguntas distintas; mezclarlos cambia en silencio todas las distancias.

Problemas operativos frecuentes

  • Crear el handle del indicador dentro de OnTick, lo que va dejando handles sin liberar y acaba fallando: el handle va en OnInit.
  • CopyBuffer devuelve menos valores de los pedidos al arrancar, antes de que haya cargado suficiente histórico, lo que produce un ATR de cero y por tanto un stop a distancia cero.
  • Leer el ATR de la vela en formación, con lo que la distancia del stop depende del momento de la vela en que se disparó la señal.
  • Confusión entre puntos y pips: el ATR se devuelve en unidades de precio, y una cotización de 5 dígitos significa 0,00120 y no 12 — multiplicarlo como si fueran pips produce stops cien veces demasiado amplios o demasiado estrechos.
  • Optimizar el periodo del ATR y el multiplicador a la vez sobre la misma ventana, lo que ajusta el par a los retrocesos concretos de esa ventana.

Funciones de MT5 relacionadas

iATR(symbol, timeframe, ma_period)
Crea el handle del indicador; llámalo una vez en OnInit y conserva el handle.
CopyBuffer(handle, 0, start, count, array)
Lee los valores de ATR del búfer 0, el único búfer que tiene el indicador.
SymbolInfoDouble(symbol, SYMBOL_POINT)
Convierte el ATR en unidades de precio a puntos, que es como se expresan las distancias de stop.
NormalizeDouble(price, _Digits)
Redondea un nivel de stop calculado a la precisión del símbolo antes de enviarlo.

Ejemplo

La misma regla de riesgo, aplicada en dos regímenes de volatilidad. Nada cambia en el EA: cambia la regla con la que mide.

Régimen tranquilo — ATR(14)
12 pips
Un stop de 2 × ATR son 24 pips.
Régimen volátil — ATR(14)
34 pips
Ese mismo stop de 2 × ATR son 68 pips.
Riesgo por operación
1 % de 10.000 $ = 100 $
Lotaje, tranquilo / volátil
0,42 / 0,15
El mismo dinero en riesgo, distinta distancia y por tanto distinto tamaño.

Ampliar el stop sin reducir el lote habría triplicado el dinero en riesgo. El ATR solo ayuda cuando ambas mitades se mueven juntas.

Cálculo 100 ÷ (24 × 10) = 0.42 · 100 ÷ (68 × 10) = 0.15

Resultado Una regla de riesgo que produce dos distancias de stop y dos tamaños de posición

Cómo se usa

El ATR es una distancia, no una señal. Le dice al EA a qué distancia colocar las cosas, nunca si debe colocarlas.

Rango Qué significa
ATR actual muy por debajo de la media del backtest Los objetivos definidos en ATR se encogen en consecuencia, así que la estrategia se lleva ganancias menores mientras los costes siguen fijos.
ATR actual cerca de la media del backtest Las condiciones en las que se ajustaron los parámetros. Las expectativas publicadas son aplicables.
ATR actual muy por encima de la media del backtest Los stops de pips fijos quedan ahora dentro del ruido; los basados en ATR se ensanchan, y el tamaño de posición debe bajar para compensar.
ATR usado como señal de entrada Un mal uso. Carece de dirección: una lectura alta dice que el mercado se mueve, no hacia dónde.
  • Expresa cada distancia del EA como un múltiplo del ATR y optimiza después el múltiplo en lugar del número de pips. El resultado se transfiere mucho mejor entre símbolos y regímenes.
  • Nunca compares valores de ATR en bruto entre símbolos. Cuarenta pips en GBP/JPY y cuarenta en EUR/USD son niveles de actividad distintos; divide por el precio si necesitas comparar.
  • Ajusta el periodo del ATR al periodo de mantenimiento. Un scalper que lee un ATR diario está dimensionando para un movimiento en el que nunca estará.
  • Comprueba que el multiplicador sea estable entre valores vecinos. Un stop que funciona a 2,0 × ATR pero no a 1,8 o 2,2 está ajustado a la ventana de prueba.

La [página completa del indicador ATR](/es/indicators/atr) cubre el cálculo y los ajustes en detalle. Incluye nuestra medición de que el iATR de MetaTrader es una ventana móvil y no el suavizado de Wilder. Esta entrada trata del papel que juega el ATR dentro de las reglas de riesgo de un EA.

Errores frecuentes

Tratar el ATR como señal de dirección

Mide la distancia recorrida, no hacia dónde. Un ATR creciente significa que el mercado se mueve más, y eso ocurre igual en tendencias, en desplomes y en rangos violentos.

Ampliar el stop de ATR sin reducir el lote

Todo el sentido de un stop adaptativo es que el riesgo por operación se mantenga constante. Si la distancia se triplica y el tamaño no baja, lo que se ha triplicado es la pérdida.

Confundir unidades de precio con pips

iATR devuelve una distancia de precio: 0,00120 en un EUR/USD de 5 dígitos, no 12. El código que lo trata como pips coloca stops cien veces demasiado lejos o demasiado cerca, y el error pasa desapercibido en las pruebas porque los resultados son simplemente malos y no están rotos.

Leer el ATR de la vela en formación

El índice 0 cambia en cada tick, así que la misma señal produce un stop distinto según el momento en que se dispara. Usa la última vela cerrada para todo lo que deba ser reproducible.

Preguntas frecuentes

¿Qué periodo de ATR debería usar un EA?
Catorce es el valor convencional y un punto de partida razonable. Los periodos cortos de siete a diez reaccionan más rápido a un cambio de condiciones pero son más ruidosos; los de veinte a treinta son más suaves y encajan con estrategias de velas diarias. Importa más que se mantenga estable entre ajustes vecinos al probarlo que el valor exacto.
¿Cómo convierto el ATR en una distancia de stop-loss?
Multiplicándolo. Un stop a 2 × ATR queda a dos rangos medios de vela de la entrada, lo que está fuera del movimiento ordinario en la mayoría de instrumentos. El segundo paso imprescindible es calcular el lotaje a partir de esa distancia y de tu límite de riesgo, para que un stop más amplio signifique una posición menor y no una pérdida mayor.
¿Es el ATR mejor que un stop de pips fijo?
Para un EA que opera desatendido durante años, en general sí, porque una distancia fija significa cosas distintas en regímenes de volatilidad distintos mientras que un múltiplo de ATR significa lo mismo siempre. La contrapartida es un parámetro más al que hay que evitar sobreoptimizar.
¿El ATR de MT5 es el mismo que el de Wilder?
No exactamente, y eso importa cuando trasladas un ajuste. Wilder suaviza el rango verdadero, de modo que cada vela pasada sigue decayendo dentro del valor; el ATR incluido en MetaTrader hace rodar en su lugar una ventana fija, que es una media móvil simple. Ambos son filtros lineales cuyos pesos suman uno, así que sus niveles a largo plazo coinciden: medimos 9,571 frente a 9,573 pips sobre 2.700 velas con periodo 20. Lo que difiere es la respuesta: tras triplicarse la volatilidad en una vela, la versión de MetaTrader alcanzó el 90 % del nuevo nivel en 19 velas y la de Wilder tardó 59. Por eso un stop de 2 × ATR se ensancha antes en MT5 que la misma regla en una plataforma basada en Wilder, e igualar el periodo tampoco los fusiona: el periodo de iATR más próximo al 20 de Wilder se midió en 32–33.
¿Me dice el ATR la dirección de la tendencia?
No. Es una medida pura de distancia y no tiene ningún componente direccional. El ADX es el acompañante habitual para la fuerza de la tendencia, y una media móvil o la estructura del precio para la dirección.

Artículos relacionados