UTC storage helps, but I would also retain the original timestamp, source timezone and offset. During the autumn clock change, the same local 01:30 can occur twice. Reject an ambiguous timestamp until the offset is known instead of silently choosing one. I would also keep the candle session boundary separate from storage time: a UTC calendar day and a broker trading day can produce different daily highs and lows.