Those are the most recent prices. b = instant buy price, s = instant sell price.
The order of hats is Purple/Yellow/Green/Red/White/Blue. Because blue is above max cash, and therefore not traded on the GE, it's given as a range rather than a "b" or "s" price.
Partyhats generally have a 2-5m margin.
Coal is so heavily traded that it's hard to get it super cheap (essentially there's usually someone out there buying), but maybe 20gp under med is reasonable.