If you remember how I handled the market downturn and why I don't follow the 70:30 allocation, you know the reason behind it. I was just doing what my app was recommending me to do based on the market. For the past few months I have been rewriting the app and finally have parity with the old version. This is one more of those pet projects of mine that I always wanted to work on after retirement and now living the dream :)


Background

First some background regarding the app. I wrote a web app that gives me some indications of future prospects of market based on history and current market valuation. There is no special sauce, just some historical data and projections. The app helped me be greedy when others are fearful and fearful when others are greedy and hence have a different asset allocation than my recommendation.


I wrote the app way back in 2013 in Go language and Dart because I wanted to learn both those programming languages and what better way than by doing a project? The backend was in Go and launched as an App Engine app. After launching it, I never updated or changed the code, but it worked flawlessly. Eventually the technical debt caught up with me and I got an email from Google that I need to update the app with a newer version of Go.


Hello Google App Engine Customer,

On October 1, 2019, we discontinued support for Google App Engine Go versions 1.9 and earlier. Applications that were already deployed on these versions continued to run, but no new deployments were allowed. On May 31, 2020, applications still running on unsupported versions of Go will be shut down.


I had no choice but to either upgrade the app or shut it down. Unfortunately it has been such a long time since I have used Go and App Engine that I completely forgot a lot about it. Instead of coming up to speed, I decided to rewrite the app using Node.js and Firebase which are the new tools in my arsenal. Shutdown the old and started working on the rewrite. Won't bore you with the details but I finally finished rewriting the app.


How does it work?

First, here is the screenshot. Note that in the screenshot below and the rest of the charts are limited to show data up to September 2018 only so I can explain to you why I started selling between 2017 and 2018.

Investment recommendation app screenshot
Click to enlarge


The app basically shows you a bunch of graphs and gives a recommendation on some of the graphs. For example for Nifty 50 (which can be thought of as a proxy to large caps), the price to earnings chart is recommending a sell. So based on price to earnings of the past, the market in late 2017 seems overvalued and hence the recommendation. But if you look at the price to book value, then the chart is suggesting a hold.


Price to book value
Click to enlarge


Likewise, if you compare the market value to GDP then the chart is suggesting you to sell.


GDP vs index
Click to enlarge


Now it is up to you to use this data to decide on a good asset allocation. That is how I ended up with a debt heavy asset allocation during that time. If you are into momentum investing, I also have a chart that compares index against 180 day average. Although I don't use that chart I want to try my hand at momentum investing. Perhaps some day.


Index vs 180 day moving average
Click to enlarge


The recommendation in moving average chart is suggesting a buy because the index has crossed over the 180 day moving average and going up. You can do all these analysis on other indices too, like Nifty 500 (multi-cap), Nifty Midcap 150 and Nifty Smallcap 250. Remember that sometimes different market caps can be in over bought or over sold zone.


Conclusion

The web app is production ready and I wish I can let anyone use the app but I cannot because the data I use to make the graphs is free only for personal use and cannot be used for commercial purposes. Some people have been asking that I should disclose my portfolio and my asset allocation so they can follow the strategy. I don't suggest anyone to do it because each of your needs, risk profile and strategy is different. This blog is about DIY and not based on a template.


I had a lot of fun rewriting the app in a modern architecture in the last few months. This retirement thing is really working out well for me!