The run mentioned starting last post finished up Thursday or the week before last and yielded results that looked quite promising, so after I got back from an overnight out of town trip, I dug deeply into the results and the code to find whatever bugs that would be there to deflate my excitement. Sure enough there were a couple and fixing them about doubled the runtime.
The follow-up run just finished up today. After using my summarizer app to the unfiltered summary of the results I modified the app so it could filter on a set of metrics rather then a range. This allowed me to more quickly dig into the results in search of the best area in the parameter space.
The results weren’t quite as good as the previous run, but they were pretty close both in average CAGR and in the location of the best area of the parameter space. Next I’m going to delve more even more deeply to the results to see how consistent the best area of the parameter space is for a given stock and given period of time. If it’s very consistent then it would not appear to me that much curve fitting is occuring and thus I may have a general solution. It’s it’s fairly inconsistent then its back to the second layer of metrics to see I can find a consistency there. If not then it’ll probably be time to distribute the analyzer app and have it do stock picking as well at trade timing.
Found two more bugs, so starting the same run over again. I keep enhancing the summarizer app after each invalid run of the analyzer app, so at least when I get a run where I don’t find anymore bugs while examining the results, I’ll at least be able to get through the exam fairly quickly now.
It looks like its going to take about 5 days to process a single stock with the updated code now (double the last run, quadruple the run before that), it will take nearly two weeks to get through all 12 stocks (4 are processed in parallel). When the first set of four finish I take a deep look at those preliminary results to see if any more bugs shake out, so the run can be restarted part way through if additional fixes are needed.