I was looking at tickdata.com recently and IIRC the whole tick history for SNP was cheaper than that.
And I've never seen any Java programs that create continuous contracts. Presumably you mean back-adjusted as well. If something did exist, it would have to have the right input and output...