And here's a trick. I don't store live data into the datafile but aggregate and cache only historical data (that are delayed). Live data are sticked to the historical ones and are eventually replaced when historical data become available.
I see your point and I thought about something like this. Unfortunately SierraChart isn't so much flexible - it is streaming quotes from current file pointer and rewriting history in this stream will break charts :-(.