We could set up a dynamic pricing situation where the amount of data changes based on the current price, but that gets really confusing.
Discussion
Could you do the average of a weekly/biweekly range? Say the lows and highs of the week and then average them out by how many data points you want to take?
BTCPayServer has it all with the configurable buffer. It is easy to do, no need to even think about it