I am about to embark on a new project that will set the course of my future stock portfolio development efforts. This effort is to create a brand new ranking system using all of the latest information and strategies I have collected over the last several months. I would like to invite readers to follow along so as to understand the thought/development process that has gone into this new project. While I will provide a detailed account of my activities, the actual (fundamental) stock factors will be left to the imagination (sorry - this is my livelihood).
There are (at least) two methods used to design a stock port/simulation. The first method depends on pre-existing ranking system(s). A stock simulation is designed and optimized using the ranking system, some buy/sell rules are put in place, and perhaps some sort of stop-loss and/or hedging. The developer may have a target stock universe in mind but in the end, the universe is customized to give the "best", or should I say the "most optimized" results. There are several iterative optimization steps that usually occur, including selection of the "best" ranking system, tweaking the ranking system for optimal backtest results, tweaking the buy/sell rules and re-visiting the custom universe, all in the name of designing the "best" or "most optimized" simulation. The universe is quite often customized by setting limits on Market Cap and other parameters. Thus whatever the initial target stock universe eventual gets adjusted until there is a happy compromise between stock universe, ranking system, and backtest performance.
The second method for designing a stock portfolio is to start with a set of criteria, then providing an optimal design to meet that criteria. The ranking system is the heart of the system and is designed from scratch to meet the desired specifications.
There may be some merits to the first design method, it is certainly faster, and the ranking system may be "proven" by other stock models in use. But there will always be some doubt in my mind as to whether the customized universe is a form of cherry picking, or data mining. It is not my place or intent to provide a determination of whether this method of development is satisfactory and I will leave it up to the reader to decide for him/her self. This series of posts will be about the design of a new ranking system from scratch to match the developers specifications and will cover the following topic outline:
- Specifying the target stock universe
- Stock factor discovery
- Test environment
- Discovery process
- Stock factor selection process
- Ranking system optimization
- Using the Portfolio123 RS optimizer
- Out of sample verification
- Stock port/simulation using the new ranking system*
* This last step is proof that the effort was worthwhile.
You can end up with the best looking Ranking System performance
chart but if you can't practically use it then it isn't much good.
This will be a very aggressive design for a dynamic ranking
system that is intended to adjust for interest rates. I don't know at
this point in time whether I will be successful or not. It
is a quest, not a "here's how I did it" exercise. The reader is
asked for understanding in this matter.