November 01, 2012
Price Discovery is Hard.
Seen on the net, copied as is, from James A. Donald:
On 2012-11-01 7:18 PM, CodesInChaos wrote:
> 3) You need to figure out an appropriate price. In the simplest case
> the uploaders simply send to the offer with the highest payment
That just offloads the problem of price discovery somewhere else in the system.
Price discovery is hard.
Price discovery in micro transactions needs to be substantially automated - at both ends. People will not invest the effort needed for manual price discovery.
Bad, incompetent, or buggy price discovery has killed every previous effort to solve this group of problems.
Price information is probabilistic, thus a price discovery mechanism has to support a full Bayesian model, recursive probabilities estimating the probability that the true probability is p, performing maximum entropy modeling. This is the sort of work that gets very smart engineers hired at astronomical salaries by wall street.
[James A. Donald]
Posted by iang at November 1, 2012 09:51 PM
I've followed your blog for a long time, and I'm curious about this. There are two sides to this price discovery thing.
As a seller, I want to discover demand, i.e. what customers want my product, and how much they would buy at a given price.
As a buyer, I want to discover supply, i.e. who has the product I want to buy, and how much they are willing to sell me at a given price.
So at the price and quantity where supply and demand meet, that's the deal we make, in an ideal world.
As a retail consumer, I insist on manually discovering the price for everything I buy---if this process is automated, my bank account would be drained in no time flat---because, inasmuch as there is a "system" in place to make it convenient for me to buy something, the sellers are in control of that system, not I. I confess I cannot grasp the concept of a microtransaction from the point of view of a consumer. My only way to control this would be to refuse to open my checkbook to "micro-merchants" who want to nickel-and-dime me for this that and the other thing. Maybe I'm cheap or old-fashioned, but I can't imagine giving up that level of individual control. The other day I forgot my wallet but somehow I had my checkbook with me, and I ended up writing a check for 65 cents for a stamp at the post office. That's a microtransaction, but it took no more or less time than writing a check for, say, 500 dollars to pay one of my bills. And why should it?
But back to the price discovery: a buyer wants to discover as much information as possible about the supply of a product while revealing as little as possible about his own demand for it. Conversely a seller wants to discover as much as possible about the demand for a product while revealing as little as possible about supply. Hence all the analytics and tracking behind the scenes by people who want to sell us stuff on the internet. Nor is it in the interest of either party to reveal his or her own final make-or-break-the-deal price. That's why people haggle so much when they make a deal in real life---they're really dickering over the producer surplus vs. the consumer surplus of the deal, but it doesn't work unless you're willing and able to kill the whole deal if you feel you're not getting a fair shake.
So price discovery is hard, like you say. People do a lot of haggling and dickering to discover price, and people who are good at it generally make more money than people who aren't.
Haggling isn't a factor in auction style markets or in markets with a trading book of waiting orders (such as stock markets). Ian is completely right that micro transaction markets need to be automated. This can be done using artificial intelligence bots who place bids and offers on trading books. This has potential in creating a decentralized Internet or P2P network where traffic and network services get routed by least cost, where cost is monetary. All services and traffic would be paid for by micro-transactions. A server or route which is not busy could lower its prices to attract traffic. A server or route which is overwhelmed would raise its prices to deter traffic. A piece of data looking for a route would find the least cost route by comparing the prices of possible routes. A structure like this would enable ISPs and backbone providers to make money with micro transactions without having to have subscribers. This would provide the monetary incentive that they need to operate profitably without having any centralization. This is the key to making a decentralized Internet that can scale globaly. So far all attempts at decentralized Internet are limited to local areas because the participants don't have any way to profit from the services they offer.
Adding to my previous comment, by decentralized Internet, I mean what some people refer to as a mesh network. We need to create a new network which does not have any centralized components whatsoever - both the naming system and the addressing system need to be completely decentralized. And an important key to making this work globally is for all data transfer and network services to be paid for monetarily in micro transactions, where all service providers compete with each other in price, and routes are found by least cost monetarily.
Thanks for explaining that to me. You've made an excellent case.
I still see a big gap between theory and bah humbug reality, though, because at some point those micro transactions are going to accumulate into actual bills to pay. And as soon as money is involved in a decentralized fashion you need some kind of decentralized and undeniable proof of transit for the data that was billed. Which would probably require some kind of encryption to ensure it was not decrypted before it was paid for, and so on and so forth.
But maybe you guys already have a scheme with all this figured out.
So far this is just me advocating micro-payments to pay for traffic and services. I don't have any scheme fully figured out, but I think that both sides of any link could just keep track of traffic and compare their figures. If they disagree, then how they handle it depends on their relationship. If they have a friendly relationship, small disagreements should not be a problem. If they don't have a friendly relationship, that link will simply cease to exist in the network. With a completely decentralized network, the disappearance of some links won't be a problem because traffic has such a wide variety of routes to choose from.
I don't think that a PKI would be necessary for most of the network. Fixed links, such as land lines or fixed wireless links are between nodes with an ongoing relationship who have a basis to establish trust. The accounting between fixed links would not be designed to provide evidence for 3rd party dispute resolution, but rather it would be assumed that such parties will handle their own disputes. Thus, the only accounting necessary would be a count of packets for each interval when a particular price is in effect. The only part of the network which would need PKI and evidence for 3rd parties would be for mobile wireless links between nodes who do not know each other. This type of data would have a higher accounting overhead and thus a higher cost, but would probably only be a factor at the endpoints of routes for mobile users.