I, personally, would use 'at', but I cannot think of a legitimate reason for saying that 'for' is incorrect. If you have one, I'd love to hear it.
Just because it may not be immediately obvious to some that there is a valid reason for something doesn't mean that there isn't one. My reasoning (right or wrong) is as follows:
I bought it for $50
I bought it at a good price
These are 'correct' in the sense that there is no conflict in their use. The thoughts are clear and sound.
The language after
for tells us about what is exchanged, in this case what was paid. There is a basic meaning/use of the word
for that is part of the meaning of the thought.
The word
at usually tells us something about a relative
position or location. To me the use in this case suggests that in the mind of the speaker there is
a scale of price. The speaker was happy with the position of the purchase (a good price) on this perceived scale.
Because as natives we are all (to different extents) aware of the basic uses/meanings of prepositions, we often have a feeling or preference of one over another, without always knowing exactly why. My view is that there is always a why.
An auctioneer might say:
I sold it at $50. This is not incorrect -- in fact, it reveals that he had a scale of price in his mind and $50 represented a position on this scale. He doesn't use
for as he's just an auctioneer and he's not necessarily getting anything out it, in exchange. He will probably never even see the money.
And if a native speaker says:
I bought it for a good price, it suggests that he feels that he's getting a good price out of it. If this is true, then he's not actually using the language 'incorrectly' so I wouldn't say the use of English is 'incorrect'. In this case it is the
thought that is incorrect. He's not actually
getting the price, even if he thinks he is.
It is often the case that what we (or just I?) consider to be bad use of English, especially lexical choice, can actually be attributed to sloppy, unclear or misguided thinking. Our choice of language reveals our thoughts and these are not always conscious, or indeed 'correct'.
(This are just my thoughts on the matter - I may be hopelessly wrong!)