learn-economics-with-phoebe / Deep-dive session 6 of 10
Learn Economics with Phoebe · Deep-dive session 6 of 10

Auctions: how ads and compute are priced

Most prices on a marketplace are typed in by a seller who has a rough idea of what buyers will pay. An auction is what you run when nobody has that idea: the value of the thing is locked inside the heads of the people who want it, and the mechanism's whole job is to get it out of them at a price they will not regret. Two of the largest markets in the data economy are auctions, and neither looks like one from outside. Every ad position on a search page is sold by sealed bid in the time it takes the page to load, and spare compute is sold on a spot market where the price is whatever the marginal buyer was willing to pay. Tonight is the mechanism: why bidding your true value is safe in one design and a mistake in the next, why the position ladder that sells ads is not the honest auction it is often assumed to be, and why the winner of a common-value auction is, on average, the person who was most wrong. You leave with a working second-price auction in about twenty lines and a check that shading your bid never helps and sometimes costs you the item.

🟡 Core Analysts, growth and platform teams Python, numpy 45 min
0-3 · Welcome 3-18 · Sealed bids, the ladder, the spot market 18-40 · Build-along: a second-price auction and the shading check 40-45 · Q&A
Part 0

Where we start

Deep-dive sessions 1 to 3 measured how buyers respond to a price a seller chose. An auction turns that around: the seller chooses nothing but the rules, and the buyers reveal, through their bids, what the seller could never have measured. The design of the rules decides what the bids reveal. Under one rule the best thing a bidder can do is tell the truth about her value; under a rule that looks almost identical, telling the truth leaves money on the table and everyone learns to shade. Deep-dive session 5 ended on moats and the two-sided marketplace; tonight is the pricing mechanism that most two-sided platforms actually run, and the trap inside it.

🎫 Clear all three quiz questions to stamp your passport Live = presented in the 45 minutes Self-study = the full depth, after class ★ Build-along = run the code yourself

★ What you walk out with tonight. The reason auctions exist at all, the one-line difference between a first-price and a second-price rule and why it changes what people bid, Vickrey's 1961 result stated precisely enough to use, the generalised second-price ladder that sells ad positions and the 2007 proof that it is not truthful, a spot market for compute read as an auction, the winner's curse with its cure, and a numpy auction engine that shows in ten thousand random draws that shading a bid in a second-price auction never lowers the price you pay and sometimes loses you the item.

Part 1 · covers unknown values, first price and second price

Why a price is sometimes a question

5 min live

A seller who knows roughly what the thing is worth to buyers posts a price. A seller who has no idea, because the thing is unique, or new, or worth wildly different amounts to different people, cannot post one without either leaving money on the table or scaring everyone off. So the seller asks. The trouble is that a buyer asked "what is this worth to you?" has every reason to answer low, and the art of auction design is choosing rules under which the honest answer is also the smart one. The three bidders below are invented, and the mechanism they walk through is not.

THREE SEALED BIDS, ONE WINNER, ONE PRICE THAT IS NOT THE WINNER'S BID three constructed bidders; every value on this drawing is invented Ana values it at 80 bids 80, her true value Bo values it at 65 bids 65, his true value Cy values it at 50 bids 50, his true value sealed bids, opened together winner: Ana the highest bid, 80 decides who wins and nothing else pays 65 the second bid, Bo's Ana's bid decides whether she wins. Bo's bid decides what she pays. Ana cannot touch the 65 by changing her own bid. The price is someone else's bid. Bidding your true value costs nothing; shading can only lose the item.
🔍 Click to zoom - the amber tag is the whole trick: the winner pays a number that no change in her own bid can move, which is why she has no reason to lie about it
LiveThe problem an auction solves: the seller does not know the value3 min▶

Posting a price needs an estimate of demand. Deep-dive sessions 1 to 3 built that estimate from months of repeated sales of the same product. An ad position on one search page at one second, or a block of spare compute for the next hour, has no such history: it is sold once, it is worth different amounts to different bidders, and those amounts are private. Post a price and one of two things happens. It is too low, and the buyer who valued it most pays less than she would have; or it is too high, and it goes unsold. Either way the seller has thrown away information that only the buyers had.

