I think some of the issue is AMD releases cards like the 290X that, at release, was losing to its competition (GTX780TI/TITAN, I believe?), at the resolution that mattered, 1080P, but after a year/2 years, was putting up numbers that competed against the GTX980 and above. Sure, looking at the numbers now, the 290X was the obvious buy, but people buy videocards based on the performance when they buy it, not for the potential numbers it could put up in two years.
The 290X was a hell of a card but it was hamstrung by that very fact. The move to DX12 seems to be helping a bit but it's more like AMD is catching up to where NV already was, not getting ahead. NV had DX11 optimized so well that it was already running as good as DX12 currently does..
The HD5870 was a great card at release though. That was the last AMD/ATI card I owned. Then the GTX480 came out and completely **** on it, so I moved to that.