> If I put a market order to sell meat at the market price of 10$ at 10AM
Yes, at 10AM (before news happens) you can take the $10 price. And, unfortunately for you, the world might change 1 microsecond later. And it sounds bad when you say "1 microsecond" but what if you say "5 minutes" or "1 hour" or "1 day"? You're probably going to feel just as bad about missing out on a better price even if the timescale is a human one instead of an electronic one.
There is no way to avoid this. The world can change after your sell your meat. It might change 1 microsecond later or it might change a week later. You chose to sell when you chose to sell. You can't say oopsies and complain if the world changes after you made your decision. The fact that the world can change after you make your trade has absolutely nothing to do with high speed trading.
Very high speed price discovery actually works in your favor here! At least the price jumps to $20 really really fast after the news now. Without computers it might take 5 or 10 minutes (or whatever). The sooner the news is incorporated the smaller the time window in which you can accidentally screw yourself.
While thinking about this, keep in mind also that the price might drop (maybe there is a bumper crop of cows). If you sold now for $10 but then the price dropped to $5 you'd feel great. When you sell now you're taking the risk of a price change (in either direction) off the table. You can't on one hand, avoid a price drop, but on the other hand think that you should get the benefits of a price rise.
> the first HFT to get the news of the catastrophe at 10AM + 1 microsecond will buy them from me at that price,
This is actually wrong and not what happens. The trade you're talking about happened at 10AM (before the news). You put in a market order which means "take whatever price is being offered right now." not "put my meat out for sale and wait for someone else to trade with me."
So no trade is happening at 10AM + 1 microsecond (after the news).
> If trades were only allowed every 60 seconds like the comic suggests
Ah yes. Everyone eventually hits on this idea, but it doesn't work. What happens if, at a given price, the # of buyers and sellers doesn't match up at the time you want to execute all the trades?
1. Execute the trades that put in their orders first. Well then you're back to where you were before.
2. Execute some % (less than 100%) of one side of the trades so that everything matches up. But then you create a very unstable situation. If I think that maybe only 50% of the trades are going to execute you've incentivized me to say I want to trade 2x of what I really want to trade. But wait, everyone else is also thinking the same thing. So maybe 4x? Repeat ad nauseam. This is a very unstable game-theory heavy sort of situation that's actually pretty dangerous.
And really even if you do this you haven't removed the need for high speed computers & communication. Lets say that a block closes at precisely noon. I definitely don't want to input my trade at 11:59:01. What if there is news in the next 59 seconds? I really want to wait until the last possible microsecond to input my trades for the block right? So...we're back to where we were before anyways.
The real world is continuous. It's not really possible to make markets based on the real world operate discretely.