Script Indicador de Canales Keltner en IQ Option

Script Indicador de Canales Keltner en IQ Option

El indicador Keltner Channels es una herramienta técnica utilizada por los traders para identificar tendencias y condiciones de sobrecompra o sobreventa en el mercado. Este indicador traza tres líneas: una línea media (que generalmente es una media móvil), una línea superior y una línea inferior que están desplazadas por un múltiplo del rango verdadero medio (ATR). A continuación, se explica el script para crear este indicador en detalle.

Configuración Inicial del Script

El script define el nombre del instrumento y los parámetros iniciales necesarios para calcular los Keltner Channels.

luaCopiar códigoinstrument { name = "Keltner Channels", overlay = true }

period = input (20, "front.period", input.integer, 1)
shift =  input (5,  "front.newind.offset", input.double, 0.01, 300, 0.01)

fn     = input (averages.ema, "front.newind.average", input.string_selection, averages.titles)
  • period: Número de períodos utilizados para calcular la media móvil y el ATR.
  • shift: Factor multiplicador para desplazar las bandas superior e inferior.
  • fn: Función de media móvil seleccionada, en este caso la media móvil exponencial (EMA).

Configuración de las Líneas del Indicador

Se configuran los parámetros visuales del indicador, como el color y el grosor de las líneas que se trazarán en el gráfico.

luaCopiar códigoinput_group {
    "front.top line",
    upper_line_visible = input { default = true, type = input.plot_visibility },
    upper_line_color   = input { default = "#21B190", type = input.color },
    upper_line_width   = input { default = 1, type = input.line_width }
}

input_group {
    "front.middle line",
    middle_line_visible = input { default = true, type = input.plot_visibility },
    middle_line_color   = input { default = rgba(33,177,144,0.6), type = input.color },
    middle_line_width   = input { default = 1, type = input.line_width }
}

input_group {
    "front.bottom line",
    lower_line_visible = input { default = true, type = input.plot_visibility },
    lower_line_color   = input { default = "#21B190", type = input.color },
    lower_line_width   = input { default = 1, type = input.line_width }
}

input_group {
    "front.newind.adx.fill",
    fill_visible = input { default = true, type = input.plot_visibility },
    fill_color   = input { default = rgba(33,177,144,0.08), type = input.color },
}

Cálculo de los Keltner Channels

A continuación, se realiza el cálculo de la línea media, las líneas superior e inferior utilizando la media móvil y el ATR.

luaCopiar códigolocal averageFunction = averages [fn]

middle = averageFunction (hlc3, period)
offset = rma(tr, period) * shift

upper = middle + offset
lower = middle - offset
  • middle: La línea media, calculada como una media móvil de los precios.
  • offset: Desplazamiento calculado como el ATR multiplicado por el factor de desplazamiento.
  • upper: Línea superior, calculada sumando el desplazamiento a la línea media.
  • lower: Línea inferior, calculada restando el desplazamiento de la línea media.

Visualización del Indicador

Finalmente, se trazan las líneas del indicador y se rellena el área entre las líneas superior e inferior.

luaCopiar códigoif fill_visible then
    fill { first = upper, second = lower, color = fill_color }
end

if upper_line_visible then
    plot (upper, "Upper", upper_line_color, upper_line_width)
end

if lower_line_visible then
    plot (lower, "Lower", lower_line_color, lower_line_width)
end

if middle_line_visible then
    plot (middle, "Middle", middle_line_color, middle_line_width)
end

Interpretación del Indicador

El Keltner Channels proporciona una visión clara de las tendencias y posibles puntos de reversión del mercado. Aquí algunos puntos clave para su interpretación:

  • Línea Media (Middle): Actúa como una línea de referencia central, que generalmente indica la dirección de la tendencia.
  • Línea Superior (Upper): Indica una posible área de sobrecompra. Si el precio toca o supera esta línea, puede ser señal de que el activo está sobrecomprado.
  • Línea Inferior (Lower): Indica una posible área de sobreventa. Si el precio toca o cae por debajo de esta línea, puede ser señal de que el activo está sobrevendido.
  • Relleno (Fill): El área entre las líneas superior e inferior puede ser utilizada para visualizar mejor la volatilidad y el rango de precios.

Conclusión

El indicador Keltner Channels es una herramienta versátil que puede ser utilizada para identificar tendencias, áreas de sobrecompra y sobreventa, así como para evaluar la volatilidad del mercado. Al ajustar los períodos y el factor de desplazamiento, los traders pueden adaptar este indicador a sus necesidades específicas y estrategias de trading.

Script Completo

instrument { name = "Keltner Channels", overlay = true }

period = input (20, "front.period", input.integer, 1)
shift = input (5, "front.newind.offset", input.double, 0.01, 300, 0.01)

fn = input (averages.ema, "front.newind.average", input.string_selection, averages.titles)

input_group {
"front.top line",
upper_line_visible = input { default = true, type = input.plot_visibility },
upper_line_color = input { default = "#21B190", type = input.color },
upper_line_width = input { default = 1, type = input.line_width }
}

input_group {
"front.middle line",
middle_line_visible = input { default = true, type = input.plot_visibility },
middle_line_color = input { default = rgba(33,177,144,0.6), type = input.color },
middle_line_width = input { default = 1, type = input.line_width }
}

input_group {
"front.bottom line",
lower_line_visible = input { default = true, type = input.plot_visibility },
lower_line_color = input { default = "#21B190", type = input.color },
lower_line_width = input { default = 1, type = input.line_width }
}

input_group {
"front.newind.adx.fill",
fill_visible = input { default = true, type = input.plot_visibility },
fill_color = input { default = rgba(33,177,144,0.08), type = input.color },
}

local averageFunction = averages [fn]

middle = averageFunction (hlc3, period)
offset = rma(tr, period) * shift

upper = middle + offset
lower = middle - offset

if fill_visible then
fill { first = upper, second = lower, color = fill_color }
end

if upper_line_visible then
plot (upper, "Upper", upper_line_color, upper_line_width)
end

if lower_line_visible then
plot (lower, "Lower", lower_line_color, lower_line_width)
end

if middle_line_visible then
plot (middle, "Middle", middle_line_color, middle_line_width)
end
Carrito de compra
Scroll al inicio
Telegram