The Market Sleeps When You Do

29 million completed sales say there's a best hour to buy and a best hour to sell — and that it only pays on cards you'd never bother timing.

Shaun, the Headghoul of RGL8 min readResearch

There is a worst possible moment to sell a card in MLB The Show, and a lot of you are hitting it every morning before work.

I pulled every completed sale we've recorded for 45 days — 1,018,321 hourly records covering 28.9 million individual transactions — and asked one question: does the hour you trade actually change the price you get?

It does. The gap between the best hour and the worst hour is 18.3 percentage points.

Then I split it by card price, and the finding turned inside out. The timing edge is real, it's large, and on the cards most people actually care about timing, it's worth nothing at all. That second part is the interesting part.

What I measured, and why it's not just "prices go up and down"

The obvious trap with a question like this is that cards decay. If I averaged raw prices by hour, I'd mostly be measuring which cards happened to be trading that week, and every card's slow slide toward the floor would smear across everything.

So each hour is compared to that same card's own average on that same day. Card 12345 on July 14th has a mean sale price; each of its hours reads as a percentage above or below that. Then those relative numbers get averaged across every card and every day.

That kills the card-price scale and it kills the multi-week decay. What's left is the shape of the day itself.

The set: 38,504 card-days, filtered to cards with at least 40 sales that day, because a card that sold twice tells you about those two buyers and nothing about the market.

Every card, 45 days. The peak sits in the US evening; the floor is the American morning commute.Every card, 45 days. The peak sits in the US evening; the floor is the American morning commute.

Prices peak at +5.1% in the late US evening and bottom at −13.2% at 8am Eastern. The curve is a clean U — down through the American night, flat along the bottom through the European and Asian daytime, back up as the US wakes and logs on.

That U matters. If this were just cards decaying through the day, the line would slope down and stay down. Instead it comes back every single day.

Why: the market is a room, and the room empties

28.9 million sales, by hour. The busiest hour does nearly six times the trade of the quietest one.28.9 million sales, by hour. The busiest hour does nearly six times the trade of the quietest one.

The busiest hour of the day moves 1.86 million cards. The quietest moves 0.32 million — under a fifth as many. Both curves have the same shape because they're the same phenomenon: North America is most of this market, and when North America is asleep there is nobody bidding.

Sellers still list overnight. Buy orders still sit there. But the competitive pressure that holds a price up — several people wanting the same card in the same ten minutes — goes away, and the price settles toward whatever the patient buyers are willing to pay.

The twist: it only works on cheap cards

Here's where my prior was wrong. I assumed the swing would be smaller on cheap cards, because a few hundred stubs of spread on a 2,000-stub card is noise. Exactly backwards.

Same measure, split by price. The cheap band swings 22 points. The expensive band barely moves.Same measure, split by price. The cheap band swings 22 points. The expensive band barely moves.

Card priceDaily swingCard-days
Under 5,000 stubs22.5 points31,707
5,000 – 25,0005.8 points6,020
25,000+5.0 points1,834

Cards under five thousand stubs swing from +6.6% to −15.9%. Cards over twenty-five thousand spend the entire day inside a few percent of flat.

I think the mechanism is granularity. On a 1,500-stub card, the difference between two adjacent sensible asking prices is a meaningful fraction of the whole price, and there are far more casual sellers dumping commons at whatever clears. On a 300,000-stub card, the people trading are paying attention, the spread is proportionally tighter, and there is a floor of serious buyers who don't go to bed.

Now the part that actually decides anything: the tax

An 18-point spread sounds like free money. It isn't, because Sony takes 10% of every sale.

Run the round trip properly — buy at the trough, sell at the peak, pay the tax on the sale:

  • Cheap cards (under 5k): +14.1% net
  • Expensive cards (25k+): −4.1% net

Read that second number again. On expensive cards, the daily swing is smaller than the tax you pay to harvest it. You would do the whole dance — wait twelve hours, time both ends perfectly — and come out behind.

So the honest version of this finding is uncomfortable: the timing edge is largest precisely where the absolute payoff is smallest. Fourteen percent of a 2,000-stub card is 280 stubs. You are not retiring on this.

What it's actually good for

Three things, in descending order of how much I believe them.

1. Stop selling into the morning. This one is free. If you're sitting on cards to sell and it's 8am Eastern, you are at the literal bottom of the daily curve. Wait until the evening. You are not timing a market, you are declining to sell at the worst moment of the day.

2. Buy your grind inventory overnight. If you're accumulating commons and bronzes — collection fodder, program requirements, parallel grinding stock — the morning window is genuinely and reliably cheaper. That's the band where the effect is strongest, and buying is untaxed, so you keep the whole discount.

3. Don't build a flipping strategy on it. The +14.1% is a ceiling that assumes you hit both ends perfectly on a card that didn't move for any other reason. Real cards drift. The half-life piece showed pack diamonds losing about 7% in their first week — roughly 1% a day of downward drift, quietly eating a timing edge you waited half a day to collect.

What I'm not claiming

This is intraday timing only. It says nothing about whether to hold a card for another week. For that, every diamond has a half-life is the piece you want — the macro curve is far more valuable than this one, and it points the same direction: sell earlier than feels comfortable.

One caveat on the method, because it cuts against me. The daily average each card is measured against is volume-weighted, and volume clusters in the same hours as the high prices. That pulls the baseline slightly toward the busy-hour price and makes the quiet hours look a touch further below it than a pure time-of-day effect would. It amplifies the number; it doesn't manufacture it. The volume curve and the price curve were computed independently and agree, and the shape survives in every price band.

Everything here is UTC-anchored and converted to US Eastern, because that's where the mass of this market is. If you play from Europe, your convenient evening is our discount window — which is either a small edge for you or an explanation for why the prices you see feel different from what everyone on Twitter is quoting.

And this will decay if it gets popular. An edge that everyone reads about is an edge that gets arbitraged away. I'd rather publish it and watch it compress than sit on it.

Where this goes next

Two questions this data can already answer, which I haven't run yet:

  1. Does the curve survive a content drop? A Wednesday with a new pack is not a normal Wednesday. My guess on the record: the overnight discount disappears entirely, because the people who normally sell into a thin overnight book are the same people up late opening packs. There are eight drop days inside this window to test it on.
  2. Does it hold across a roster update? In the days before one, there's a real reason not to sell a card that might be about to get better. If that's true at any scale, the usual morning slump should flatten — or invert. Two scored roster updates sit inside these same 78 days.

I'm calling those now so you can hold me to them. Both are the same query with a date filter on it, which is the honest reason they aren't in this post: I wanted to publish the plain finding before I went looking for the interesting exceptions to it.

I'm Shaun. If something looks wrong, the comments are open — and if you want the query, ask, because the whole point of publishing numbers is that someone can check them.