An auction asks the buyers instead. The bids are the information the seller lacked. But asking is not free of trouble, because a buyer knows the answer will be used against her. Under a first-price rule, where the winner pays her own bid, "what is this worth to you?" is a question every rational bidder answers low. Under a second-price rule, where the winner pays the highest losing bid, the same question can be answered honestly with no regret. The difference between the two rules is one line of code, and it changes what every bid on the page means.

The three bidders above are constructed. Ana values the item at 80, Bo at 65, Cy at 50, and none of them knows the others' numbers. The point of the drawing is the tag: Ana wins because her bid was highest, and she pays 65 because that was Bo's bid. Her own bid appears nowhere in the price.

LiveFirst price against second price, on the same three bids2 min▶

First price: highest bid wins and pays its own bid. If Ana bids her true 80 she wins and pays 80, and her surplus is zero; she would have been just as happy losing. So she shades. Bid 70 and she still wins, paying 70, with 10 of surplus. Bid 66 and she wins with 14 of surplus, but she is guessing at Bo's bid, and if she guesses wrong she loses an item worth 80 to her. Every first-price bidder is playing a guessing game against the other bidders' unknown values, and the bids on the sheet are guesses, not values.

Second price: highest bid wins and pays the highest losing bid. Ana bids 80, wins, and pays 65. Now try to improve on that. Bid 90: she still wins and still pays 65, because Bo's bid did not move. Bid 70: still wins, still pays 65. Bid 60: she loses to Bo, and forgoes an item worth 80 that she could have had for 65. There is no bid that beats bidding her true value, and several that are worse. The bids on the sheet are values, which is what the seller wanted to know in the first place.

The same three people, the same three values, and under one rule the sheet is a guessing game while under the other it is a survey with no reason to lie. That is the sense in which the rules decide what the data means.

Self-studyVickrey 1961, and what "dominant strategy" means precisely2 min▶

Vickrey 1961, "Counterspeculation, Auctions, and Competitive Sealed Tenders", Journal of Finance 16(1) 8-37, is the paper that made the second-price sealed-bid rule a named mechanism. Its result, in the form worth carrying: in a second-price sealed-bid auction for a single item, bidding your true value is a dominant strategy, meaning it is at least as good as any other bid no matter what every other bidder does. Not "in equilibrium", not "if the others are rational", not "on average". Whatever Bo and Cy bid, whatever they know, whatever they are trying to do, Ana's best move is 80.

The proof fits in four sentences. Let the highest rival bid be b. If Ana's value v is above b, any bid above b wins and pays b, so she gets v minus b, and any bid below b loses and gets zero; bidding v is in the first group. If v is below b, any bid above b wins and pays b, a loss of b minus v, and any bid below b loses and gets zero; bidding v is in the second group. In both cases bidding v does as well as the best available option, and it does so without Ana needing to know b, which is the whole point: she has to know only her own value, which is the one thing she does know.

The result is fragile in an instructive way. It needs one item, one winner, and a rule that charges the winner a price her own bid cannot influence. Change any of those, as the ad ladder in Part 2 does, and the dominance goes away.

Real world

The position that is sold while the page loads. A search page has a handful of ad positions and, for a given query, a set of advertisers who each have a private idea of what a click is worth to them. No history of that exact query, that exact set of advertisers and that exact second exists to fit a demand curve on, so the position is auctioned each time the page is requested. The advertisers do not attend; they leave a standing bid, and the auction runs between the request and the render. Everything that makes an auction the right tool is present: unique item, private values, no posted-price history. Everything that makes the rules matter is present too, which is Part 2.

Part 2 · covers the position ladder and GSP

The ladder of positions, and why it is not Vickrey

5 min live

