"I am trying to create an indicator with a label for the chart that displays the time in Chicago, as I trade with futures. Here is the code below, but the time value displayed by the label is 04:00:00 and not the actual time in Chicago, which at the time of writing is 20:00:57. How can this code be fixed to show the real time?"
input showLabel = yes;
# Definir la diferencia de tiempo entre la hora del servidor y la hora de Chicago
# Por ejemplo, si el servidor está en EST y Chicago está en CST, la diferencia es de 1 hora
# Ajustar según sea necesario
def timeDifference = 1;
# Calcular la hora de Chicago en segundos desde la época Unix
def chicagoTimeSec = RoundDown(GetTime() / 1000) - timeDifference * 3600;
# Convertir la hora de Chicago a formato HH:MM:SS
def hours = Floor((chicagoTimeSec % 86400) / 3600);
def minutes = Floor((chicagoTimeSec % 3600) / 60);
def seconds = Floor(chicagoTimeSec % 60);
# Mostrar la etiqueta con la hora de Chicago
AddLabel(showLabel, "Hora de Chicago: " + (if hours < 10 then "0" + hours else "" + hours) + ":" + (if minutes < 10 then "0" + minutes else "" + minutes) + ":" + (if seconds < 10 then "0" + seconds else "" + seconds), Color.WHITE);
input showLabel = yes;
# Definir la diferencia de tiempo entre la hora del servidor y la hora de Chicago
# Por ejemplo, si el servidor está en EST y Chicago está en CST, la diferencia es de 1 hora
# Ajustar según sea necesario
def timeDifference = 1;
# Calcular la hora de Chicago en segundos desde la época Unix
def chicagoTimeSec = RoundDown(GetTime() / 1000) - timeDifference * 3600;
# Convertir la hora de Chicago a formato HH:MM:SS
def hours = Floor((chicagoTimeSec % 86400) / 3600);
def minutes = Floor((chicagoTimeSec % 3600) / 60);
def seconds = Floor(chicagoTimeSec % 60);
# Mostrar la etiqueta con la hora de Chicago
AddLabel(showLabel, "Hora de Chicago: " + (if hours < 10 then "0" + hours else "" + hours) + ":" + (if minutes < 10 then "0" + minutes else "" + minutes) + ":" + (if seconds < 10 then "0" + seconds else "" + seconds), Color.WHITE);