El indicador Chaikin Volatility es una herramienta técnica utilizada para medir la volatilidad del mercado. Fue desarrollado por Marc Chaikin y se basa en la diferencia entre los precios altos y bajos durante un período determinado. Este script calcula y muestra la volatilidad de Chaikin en un gráfico, lo que ayuda a los traders a identificar cambios en la volatilidad del mercado.
Configuración Inicial del Script
El script comienza definiendo el nombre del instrumento y los parámetros de entrada necesarios para calcular la volatilidad de Chaikin.
luaCopiar códigoinstrument { name = "Chaikin Volatility", overlay = false }
hl_period = input (10, "front.newind.maperiod", input.integer, 1, 200)
roc_period = input (12, "front.newind.chaikinvol.rocperiod", input.integer, 1, 200)
source_high = input (inputs.high, "front.platform.chart.high", input.string_selection, inputs.titles)
source_low = input (inputs.low, "front.platform.chart.low", input.string_selection, inputs.titles)
fn = input (averages.ema, "front.newind.average", input.string_selection, averages.titles)
- hl_period: El número de períodos utilizados para calcular la media de la diferencia entre los precios altos y bajos. El valor predeterminado es 10.
- roc_period: El número de períodos utilizados para calcular la tasa de cambio (ROC) de la media de la diferencia entre los precios altos y bajos. El valor predeterminado es 12.
- source_high: La fuente de datos para los precios altos.
- source_low: La fuente de datos para los precios bajos.
- fn: La función de media utilizada (EMA en este caso).
Configuración de la Apariencia
A continuación, se configuran los grupos de entrada para determinar la apariencia de la línea y la línea de referencia en el gráfico.
luaCopiar códigoinput_group {
"front.ind.dpo.generalline",
color = input { default = "#57A1D0", type = input.color },
width = input { default = 1, type = input.line_width}
}
input_group {
"front.platform.baseline",
zero_color = input { default = "#B42EFF", type = input.color },
zero_width = input { default = 1, type = input.line_width}
}
Cálculo de la Volatilidad de Chaikin
El script calcula la volatilidad de Chaikin utilizando la diferencia entre los precios altos y bajos, suavizada por una media móvil exponencial (EMA), y luego calcula la tasa de cambio (ROC) de esta media.
luaCopiar códigolocal h = inputs [source_high]
local l = inputs [source_low]
local averageFunction = averages [fn]
vt = roc (averageFunction (h - l, hl_period), roc_period)
- h: Fuente de datos para los precios altos.
- l: Fuente de datos para los precios bajos.
- averageFunction: La función de media seleccionada (EMA).
- vt: La volatilidad de Chaikin, calculada como la tasa de cambio de la media de la diferencia entre los precios altos y bajos.
Visualización de la Volatilidad de Chaikin
Finalmente, el script dibuja la línea de la volatilidad de Chaikin y la línea de referencia en el gráfico.
luaCopiar códigohline { value = 0, color = zero_color, width = zero_width }
plot (vt, "VT", color, width)
- hline: Dibuja una línea de referencia en el valor 0 para ayudar a visualizar los cambios en la volatilidad.
- plot: Dibuja la línea de la volatilidad de Chaikin en el gráfico con el color y el grosor especificados.
Conclusión
El indicador Chaikin Volatility es una herramienta valiosa para medir la volatilidad del mercado y detectar posibles cambios en las tendencias. Al utilizar la diferencia entre los precios altos y bajos, suavizada por una media móvil y luego calcular la tasa de cambio, este indicador proporciona información útil sobre la actividad del mercado. Integrar la volatilidad de Chaikin en su análisis técnico puede ayudar a identificar oportunidades de trading basadas en cambios en la volatilidad del mercado.
Script Completo
instrument { name = "Chaikin Volatility", overlay = false }
hl_period = input (10, "front.newind.maperiod", input.integer, 1, 200)
roc_period = input (12, "front.newind.chaikinvol.rocperiod", input.integer, 1, 200)
source_high = input (inputs.high, "front.platform.chart.high", input.string_selection, inputs.titles)
source_low = input (inputs.low, "front.platform.chart.low", input.string_selection, inputs.titles)
fn = input (averages.ema, "front.newind.average", input.string_selection, averages.titles)
input_group {
"front.ind.dpo.generalline",
color = input { default = "#57A1D0", type = input.color },
width = input { default = 1, type = input.line_width}
}
input_group {
"front.platform.baseline",
zero_color = input { default = "#B42EFF", type = input.color },
zero_width = input { default = 1, type = input.line_width}
}
local h = inputs [source_high]
local l = inputs [source_low]
local averageFunction = averages [fn]
vt = roc (averageFunction (h - l, hl_period), roc_period)
hline { value = 0, color = zero_color, width = zero_width }
plot (vt, "VT", color, width)