Coding, Tech and Developers Blog
This post is the first in a series of articles about the side project I currently work on, hopefully...
As a software developer, chances are high you might want to have a side project, either at home or at work, depending on how flexible your current employment is. And even if not, that of course is totally fine as well.
Personally, I have been searching quite some time for an idea for a side project that I deemed worth my effort. If you happen to search for dev side projects on the internet, you will most certainly come across the usual ideas such as
While certainly these projects are fun and can each teach you a great deal about software engineering, I struggled to recognize the true value in these ideas. And by true value I mean value that I can actually feel, see, or, in my specific case, see on my monthly account’s turnover.
So, there we were, I needed a side project that could actually generate money over time which, in essence, left me with two options:
Since I already had a private portfolio that went…okay… I decided to go with option 2 and build something to advise me on when to buy or sell a specific item — a trading advisor. This way, I could easily get acquainted with things I haven’t implemented before and, if all went well, even generate a passive income at some time. Of course, I could do that without a piece of software telling me to do stuff, but, hey, aren’t we all lazy at heart?
(Spoiler: The advisor is at this time in its pre-alpha version, aquiring data and playing with a fictional amount of money.)
There are a few things that I could personally expect to work with during the journey of this project:
Below I have sketched a brief system overview for those who are interested.
The main idea was to have a number of lightweight scheduled tasks to perform different operations, such as retrieving values from the financial API, notifying about the current value, giving an advice on daily basis for a specific symbol.
Also, to have some kind of an E2E testing environment, the bot can actually trade using a fictional amount of money so that I can monitor the overall performance over longer interval.
And lastly, to keep me motivated, I wanted to see whether my trading strategy was worthwile ahead of time. Consequently, I needed functionality to be able to perform a simulation over historic data to estimate the perfomance of a certain trading strategy.
Simulation visualizaton for Airbus Group during 2020. The current value of the symbol is shown on the y axis. The two colored lines indicate different moving averages. Red and green dots mark sell and buy signals, respectively.
Above you can the result of one of the simulations for the Airbus Group for the past year (2020). Now, 2020 might have been a great year for any clever trader — or it didn’t. Using the simulation I could prove to myself that I could perform much better using my trading bot (which returned simulated earnings of 20%) than using buy-and-hold (which would have resulted in loss of about 30%).
So far, I have told you nothing about the exact strategy I have implemented, about any specific obstacles I have come across, or even the technologies that I used for any of my features, but I will.
I wrote this post sensing that there might other people like me that are struggling to find something useful as a side project, so let me summarize my main takeaways:
To me, the key point was to build something that might eventually generate passive income, but please feel free to define a different personal value for yourself.
For those of you interested in this specific side project, I will try to continue writing in detail about it here. I would also like to hear about your thoughts on this in the comments.
Be the first to know when a new post was released