Over at StackOverflow, there's a question that many people are trying to answer. Basically, it's a variant of "how do I stop a bot from buying the good stuff?". Amongst other things, there's a restriction that the solution must not hamper the end user (thus, no Captchas, "pick the cat" or "solve this differential equation" types of solution).
The vast majority of answers are, well, bad. Many of them basically "step up the arms race". My solution was simple. Don't stop the bots.
The "choice" items the bots are buying are infrequent. I say "sell 'em all the time", but most of the time, sell things like a broken toothpick or a shiny pebble you picked out of your shoe. The bots will quickly buy up worthless stuff and the humans will laugh themselves silly.
I explain in more detail here. Feel free to vote it up if you have StackOverflow account
You don't always need clever code. Sometimes you just go with the flow.