You're on the right track, because pings lack a particularly important option I think, which is essentially, "Gank incoming", which is not the same as "Danger". Also, to regard pings to nearby players or all players, sort of separating them to local or global pings. There's a lot of confusion and ambiguity about the ping system that could definitely be cleared up.
The "Danger" ping is very ambiguous and doesn't actually indicate what the team should do, or even if it's specific to anyone. It almost always requires some sort of other indicator or follow-up in chat to clarify what that person means.
While I can't fully go along with the complexity of what's suggested, I do think the pings are too ambiguous and fail to communicate any truly meaningful information.
A "fall back" ping would also be a much better idea than the basic "Caution" ping, for the same reason "Danger" doesn't really communicate what to do.