December 9, 2021•1,001 words
After having watched a really great video of Algovibes, I gained a sudden motivation to quality review my code updated per November 1, 2021. With new infrastructural equipment, I would have the chance to deploy my code on a NAS server to run it 24/7. What I could improve throughout the last two days and what I struggled with, I would like to share with you in this blog entry.
On November 1, I had the impression that check.markets v3 could be one of the highest level improvements that I could implement throughout the whole project. With such a great simplification and optimization of code structures, I could reach a script processing time lower than 1/10 of the previous version. This was insane for me as my amateur status usually causes very, very complex thought structure for code that could be implemented so much easier. But due to my lack of experience, I sometimes have to solve issues the "hard" way. Other things that were introduced or improved are as follows:
- The stock selection universe was increased from 60 to 1395 stocks. With this increase, now every stock of the following indices is covered by the check.markets code:
- DAX 40 (Germany)
- MDAX 50 (Germany)
- SDAX 60 (Germany)
- CAC 40 (France)
- IBEX 35 (Spain)
- FTSE MIB 40 (Italy)
- SMI 20 (Switzerland)
- AEX 25 (Netherlands)
- OMX Helsinki 25 (Finland)
- OBX 25 (Norway)
- OMX Copenhagen 25 (Denmark)
- Russell 1000 (USA)
- Daily Schedule at 10 pm: Thanks to special support of my colleague and mentor David Lemke, the code is now started daily at 10 pm on-premises.
- Scheduled purchase and selling recommendation via mail and text message: Following that incredible move forward, the results of the daily recommendation system are now sent via e-mail and text message to people subscribed to my trading strategy. Why I chose 10 pm? Well, at this point of time, the American and European markets are closed so that the closing data can be reliably retrieved from my API.
- ATH is the new prime stock selection basis: check.enterprises has now fundamentally changed its strategy for stock selection. The reason being is that the former stock selection strategy had big potential to cause losses in direction-less market phases. Our research has shown proof to the theory that there is no stronger purchase signal than the all-time high of a stock as there are no further resistance lines hindering the stocks' way up to the moon. The stock purchase criteria would be further extended with v4.
After publishing this article about v3 on check.markets, I could hardly imagine that there were any major improvements that I could work on soon. I was wrong about that. There is a lot to do. A lot to improve. And this is the good thing about coding: the more you get into it, the bigger your horizon becomes, the more you get to know and the more you develop yourself.
So, after having watched Algovibe's video, two sudden fields of improvement jumped into my head:
- 24/7 availability by deployment of the check.markets code on a suitable cloud, NAS or web server
- The code for the check.enterprises stock analysis is not stable and efficient enough; on many days, I have to correct it manually so that it delivers correct results.
- After changing the stock selection basis to ATH, the check.industries subproject was devalued immensly. So, there has to be a new way to embed this analysis to increase the probability of successful trades.
- The stock selection has to be enriched by a volume screener and the Minervini template that heavily lays its foundation on one of the greatest traders of all time and my personal idol - Jesse Livermore.
So, after the last two days of further code improvement, how can I conclude the improvements?
With the help of the mergers of the Volume screener, the ATH screener and the Minervini template, the number of stocks that are analyzed with the check.enterprises algorithm has decreased in quantity, but immensly increased in quality. With the volume screener, I want to make sure that there is high purchase and upward pressure in the stocks analyzed. Moreover, I want to let my analysis focus only on stocks that are not part of the selection basis due to one-off effects that will quickly be sold off the following days. Analyzing the stocks recommended yesterday, I have to say that the stock selection criteria did its job perfectly. That's why I today bought the stocks of
- Hornbach Holding
- The Hershey Company and
- Toll Brothers (what an incredible stock!!!)
Additionally, I could improve the text and style of the mails that are sent to the followers, including me. Now, the mail looks very professional, although there is still one major issue to be solved.
What's more is that the number of RSL combinations has been drastically reduced as there are only a few combinations among which the algorithm jumps from one to the other. I introduced 19 new combinations which is the division of the current closing price by the EMA(5), EMA(10 and so on.
The check.industries screener now analyzes every stock that manages to meet the Minervini criteria. This helps to make the sector and industry selection much stronger and reliable. To give you an example: Today, the check.industries screener had more than 400 stocks (so about 1/3 of the total stocks in our selection) on its watchlist. So whatever the result of the screening is, it can be estimated to be reliable (to be right) and probable.
After having analyzed the code on and on again, I feel very confident that the progress to check.markets v4 has brought necessarily and essentially improved the stock selection. The list of stocks, sectors and industries that are now recommended seems to be much more reliable than in v3. So, now we can be very confident about good trading results throughout the next months.