When you only have a hammer, every problem looks like a nail. The OP (Original Poster) has MySQL, so that's the best place to move this post. MySQL is also a good tool for solving this kind of problem.
If MySQL supported the FULL OUTER JOIN, that would be the best solution. A UNION between two SELECT statements will get you close enough to get the FULL OUTER JOIN functionality.
A lot of the design decisions depend on how much history the OP needs to keep for research purposes. If the output of the comparison is all that is needed, then a simple (two table) design would probably be best. This is rarely the case, history often needs to be online for at least 15 trading days so some analysis needs to be done up front to ferret out the requirements.
The short answer boils down to "Yes, I think that MySQL can do what the OP needs relatively well."
-PatP