Vickrey's rule sells one item. An ad page sells several positions at once, and the top position gets more clicks than the second, which gets more than the third. The rule the industry settled on is called the generalised second price, GSP: rank the advertisers by bid, give the top bidder the top position, the second the second, and charge each of them the bid of the advertiser ranked just below. It sounds like Vickrey with more rungs. Edelman, Ostrovsky and Schwarz 2007, American Economic Review 97(1) 242-259, showed it is not: truth-telling is not an equilibrium of GSP, and the drawing below is the reason in one invented example.

FOUR BIDDERS, THREE POSITIONS: EACH PAYS THE BID BELOW constructed bids and click counts; the ladder is the real mechanism, the numbers are invented position 1 · 100 clicks A bids 10 · pays 7 the top rung, and the top price: B's bid position 2 · 80 clicks B bids 7 · pays 4 pays the bid one rung down: C's position 3 · 50 clicks C bids 4 · pays 2 pays the first losing bid: D's no position D bids 2 · pays 0 A's value is 10 per click (invented) truthful, position 1: (10 - 7) x 100 = 300 bid 6.9, position 2: (10 - 4) x 80 = 480 shading wins 180 more: truth is not an equilibrium Edelman, Ostrovsky and Schwarz 2007, AER 97(1) 242-259 VCG charges A for the harm A does to the others and then truth is dominant again; self-study card Click counts, bids and the value per click are invented; the payment rule is the real one. GSP: you pay the bid below you. VCG: you pay the harm you cause. Only the second makes honesty safe.
🔍 Click to zoom - the amber panel is the whole finding: A earns more by dropping one rung on purpose, so the bids on a GSP ladder are not values and were never meant to be read as values
LiveRank by bid, pay the bid below: the generalised second price3 min▶

The rule. Take the standing bids for a query, sort them, and hand out the positions in order. The advertiser in position k pays the bid of the advertiser in position k plus 1, per click. The top bidder pays the second bid, the second pays the third, and the last position holder pays the first losing bid. With one position this is exactly Vickrey. With several it looks like Vickrey extended, and that resemblance is why it was adopted and why it is misread.

Where the resemblance breaks. In Vickrey's single-item auction, a bidder who lowers her bid either keeps winning at the same price or loses everything; there is no third outcome. On a ladder there is: she can drop one rung. Dropping a rung means fewer clicks but a lower price per click, and whether that trade pays depends on the click counts and the bids beneath her. In the invented example, A values a click at 10. Truthful at the top she pays 7 per click on 100 clicks, for 300 of surplus. Bidding 6.9 puts her second, paying C's 4 on 80 clicks, for 480. She is better off lying, and she is better off lying by an amount that depends on numbers she has to guess. The sheet of bids is a set of strategic positions again, not a set of values.

The 2007 result. Edelman, Ostrovsky and Schwarz 2007, American Economic Review 97(1) 242-259, state it directly: truth-telling is not an equilibrium of GSP. The paper goes further and characterises what the equilibria look like, but the sentence to carry is the one above. GSP is not VCG, and a bid on a GSP ladder is not a willingness to pay.

LiveWhat the finding means for anyone reading auction data2 min▶

The practical consequence is about interpretation, and it is the same lesson as deep-dive session 2 in a different costume. There, a slope fitted across products looked like an elasticity and was not one, because the products were not comparable. Here, a bid on a GSP ladder looks like a value and is not one, because the bidder had a reason to shade that depends on everyone else's bids. Anyone who takes a feed of GSP bids and reads it as "what advertisers think a click is worth" is reading a strategy as a measurement.

The honest reading of GSP bids is that they are bounded by values from above, a bidder will not bid more than a click is worth to her, and shaped by the ladder from below. What sits between the two is the bidder's guess about her rivals. That is enough to run the auction, which is all the platform needs, and not enough to recover the values, which is what an analyst wants. The values are recoverable only under a mechanism where honesty is dominant, and the ladder is not one.

Self-studyVCG in a paragraph2 min▶

