Curve fitting involves finding a curve that passes through a series of given data points. Once you have this curve you can estimate some value of interest that you don't directly know.
So, why don't we want to do this when testing investment methods?
The answer is that, when testing, we have a number of data points (i.e. the share price of a stock at various time intervals) and we'd like to find a function that will maximize our returns (and minimize our risk) given these points.
We can then use this function to predict future returns. In AI 2.0, this concept is called parameter (i.e. Buy Resistance, Sell Resistance, etc.) optimization and is used to predict the highest future returns.
However if we optimize the parameters on a relatively small set of data points, the function we obtain is "fitted" to those specific points. So unless those data points occur again in the future (in the correct sequence), the function does not do a good job at predicting future returns.
As we expand the number of data points (e.g. using longer time periods, different time periods, etc.), our function becomes more robust.
This is why you should not use the AI 2.0 optimizer to optimize the parameters (i.e. create a Model) for, say, 1 year's worth of data and then use this Model for your 5 year investments. Rather you need to create a Model based on a number of time periods using different types of market conditions.
If your Model works well over all of these data points (i.e. prices), then you can be reasonably satisfied that your Model will do a good job in the future.