// Definir el tipo de datos para utc_offset var int utc_offset = na
// Configuración de la zona horaria local zona_horaria = input.string('Asia', title='Zona Horaria Local', options=['Asia', 'Londres', 'New York', 'Australia'])
// Convertir la zona horaria a desfase horario en minutos if zona_horaria == 'Asia' utc_offset := 9 * 60 if zona_horaria == 'Londres' utc_offset := 5 * 60 if zona_horaria == 'New York' utc_offset := -5 * 60 if zona_horaria == 'Australia' utc_offset := 11 * 60
// Configuración de la zona horaria de Asia inicioAsia = 19 finAsia = 5 colorAsia = input.color(color.yellow, title="Color de fondo para Asia")
// Configuración de la zona horaria de Londres inicioLondres = 3 finLondres = 13 colorLondres = input.color(color.black, title="Color de fondo para Londres")
// Configuración de la zona horaria de New York inicioNewYork = 7 finNewYork = 13 colorNewYork = input.color(color.rgb(56, 54, 165), title="Color de fondo para New York")
// Configuración de la zona horaria de Australia inicioAustralia = 17 finAustralia = 2 colorAustralia = input.color(color.red, title="Color de fondo para Australia")
// Configuración de la sesión personalizada s = '0100-0101' t1 = time('1440', s) != 0 colorSesion = input.color(color.white, title="Color de fondo para la sesión personalizada")
// Obtener la hora actual en la zona horaria local hora_local = hour(time, timezone="UTC") + minute(time, timezone="UTC") / 60 + utc_offset / 60
// Resaltar el fondo para la zona horaria de Londres bgcolor(hora_local >= inicioLondres and hora_local < finLondres ? colorLondres : na)
// Resaltar el fondo para la zona horaria de Asia bgcolor(hora_local >= inicioAsia or hora_local < finAsia ? colorAsia : na)
// Resaltar el fondo para la zona horaria de New York bgcolor(hora_local >= inicioNewYork and hora_local < finNewYork ? colorNewYork : na)
// Resaltar el fondo para la zona horaria de Australia bgcolor(hora_local >= inicioAustralia or hora_local < finAustralia ? colorAustralia : na)
// Resaltar el fondo para la sesión personalizada bgcolor(t1 ? colorSesion : na)
// Importar la biblioteca Zig Zag import TradingView/ZigZag/7 as ZigZagLib
// Crear instancia de Zig Zag desde la configuración del usuario. var zigZag = ZigZagLib.newInstance( ZigZagLib.Settings.new( input.float(0.12, "Desviación de precio para reversión (%)", 0.00001, 100.0, 0.5, "0.00001 - 100"), input.int(5, "Piernas de pivote", 2), input.color(#2962FF, title="Color de la línea Zig Zag"), input(true, "Extender a la última barra", display = display.data_window), input(true, "Mostrar precio de reversión", display = display.data_window), input(true, "Mostrar volumen acumulativo", display = display.data_window), input(true, "Mostrar cambio de precio de reversión", inline = "priceRev", display = display.data_window), input.string("Absoluto", "", ["Absoluto", "Porcentaje"], inline = "priceRev", display = display.data_window), true) )
// Actualizar el objeto 'zigZag' en cada barra con nuevos pivotes, volumen, líneas, etiquetas. zigZag.update()