The Vickrey-Clarke-Groves rule is Vickrey's idea carried to several items or positions. Instead of charging a winner the bid below her, it charges her the harm her presence does to everyone else: the total value the other bidders would have received had she not bid, minus the total value they actually receive with her in the auction. With one item that difference is exactly the second-highest bid, so VCG and Vickrey coincide. On the ladder it is different from GSP. In the invented example, A's presence pushes B from position 1 to 2, C from 2 to 3 and D out, and A is charged the sum of what those three lost, valued at their own bids. Because the charge depends only on the others' bids and the effect of A's position, A's own bid cannot lower her price without also changing her position, and the single-item argument goes through: truthful bidding is dominant again.

Why did the industry run GSP rather than VCG? The paper discusses it and the honest summary is that GSP arrived first, was simpler to explain, and was already in use when the difference was understood. The lesson for anyone designing a mechanism, an internal market for compute, a bidding round for a data budget, a ranking for who gets which project, is that "pay the next bid down" is intuitive and is not the truthful rule once there is more than one prize.

Self-studyReserve prices: the seller's own bid2 min▶

A reserve price is a bid the seller enters on her own behalf. In a second-price auction it works as a floor: if only one bidder is above it, that bidder wins and pays the reserve instead of the next bid, which would have been lower. Set well, a reserve raises the seller's revenue on average, because the second-highest bid is often well below the highest and the reserve fills the gap. Set too high, it leaves the item unsold in the draws where it would have sold at a lower price, and that is revenue lost.

The reserve does not disturb Vickrey's dominance for the bidders. Each bidder's price is still either the reserve or a rival's bid, and neither is something her own bid can move, so bidding her true value remains her best move. What the reserve changes is the seller's problem: she has to choose a number, and to choose it she needs an estimate of the distribution of values, which is exactly the thing she ran an auction to avoid estimating. In practice she learns it from past auctions, which is where auction data and the panel methods of deep-dive sessions 1 and 2 meet.

Real world

The internal market that copied the ladder. A common pattern in a company with more analysis requests than analysts is to let teams "bid" for the next quarter's capacity with a priority score, rank the requests, and serve them in order. It is a GSP ladder with the money removed. The same incentive appears: a team that would get served first at a high score and served second at a slightly lower one, with less scrutiny attached, learns to drop a rung. The fix is not to ask harder for honesty. It is to change the rule so that what a team says about its own priority cannot lower the cost of what it receives, which is Vickrey's condition, and it is harder to satisfy than a scoring sheet suggests.

Part 3 · covers spot compute and the winner's curse

Compute on the spot, and the curse of winning

5 min live

A spot market for compute is an auction that never closes. Capacity is fixed in the short run, buyers state the most they will pay per unit of time, and the price at any moment is the lowest bid that still gets served; when demand rises, the clearing price climbs past the lower bids and those jobs are stopped. No price is quoted on this page and no vendor is named, because the mechanism is the same regardless of either and the numbers change weekly. The second half of the Part is a different trap, the winner's curse, which appears whenever the thing being auctioned is worth the same to everyone and nobody knows what that is.

ONE COMMON VALUE, FIVE HONEST GUESSES, AND THE WINNER IS THE WORST OF THEM a used dataset, a mineral lease, a block of compute: worth the same to everyone, known to no one true value 100, unknown to every bidder overestimate: 21 84 93 101 108 121, wins ESTIMATES five estimates of one value each honest, each noisy the highest one wins and it is the most wrong The estimates are invented; the mechanism is not. With one common value, the highest estimate wins, and the highest estimate is the most optimistic one. Bid as if you have already won: shade more when there are more rivals, and never bid your own estimate.
🔍 Click to zoom - the winner did nothing wrong except win; being selected for having the highest guess is what makes the guess wrong on average
LiveA spot market is a sealed-bid auction that never closes3 min▶

The mechanism, with no numbers. A provider has capacity that would otherwise sit idle. Rather than post a price for it, the provider lets buyers state a maximum per unit of time and serves them from the highest maximum down until the capacity is used up. The price everyone pays is set by the last bid that got in, the marginal one, which is a second-price rule spread across many units: your own maximum decides whether you are served, and someone else's decides what you pay. When new demand arrives with higher maxima, the marginal bid rises, and any running job whose maximum is now below it is stopped. That stopping is the price of the discount, and it is not a failure of the system; it is the system.

