I've criticized the hot questions algorithm quite heavily on MSO in the past, it does favor certain types of questions without a good reason, and it has a strong self-reinforcing effect where questions that manage to get into the hot questions list get disproportionally more votes, which keeps them there longer.
But the algorithm is not the only thing responsible for the result, it has to work with the information it can get about the questions. It can't actually judge the quality of questions, the only measure it has available is the score of the question and its answers. Voting generally favors questions that are accessible to a wide audience, very specialized question tend to get rather low scores. The algorithm will prefer questions that appeal to a wider audience due to that, but that isn't necessarily a bad thing for the hot questions list. The votes from users that arrive at the question from the hot questions list will exaggerate this effect, but they are not the primary cause of it.
One aspect particular to MSE is that this site is one of the very few sites that still allows certain kinds of questions (the type often tagged as soft-question or big-list) as community wiki question. If this kind of question is so ridiculous or embarrassing, why are they still allowed? If ridiculous questions are not getting closed, but instead upvoted, the problem is not the selection algorithm for the hot questions list, but that those questions are upvoted and left open.
I've proposed a similar change and a few others in the following feature request on MSO: Better criteria for the hot questions list
There are several aspect that could be improved in my opinion:
Questions can stay in the list for too long, making the list a bit too static for regular SE users. I've previously posted a feature
request about this, and I still think that no question should be
able to stay in the hot questions list for a whole week.
The current criteria are prone to select problematic questions. They value a high number of answers, which you find for example in
list questions. So questions like this example from Math.SE have
it easy to get into the list, while this type of question is regarded
as problematic by most of the SE network and explicitly disallowed on
many sites.
Being in the list of hot questions is self-perpetuating. Questions on the list get significantly more exposure, which means more votes,
which then improves the position in the list of hot questions. The
votes from outside users are also problematic as they represent mostly
the popular appeal of the posts, not necessarily a judgement of the
quality by an expert.
I've some ideas on what could be changed:
Exclude community wiki questions from the list. Those are usually big list-style questions that aren't a good example for high-quality
content across the network.
Put less value on a high number of answers. The current method values (as far as I understand it) a high number of answers and a high
total score of all answers. This preferentially puts more subjective
or list-type questions to the top. A good question that got one
high-quality answer that is highly upvoted shouldn't be at a
disadvantage compared to a popular question that gets lots of
opinions. Maybe counting only the first two or three answers and their
combined score would be enough.
Weight external votes differently from internal votes. External votes from users that discover the question via the hot questions list
shouldn't be counted in full, they mostly represent the additional
exposure and the mass-appeal of the question, not necessarily the
quality. But they also shouldn't be disregarded completely, a question
that doesn't get any votes from the external users is probably too
specialized to be of interest to a wide audience.
Normalize votes for each site. The voting behaviour varies a lot between different sites. Currently sites that have an above average
number of votes are favoured compared to other sites. Normalizing the
votes on a per-site base would put a stronger emphasis on the number
of votes a specific questions gets compared to other questions on the
same sites. It would prevent certain sites from being overrepresented
due to their general voting behaviour.