Spent the last several weeks improving the algorithm. I probably won't mention everything in one post nor in one night.
The first thing I did was conduct a study into trading GDX: at the open, intraday, and at closing only. I found that trading only the close to be 'better' than trading intraday or at both the close and open.
Once I concluded that, I switched focus to my TSP models since I would have to make an IFT before trading GDX at the close. That is why I didn't trade NUGT/DUST much during this time. And when I did, I mentioned that I was 'winging it.'
My algorithm will take any kind/number of inputs. If the input helps the predictions, it uses it, if not, it ignores it. More inputs will slow it down, however.
I sought a way to represent long term price history with as few indicators or inputs as possible. I concocted a set of four indicators that could represent price history. I coded in four to represent 26 days of history, four to represent 50 days of history, and four to represent 200 days of history. These were added to the original indicators/inputs (previous OHLCV change percentages going back several days, Daily Range, A/D, date, day, week, lunar, etc. etc.)
Once I then ran the algorithm, I noticed that it only chose to use one of the four new indicators I created. The same one from each of the 26, 50, and 200 day categories. It ignored all others! And, it performed better than ever!
To be continued.
(Notes to self: error/cost, best/day, zoom out, backtests, GDX vs COMPX, # of holdings vs randomness, one model)