A big reason that predicting the market with historical data not working is that the market evolves and will continue to evolve.
100 years ago, the market was moving in a handful of patterns. Just as our daily life and technology changes rapidly, people's purchasing behavior, therefore market behavior changes.
The minute you are done building a predictive model, you are implicitly assuming the market behavior or other fundamentals will not change from the trained data. That is not true.
I.e. you can't put Apple's and Pineapple's together to compare weights just because they have 'apples' in common.