What it means for the bidder. The Vickrey logic applies per unit: the maximum you state should be what an hour of the job is actually worth to you, not what you hope the price will be, because your maximum does not set the price, it only sets whether you are in. Teams that state a low maximum to "save money" are not saving money; the price is the marginal bid whether their maximum is high or low. They are only raising the chance of being stopped. Teams that state a maximum above the on-demand price are paying nothing extra either, until the market clears above it, at which point they should have used on-demand anyway.

What the page does not say. No price, because it changes weekly; no vendor, because the mechanism is the same at all of them and the details differ in ways that do not touch the economics. The exercise is to read your own provider's documentation with the mechanism in hand and check which parts are Vickrey and which are not.

Self-studyThe winner's curse: common values, private estimates2 min▶

Everything in Parts 1 and 2 assumed private values: the item is worth 80 to Ana and 65 to Bo, and those are different facts about different people. Many auctioned things are not like that. A dataset to be resold, a block of compute for a job whose payoff is a market outcome, a licence to something whose value is set by the world and not the buyer: these have a common value, one number worth the same to whoever wins, and the bidders differ only in their estimates of it. The five dots in the figure are five honest, unbiased estimates of the same 100, invented for the drawing.

Now run the auction. The highest estimate wins. But the highest of five unbiased estimates is not unbiased; it is biased upward, by construction, because it was selected for being highest. The winner is the bidder whose error was largest in the optimistic direction. If she bid her estimate, she paid 121 for something worth 100. That is the winner's curse: the news that you won is bad news about your estimate. The cure is to bid as if you already know you have won, meaning to condition your estimate on being the highest of n, which shades it downward by more when n is larger and when the estimates are noisier. Bidders who do not do this lose money on average and do not notice for a long time, because each individual win looks fine.

The cause and the cure are standard economics with no single source, and the page claims no figure for how large the curse is in any real market; the size depends on the noise in the estimates, which is the one thing the bidders cannot see. The mechanism, though, is worth carrying into every "we won the bid" celebration on a common-value item: ask what the winning implies about the estimate before asking what to do with the prize.

Real world

The training run that stopped at three in the morning. A constructed story with a real mechanism. A team put an overnight training job on spot capacity with a low maximum to keep the bill down, and it was stopped at 3 a.m. when demand rose and the marginal bid passed their number. In the morning the argument was about whether spot was "unreliable". It was not; it was doing exactly what its rule says. The team's maximum was a bid, not a price, and they had set it below what an hour of the job was worth to them, which under a second-price rule is the one mistake that costs you the item without ever saving you a cent. The fix was a maximum equal to the job's true hourly value, plus checkpoints so that being stopped costs an hour and not a night.

Build-along

A second-price auction in about twenty lines, and the shading check

★ 22 min · everyone builds

Four steps in plain Python and numpy. The bidders and their values are constructed and the page says so in every box; the auction rule is the real one. Step 1 runs one auction. Step 2 lets one bidder shade and shows the price does not move. Step 3 repeats it ten thousand times on random values with numpy's default generator and counts the wins lost by shading. Your numbers will differ from anyone else's, and the two things that will not differ are that the count is never negative and that shading never earns more.

THE AUCTION ENGINE AS FIVE STATIONS 1 · draw values n bidders, uniform 0 to 100, invented 2 · form the bids truthful: bid = value shader: 0.9 x value 3 · rank the bids sort, descending the highest wins 4 · the price = the second bid never the winner's 5 · repeat 10,000 draws count wins lost Station 4 is the whole mechanism. Station 2 is where the shader's mistake enters, and station 5 is where it is counted. Count the draws where the shader held the highest value and still lost. That count is the lesson.
🔍 Click to zoom - the amber station is the one line that makes honesty safe; everything else is bookkeeping around it

One auction, three bidders. The rule is a sort and two lookups. The values are the invented ones from the Part 1 figure; the comment says so, and the filename at the end will too.

