Check out the other articles in the series:
Any trading algorithm needs a starting point - goals and hypotheses to get there.
Retiring Early
FIRE - financial independence, retire early. I wish I had learned about the concepts earlier in my life. For those that are unfamiliar the idea is actually pretty simple - Based on average returns in the stock market, and through the power of compound interest, grow your investments to the point where average gains from investments can cover your expenses, even through bear markets. The basic thesis is that you can safely withdraw 4% of your investments, and this will allow you to weather the bear markets. This gives you financial independence, the freedom to retire early as your money makes money for you.
I'm late to the game, but I've been lucky enough to work in an industry that has provided me a better than average savings rate. I'm still a ways off from my target FIRE number, but hope to accelerate the timeline via this algorithmic trading. This is my driving objective, to have $1M in liquid assets generating 10% on an annual basis.
Long Term Investing
If you browse reddit's /r/financialindependence, the basic guidance and advice is to throw your money into a diverse investment instrument and forget about it. Keep adding money over time, and let the general returns from the market grow the nest egg.
This is the fundamental assumption for the algorithm - that the market over a long period of time will continue to increase in value. This is certainly true when looking at the last 100 years of the Dow Jones, and recent actions of the federal reserve. Given the compound annual growth rate of the stock market over the past 100 years is around 7-8%, we need to squeeze out a little bit more than the market.
This essentially means that we need to take on more risk, but not too much. The immediate solution is to introduce leverage. We could trade on margin at a 1.5x or 2x leverage, but the risk of a margin call is too great. At 2x, the latest bear market introduced via the pandemic would have wiped out my entire account.
Luckily, we've got another option - leveraged ETFs - SSO, UPRO, TQQQ, QLD. Most will advise against long term holding of these assets due to the notion of decay. This is demonstrated by a period like this where the SPY was basically flat over a period of 9 months, and yet UPRO was -8%. However, given the fundamental assumption given above, we should really be zooming out and look at performance of a prolonged bull market.
Take the same period above, and rewind the starting point 12 months. Now we start to see some expected outperformance. 25.6% vs SPY's 14.38%. Extend it through the pandemic and recovery and you've got some pretty impressive performance. UPRO 355% vs SSO 237% vs SPY 95%.
A nice side effect of these ETFs is that they will naturally rebalance, as underperforming companies will be removed from the index, replaced with high performing companies.
Keep in mind this is not without risk. You'll notice the max drawdown was approximately 80%! But if we really believe the market will eventually increase over time, then the end results will outweigh that drawdown risk.
Optimizing For Growth
Let's take a second to revisit the objective. $1M liquid assets producing 10% APY. In other words, $100k a year. $500k producing 20% or $2M producing 5%, it's the same outcome from a FIRE perspective.
If given the choice between optimizing an algorithm to produce 2x the returns vs just doubling the base starting value, there is an obvious path of least resistance.
So how can I optimize for growth of the base portfolio value? The first way is pretty obvious: buy more over time. By continuing to deposit into the trading account, it should help in reducing the overall volatility, and expanding on the base portfolio value.
Selling Insurance
The second way is much more interesting: selling call options. I can sell the right to buy the underlying asset at a specific price, charging premiums for that right. If the stock's price is below the strike at the agreed upon contract date, then I pocket the premium. In the case that the stock exceeds the price, I will sell it at the agreed upon strike price. Of course if the stock skyrockets, then the risk is that miss out on potential gains.
The basic idea would be that I could take those premiums and turn around to purchase more of the underlying stock. This would allow me to grow the portfolio and further compound any returns. Using a leveraged vehicle has the added benefit that the premiums should be higher given the increased volatility.
So that's basically the strategy. Simply put
Take on risk with a leveraged vehicle (without the margin call risk)
Optimize growing the portfolio by selling covered calls
Next up, I'll go into more detail into the algorithm. I'll also dive into my experience backtesting with the quantconnect platform, back test results, going live with interactive brokers and portfolio updates.