Mover médias com a estrutura de agregação do MongoDB?

Se você tiver 50 anos de dados climáticos de temperatura (diariamente) (por exemplo), como calcularia as médias móveis, usando intervalos de três meses, para esse período? Você pode fazer isso com uma consulta ou precisaria ter várias consultas?

Example Data

01/01/2014 = 40 degrees
12/31/2013 = 38 degrees
12/30/2013 = 29 degrees
12/29/2013 = 31 degrees
12/28/2013 = 34 degrees
12/27/2013 = 36 degrees
12/26/2013 = 38 degrees
.....

questionAnswers(4)

yourAnswerToTheQuestion