★ Step 1 · the ruleimport numpy as np # Three constructed bidders. Every value is INVENTED; the mechanism is the point. values = {"Ana": 80, "Bo": 65, "Cy": 50} def second_price(bids): """bids: name to bid. Highest bid wins and pays the highest LOSING bid.""" ranked = sorted(bids.items(), key=lambda kv: kv[1], reverse=True) winner = ranked[0][0] price = ranked[1][1] if len(ranked) > 1 else 0.0 return winner, price bids = dict(values) # everyone bids their true value print(second_price(bids)) # ('Ana', 65): Ana wins and pays Bo's bid

Let Ana shade, and watch the price not move. Three shades. At 10 percent she still wins and still pays 65. At 20 percent her bid of 64 falls below Bo's 65 and she loses an item worth 80 to her, for which she would have paid 65. Nothing she does moves the 65; it is Bo's number.

★ Step 2 · shading by handfor shade in (0.9, 0.8, 0.7): b = dict(values) b["Ana"] = values["Ana"] * shade # Ana bids below her value print(shade, second_price(b)) # 0.9 ('Ana', 65) bid 72 still beats 65: same winner, same price # 0.8 ('Bo', 64.0) bid 64 loses to Bo: Ana gives up 15 of surplus # 0.7 ('Bo', 56.0) worse still; the price Bo pays is now Ana's shaded bid

Ten thousand random auctions. Three bidders with values drawn from a uniform distribution on 0 to 100, which is invented and labelled. Bidder 0 shades by 10 percent in one copy of each draw and bids truthfully in the other. Two counters: how many draws she wins each way, and her total surplus each way. Because the other bids are the same in both copies, the price she pays when she wins is identical, so shading can only remove wins, never cheapen them.

★ Step 3 · the shading check, many drawsrng = np.random.default_rng(20180901) # any seed; your numbers will differ N, N_BIDDERS, SHADE = 10_000, 3, 0.9 def surplus(bids, v0): """bidder 0's surplus: value minus the second bid if she wins, else 0.""" if bids.argmax() != 0: return 0.0 return v0 - np.sort(bids)[-2] wins_true = wins_shade = 0 surp_true = surp_shade = 0.0 for _ in range(N): v = rng.uniform(0, 100, N_BIDDERS) # invented values, one row per draw truthful = v.copy() shaded = v.copy() shaded[0] *= SHADE # bidder 0 shades by 10 percent wins_true += truthful.argmax() == 0 wins_shade += shaded.argmax() == 0 surp_true += surplus(truthful, v[0]) surp_shade += surplus(shaded, v[0]) print("wins, truthful:", wins_true, " wins, shading:", wins_shade) print("wins lost by shading:", wins_true - wins_shade) print("surplus, truthful:", round(surp_true), " surplus, shading:", round(surp_shade)) # your numbers will differ; two things will not: the wins-lost count is never # negative, and the shading surplus is never above the truthful surplus

Write the sentence. One line that is true of the run you just made and stops where the mechanism stops. Then save the draws with the word "constructed" in the filename so nobody reads them back as data.

★ Step 4 · the honest sentencelost = wins_true - wins_shade sentence = ( f"In {N} constructed second-price auctions, shading by 10 percent lost " f"{lost} wins and never lowered the price paid; bidding the true value " f"is the dominant strategy (Vickrey 1961)." ) print(sentence) # your numbers will differ; the second clause never does np.save("auction_draws_constructed.npy", rng.uniform(0, 100, (N, N_BIDDERS)))

Change the rule to first price and run Step 3 again. Replace np.sort(bids)[-2] with bids[0] in the surplus function, so the winner pays her own bid. Now the truthful bidder's surplus is zero on every win, and the shader's is positive: shading is the right move under a first-price rule, and the size of the right shade depends on how many rivals there are. Same values, one line changed, opposite advice. That is the whole of Part 1 in a diff.

Homework

Before deep-dive session 7

