Вы не будете "сортировать в реальном времени". Вы, вероятно, до сих пор использовали бы структуру данных heap (очередь приоритетов) из первых 50 заявок. Если следующая ставка выше минимума, вы должны удалить мин, а затем вставить новую ставку. Очередь приоритетов позволяет быстро найти минимальное значение, удалить его и добавить новое значение.
Вы можете сохранить среднее значение, добавив 1/50 разницы между новой ставкой и уходящей (только тогда, когда новая ставка лучше, чем 50-я самая высокая ставка).