The article states that it's the "greatest overall attacker in the game, along with resisting every single attack from the greatest gym defender Blissey."
They put Metagross ahead because they also considered it's defensive uses. Machamp and Rayquaza may have better DPS or type coverage, but they are kinda frail and they don't resist Blissey's moves like Dazzling and Psychic. Which of course, puts Meta ahead.
Personally, I'm fine with them putting Metagross ahead as they did consider other variables such as defense rather than simply "Who does more damage". DPS isn't always the most important thing. I dislike using steel as an offensive type so I always use Dragons/Fighting/etc... over Meta.
Edit: Have they also considered the availability of certain attackers? If they did, Rayquaza would not qualify since it's a tier 5 raid only and a majority of the player base does not have one. Whereas, Metagross is a CD pokemon.