The DRY principle stands for “Do not repeat yourself”. This axiom is commonly referenced in the practice of software engineering. However, it applies equally well for traders and system developers.
A good trader will come up with many ideas for systems, ideas about ways of trading, and questions about market behavior. This creativity is important. However, it is not sufficient unless it is followed up. If the original insights are not explored then no additional insights will be gained. Running a single backtest to explore an idea is often insufficient to derive valuable specialized knowledge and generalized understanding.
In order to gain deeper insight requires a very focused, intense, deep, and systematic evaluation. Not all experience is equal. The problem for many traders is that even though they may have several years of experience they aren’t going deep enough and intensive enough to resolve their problems. The result is lack of development. In the example given it may require running multiple backtest, creating custom indicators, and looking at the data in a variety of ways and in different contexts. The goal of focused and deep dive is to come out with both specialized and generalized knowledge and/or a much greater insight into ones problems. For example, if want to know if the RSI works then we need to look at the returns for various RSI levels in different kinds of market contexts, in different markets, on different time frames, with various stops and targets applied, etc. Next, this knowledge must be captured or stored in a database for future reference.
Speaking of databases, I have tried various database solutions over the years for this purpose. And, unfortunately, I have not really kept to a single method. But, one possibility is to use a note taking program like Treepad, OneNote, or Evernote and combine that with a folder structure where the resources such as the source code, equity charts, and other files can be stored. Question, do you have a trade ideas database system that works exceptionally well? How do you do it? Please share in the comments.
These same principles of DRY and DEEP DIVE can be applied to the discretionary trader’s problems, as well. For example, a discretionary trader may have had some success with trading with a larger stop loss. However, they want to try to scale up their trading. The trader wants to know if they can trade successfully with a smaller stop loss. The only way to resolve this is to formulate a test where the trader trades in simulation over sufficient time while also works intensively on making any required changes to make it work. This not mean taking a few trades in the simulator successfully and determining it works. Even if it did work, it is likely that the first hint of adversity will cause the trader to lose confidence. The testing must be meaningful and sufficient to enable success. Finally, the results must be evaluated objectively. The problem is that many traders are looking for answers from discussion forums, books, magazines, or gurus. Those sources cannot provide you with the knowledge and experience that deep diving can provide.
In order to emphasize and recap the DRY and DEEP Dive principles:
- DRY Don’t Repeat Yourself. Record your best trading ideas in a database and then explore those ideas with the goal of seeking both specialized and generalized knowledge.
- Deep. If you’re a discretionary trader, you must switch focus from seeking answers from others and instead seek the answers from sim trading, live traders, backtesting, etc. For an exploration to be successful, it must be sufficiently “deep” to find the resolution. Inspiration can be found in many forms. As a system trader (and discretionary trader for that matter), one way of getting deeper knowledge is reverse engineering successful trading strategies such as computer generated strategies. It takes work but it is often possible to understand the general source of the edge in these strategies by reviewing the source code and the trades. The insights are often counter intuitive and surprising.
- Cyclical. The process is a cyclical process. Failure provides a new path to explore for success.