"""Check Python M5 data around 2025-01-02 to understand time alignment.""" import sys from pathlib import Path PROJECT = Path(__file__).resolve().parent.parent sys.path.insert(0, str(PROJECT)) import pandas as pd from shared.data.loaders import load_bars m5 = load_bars("data/XAUUSD_M5_2024-06-26_2026-06-26.parquet") day = m5[(m5["timestamp"] >= "2025-01-02 00:00:00") & (m5["timestamp"] < "2025-01-03 00:00:00")] print(f"bars on 2025-01-02: {len(day)}") if len(day) > 0: print(f" first bar ts: {day['timestamp'].iloc[0]}") print(f" last bar ts: {day['timestamp'].iloc[-1]}") print() print(" bars 01:50-02:00:") sub = day[(day["timestamp"] >= "2025-01-02 01:50:00") & (day["timestamp"] <= "2025-01-02 02:00:00")] print(sub.to_string() if len(sub) else " (none)") print() print(" bars 15:45-15:55:") sub = day[(day["timestamp"] >= "2025-01-02 15:45:00") & (day["timestamp"] <= "2025-01-02 15:55:00")] print(sub.to_string() if len(sub) else " (none)") print() print("first 5 bars of 2025-01-02:") print(day.head().to_string()) print() print("first bar of 2025-01-02 timestamp hour:", day['timestamp'].iloc[0].hour)