About

Who are you?

Let’s get this out the way first, I am not a finance professional, most of what I have learnt has been self-taught. I do have an academic background in economics, but that was a long-time ago, so you’re probably safest assuming I’m an idiot when it comes to markets and investing. I am not qualified to give financial advice and anything you read on this site is most definitely not financial advice.

I am a private investor and have been investing in the stock market for over 10 years. In that time I have had some success and my time-weighted average rate of return (TWR) is fairly respectable. I used to work as a self-employed consultant, helping big blue-chip companies deliver, mainly, large scale technology transformation programmes. Over the last couple of years however I’ve focused solely on; managing my own investments, developing a deeper knowledge of markets and investments and sharpening my technical skills to deliver something slightly more gratifying than a corporate PowerPoint deck or programme roadmap. Whether my investment activities can yield enough for me to live off them in the long-run remains to be seen. This journey I have been on may turn out to be an extended career break and in time I might find myself back in the corporate rat-race, nonetheless the journey has been enjoyable and it has satisfied a long held curiosity I’ve had for markets and investments.

Why did I create this site?

Over the last few years I have built many gigantic spreadsheets, created models for assessing investments and developed rough-and-ready investment processes to at least try and keep my investment processes somewhat systematic. While I’ve automated these processes as far as you can in Google Sheets, they’re still hacked together and I nearly always end up at a point where I’m spending more time crunching data than I do actually analysing and interpreting it. I’m hoping that I can start to refine some of these processes, fully automate them and put them on this site, not only to save myself time but also in case they’re of use to anyone else.

I’ve started with the simplest process I have; filtering company announcements and adding in additional data. As a (mostly) fundamental investor, company results and trading statements are probably my most important source of information. I have a spreadsheet which pulls in all the morning’s RNS announcements, filters them to only show results and updates, and then adds in additional information such as prices and market caps. I will then skim read through the results and conduct deeper analysis if a particular company’s results pique my interest. While this process works fine and it’s not particularly problematic or time consuming, it’s by far the simplest process I have so it seemed like a good place to start.

The ‘This Morning’s Company Announcements’ section of the ‘UK Morning Market Report’ is designed to replace this process. At 7:05am each morning the report will run and it will produce a list of company results and trading statements, along with the company logo, price history and market cap. I’ve built it so it can be easily customised to include any type of announcement in whatever grouping is required. At the moment it’s configured to only show company results and trading updates, but I may experiment with adding in more announcement types later down the line. It’s not perfect, sometimes it cannot find price data and it’s technically possible for it to connect the wrong data, although that hasn’t happened yet. I also had to build my own logo catalogue for the 2,000+ listed companies, so if there’s a new issue or a company’s logo changes, they may be missing or out-of-date.  

What tech does the site use?

The entire site was built from the ground up; the front end is a basic WordPress site on top of a MySQL database and an Nginx web server. The backend process was written in Python making heavy use of the Requests and Pandas libraries, and the data is stored in a SQLite database. The tables are created using the Datawrapper API, as I couldn’t get my own tables looking anywhere near as good. It sits on a single AWS EC2 instance running Ubuntu Server and Docker, and all the services can be spun up and down with a single Docker Compose script. 

This is likely overkill for what the site does now, but it means I can keep the costs of hosting the site to an absolute minimum and it gives me a huge degree of flexibility to develop the site further. It also allows me to develop my Python skills as there’s only so much you can do with a spreadsheet, especially as the datasets get large.