boost - Calculate rolling / moving average in C++ -
i know achievable boost per:
using boost::accumulators, how can reset rolling window size, keep history?
but avoid using boost. have googled , not found suitable or readable examples.
basically want track moving average of ongoing stream of stream of floating point numbers using recent 1000 numbers data sample.
what easiest way achieve this?
i experimented using circular array, exponential moving average , more simple moving average , found results circular array suited needs best.
you need circular array of 1000 elements, add element previous element , store it... becomes increasing sum, can sum between 2 pairs of elements, , divide number of elements between them, yield average.
Comments
Post a Comment