30 min
  1. Run the four steps and then vary N_BIDDERS from 2 to 10. Write down how the wins-lost count changes with the number of rivals, and one sentence on why.
  2. Build the ladder. Extend Step 1 to three positions with invented click counts, charging each winner the bid below. Find a bid for the top bidder that beats her truthful bid, as in the Part 2 figure. Label every number invented.
  3. Read your provider's spot documentation with Part 3 in hand. Write which parts of the rule are Vickrey (your maximum decides whether you are in, not what you pay) and which parts are not. No prices in the write-up.
  4. Simulate the curse. Draw five noisy estimates of a common value of 100, invented, take the highest as the winner's bid, and repeat a thousand times. Report the average winning bid. It will be above 100, and the amount is the curse.
Check yourself

Three questions

Clear all three and deep-dive session 6 gets stamped in your passport.

1 · In a second-price sealed-bid auction for one item, Ana values it at 80 and is thinking of bidding 70 "to save money". What does the shade do?

Vickrey 1961, Journal of Finance 16(1) 8-37. The winner's price is somebody else's bid. Shading cannot move it and can only forfeit the item; the Step 3 count of wins lost is never negative and the shading surplus is never higher.

2 · The generalised second price ladder charges each position holder the bid of the advertiser ranked just below. Why is it not simply Vickrey with more rungs?

American Economic Review 97(1) 242-259. With one item a bidder can only win or lose; on a ladder she can also move down a rung, and that third outcome is what breaks the dominance argument. VCG, which charges the harm a bidder does to others, restores it.

3 · Five bidders each form an honest, unbiased estimate of a dataset's resale value, which is the same for all of them and known to none. The highest estimate wins at its own bid. What should the winner conclude?

The winner's curse. The highest of several unbiased estimates is not unbiased, because it was selected for being highest. Standard economics with no single source; the page claims no figure for its size, which depends on the noise the bidders cannot see.

Sources covered

What this session teaches, and where it came from

✓Why auctions exist: private values the seller cannot observe; first price against second priceStandard economics, no single source
✓Vickrey 1961, "Counterspeculation, Auctions, and Competitive Sealed Tenders", Journal of Finance 16(1) 8-37: in a second-price sealed-bid auction, bidding your true value is a dominant strategyPrimary; citation confirmed against the journal record
✓Edelman, Ostrovsky and Schwarz 2007, American Economic Review 97(1) 242-259: the generalised second price auction; truth-telling is not an equilibrium of GSP, unlike VCGPrimary; the abstract read at source
✓The three bidders (80, 65, 50), the four-bidder ladder with 100, 80 and 50 clicks, the five estimates around 100, and the 10,000 uniform drawsConstructed; every value is invented and labelled, the rules are the real ones
✓Spot markets for compute as a second-price rule spread across many units: your maximum decides whether you are served, the marginal bid decides the priceMechanism only; no price and no vendor is named, and the exercise is to check your own provider's rule against it
✓The winner's curse: with a common value, the highest estimate wins and is biased upward by selectionStandard economics, no single source; no figure for its size is claimed
◐VCG as the truthful multi-position rule; reserve prices as the seller's own bidSelf-study; named and explained in a paragraph each, not built

Every fact on this page, and its verification tier, is recorded in the course's source map.

Deep-dive session 6 cheat sheet · pin this

An auction is a questionRun one when the value is private and unknown to the seller. The rules decide what the answers mean.
First price: guess. Second price: tell the truthPay your own bid and you shade. Pay the next bid and your own bid cannot touch the price.
Vickrey 1961, J. Finance 16(1)Truthful bidding is dominant: best no matter what everyone else does. One item, one winner, price set by a rival.
GSP is not VCGEdelman, Ostrovsky, Schwarz 2007, AER 97(1). Dropping a rung is the third outcome; truth is not an equilibrium.
Spot compute is an auctionYour maximum decides whether you are in; the marginal bid decides the price. Bid the job's true hourly worth.
The winner's curseCommon value, private estimates: the highest guess wins and is the most wrong. Bid as if you have already won.