I'm new to investing, but am very interested in the workings of the market. Does anyone know of a (preferably free) way to retrieve historical 52-week highs data? Specifically, I would like to analyze the behavior of stocks that appeared on the highs list five to ten years ago.
Be wary of survivorship bias, particularly in free sources. For example, explore Yahoo!'s historic quotes for CPQ, HWP, and HPQ. Yahoo! (and other free sources, and often paid sources) will generally only have historic quotes (or any information) for companies that still exist today, and they may or may not handle symbol changes correctly.
While free sources will be able to answer questions like "what did XYZ's 52-week highs look like 10 years ago" (XYZ some company that still exists today and has been around at least 11 years), if you try to calculate "what have stocks that made 52-week highs 10 years ago done vs those that didn't", your results will be skewed because each set will only include companies that still exist today. Companies that in the meantime have gone bankrupt, been bought, merged with some other company, were delisted for some reason, etc., won't show up, even though you may have bought them had you been investing 10 years ago.
What you're contemplating doing is called backtesting ("If I use some method to pick stocks, what would it have done for me if I'd started using the method 10 years ago?"), and survivorship bias is a big thing to watch out for.
I obtain the historical data which I use from Yahoo: