{"slug":"us-stock-market-hours-jakarta-time","qid":"dst_2025","label":"dst_2025","post_title":"us-stock-market-hours-jakarta-time","post_url":"/blog/lang/id/us-stock-market-hours-jakarta-time#q-dst_2025","columns":["session_date","hari","buka_wib","tutup_wib","buka_et","buka_wib_desimal"],"rows":[{"session_date":"2025-10-27","hari":"Senin","buka_wib":"20:30","tutup_wib":"03:00","buka_et":"09:30","buka_wib_desimal":20.5},{"session_date":"2025-10-28","hari":"Selasa","buka_wib":"20:30","tutup_wib":"03:00","buka_et":"09:30","buka_wib_desimal":20.5},{"session_date":"2025-10-29","hari":"Rabu","buka_wib":"20:30","tutup_wib":"03:00","buka_et":"09:30","buka_wib_desimal":20.5},{"session_date":"2025-10-30","hari":"Kamis","buka_wib":"20:30","tutup_wib":"03:00","buka_et":"09:30","buka_wib_desimal":20.5},{"session_date":"2025-10-31","hari":"Jumat","buka_wib":"20:30","tutup_wib":"03:00","buka_et":"09:30","buka_wib_desimal":20.5},{"session_date":"2025-11-03","hari":"Senin","buka_wib":"21:30","tutup_wib":"04:00","buka_et":"09:30","buka_wib_desimal":21.5},{"session_date":"2025-11-04","hari":"Selasa","buka_wib":"21:30","tutup_wib":"04:00","buka_et":"09:30","buka_wib_desimal":21.5},{"session_date":"2025-11-05","hari":"Rabu","buka_wib":"21:30","tutup_wib":"04:00","buka_et":"09:30","buka_wib_desimal":21.5},{"session_date":"2025-11-06","hari":"Kamis","buka_wib":"21:30","tutup_wib":"04:00","buka_et":"09:30","buka_wib_desimal":21.5},{"session_date":"2025-11-07","hari":"Jumat","buka_wib":"21:30","tutup_wib":"04:00","buka_et":"09:30","buka_wib_desimal":21.5}],"shape":"series","sql":"WITH bar AS\n(\n    SELECT\n        toDate(toTimeZone(window_start, 'America/New_York')) AS sesi,\n        window_start\n    FROM global_markets.delayed_stocks_minute_aggs\n    WHERE ticker = 'SPY'\n      AND window_start >= '2025-10-27 00:00:00'\n      AND window_start <  '2025-11-08 00:00:00'\n      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60\n           + toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570\n      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60\n           + toMinute(toTimeZone(window_start, 'America/New_York'))) < 960\n)\nSELECT\n    toString(sesi)                                                                                  AS session_date,\n    arrayElement(['Senin', 'Selasa', 'Rabu', 'Kamis', 'Jumat', 'Sabtu', 'Minggu'], toDayOfWeek(sesi)) AS hari,\n    formatDateTime(toTimeZone(min(window_start), 'Asia/Jakarta'), '%H:%i')                          AS buka_wib,\n    formatDateTime(toTimeZone(max(window_start) + toIntervalMinute(1), 'Asia/Jakarta'), '%H:%i')    AS tutup_wib,\n    formatDateTime(toTimeZone(min(window_start), 'America/New_York'), '%H:%i')                      AS buka_et,\n    round(toHour(toTimeZone(min(window_start), 'Asia/Jakarta'))\n          + toMinute(toTimeZone(min(window_start), 'Asia/Jakarta')) / 60, 2)                        AS buka_wib_desimal\nFROM bar\nGROUP BY sesi\nORDER BY sesi","computed_at":"2026-10-07T15:05:18.741572+00:00","elapsed":0.016693426}