Yes, fish, Ansari horses, (VERY large price differences) and maybe large quantities of a goods you've collected.
If I have 3k grain that has averaged around 15ea, and I sell or lose it all and buy more later starting at 9ea how would that affect my average? Wouldn't that make me need to buy an absurd quantity at 9 or lower to bring my average up?
There's also , how would using city or castle stashes come into play? If they're in stash I don't think they get eaten, and they're certainly not available for the markets use.
Theoretically. I could use the Buy All The Things strategy, and just stash it all in a city and never sell any of it.
So yeah, how would the average change if I single handedly crash the world's economy?
If you have the capital to crash the economy, all bets are off. Real life economic systems fail when there is that much concentration of capital and the intent to abuse it, so I'm not too concerned if the game can't solve that problem. Or to frame it differently, the problem then isn't that the game's economic system can't handle that much concentration of capital, the problem is that the game's system allows that much concentration of capital to occur in the first place.
To address your 3k grain example bought at 15d, literally you say that you have sold or lost it all before buying it later at 9d. In that instance the 15d you originally bought at is irrelevant (or more accurately, has already been dealt with at the times you sold or lost it) as you are buying at 9d from a starting point of zero stock. As such your average buy is 9d. The average buy price is static until you buy again, losses and even sales don't change it except by making it easier for a future purchase to move the average, and also the corner case of your stock being reduced to zero at which point the average buy price becomes null, then the next purchase sets a new average buy price subsequently. There is no need to record complete buying history, only the current buy average which is updated when each buy is made based on the old buy average and old stock level.
If you still had the 3k bought at 15d when you started buying at 9d then yes, you would need to buy an absurd quantity at 9d to change the average - and so you should. If you want trade skill gains from buying that much grain at 15d, you need to sell it at more than your bought it. Buying 1 additional unit at 9d then selling your 3,001 units at 10d is a net loss of approximately 15,000d [3,000 * 15d = 45,000d + 9d = 45,009d spent, sold at 3,001 * 10d = 30,010 gross income, that's a 14,990d loss] and should not be rewarded with skill gains.
Economically, the magnitude of variation a good can have (such as for horses) also shouldn't matter. Average cost of acquisition minus average cost of disposal = actual profit regardless. A horse lost in battle is treated the same way as a bag of grain consumed.
The stash question is a really good one, I hadn't thought about that. Because this is a single player game I think we can afford the luxury of solving that problem in a simple way while preserving the integrity of the economics by treating stashes as extensions of your inventory. If you buy 3,000 units of grain at various prices averaging 15d and stash them around the world it is no different to carrying it with you. There shouldn't be any opportunity to hack your Trade skill gains by stuffing the grain under your mattress and pretending it doesn't exist - if you bought 3k units of grain at 15d and want to be rewarded for disposing of it, you need to dispose of it to the market at more than 15d no matter when and where you do it. If you lose it because your town got captured, that's no different to it getting eaten: loss of stock doesn't effect your buying average and is not relevant to it. What loss DOES do is reduce the amount you have, and thus makes it easier to move the average with your future purchases.