Weekly Algorithm Review: 09/09/2023 to 09/15/2023

Performance Rankings

  1. Long Term Portfolio: +0.61%

  2. Variable Sector Neutral: -0.23%

  3. Market Neutral: -0.26%

  4. Base Algorithm: -0.29%

  5. Variable Market Neutral: -0.32%

  6. Sector Neutral: -0.41%

  7. Overall Market: -0.66%

This was a very poor week for the algorithm. It under-performed the portfolio by 90 bps. It still beat the market, but that was solely off the strength of our portfolio. I’m going to say that the hold is not going to be solved by waiting; I will be returning to spending the bulk of my time on the daily algorithm. The issue of selection bias has, in recent times, prevented significant research on this algorithm. We created our current long term portfolio in the beginning of July. This means that, to keep training data bias-free, we are restricted to trading days since the beginning of July when testing updates for the algorithm. This puts us between a rock and a hard place. Either we test updates on our actual portfolio with a small amount of data, test on our actual portfolio on biased data, or we test on some other portfolio.

At this point, I’m making the decision to test these updates on the S&P 500. This will enable us to use a much larger, unbiased data set, and to see how our algorithm performs on a wide range of stocks.

I’m fairly happy with our portfolio, but one of its weaknesses, in regards to being traded via an algorithm, is that in order to match our macro strategy, it has to focus in on a few sectors. If we compare its current allocations to those of the S&P 500, we can see what I mean.

We can see that the majority of our portfolio consists of 3 sectors, whereas the S&P is much more diverse. I want to clarify - this is strategic. It’s a feature, not a bug. Our market outlook is bearish, which requires us to focus on a few highly defensive sectors. At the same, this means that if we backtest an algorithm on this portfolio, we get a somewhat limited picture of its performance. We mainly learn whether it’s good at trading Healthcare, Utilities, and Consumer Defensive stocks - rather than if it’s effective at trading the market as a whole.

To determine what to prioritize first in this round of development, let’s look at our biggest losers of the week.

We continued a trend started last week - the algorithm has finally identified some standout tickers to receive heavy investment. MPC, UNH, ERIE, and DG among others all saw large allocations this week. The reason for this is also something we saw last week: trend chasing.

If we look at the correlation between the total amount we allocated to each stock, and how that stock did in the month preceding this week, we get a correlation of roughly 0.3 - not huge, but fairly significant.

Now let’s look at the return we made this week from a given stock, compared to its return over the preceding month. This correlation isn’t as strong, it’s -0.16, but it’s also non-trivial. The message is clear: this week, the algorithm did significant trend-chasing, and this worked against us.

I would like to find a way to reduce the algorithm’s trend-chasing tendencies, without negatively impacting its profitability. This is one of the changes made in the experimental algorithm, and as we all remember, it didn’t go well. That doesn’t, however, mean we can never achieve it. It means that we’ll have to find smarter ways to go about it.

Unfortunately, all of this means that the hold will remain in place. We will continue publishing the algorithm’s recommendations, but I would take them with a bigger grain of salt than usual. I can’t say with the level of certainty I’d like to have that the algorithm will outperform the long term portfolio in the coming weeks. We will continue relaying our sentiments, and I will publish updates on all experimental versions of the algorithm. If we consider releasing any, we will likely paper trade them for several weeks first.

What’s In The Pipeline

Now for some good news. The new intraday algorithm has had its second strong week for performance. We will be releasing it this week. This algorithm chooses its own tickers to trade, rather than taking in a portfolio. Normally, we’d have it choose new tickers every month, but we’re going to have it choose a fresh batch right before release, so it launches with the most up to date strategy it can. This will likely take a day or two, and we’ll want to run it on our test server with this fresh batch to make sure it’s still working correctly. Tentatively, I would expect to see this in the chat on Wednesday.

We expect that, relative to our current intraday bot, this model will turn a profit much more consistently. Additionally, it offers a couple of features that have been requested: short positions, expected hold time, and positions that can be held through multiple days. If you’re bearish on the market, or subject to PDT rules, this might help you find trades better suited to your strategy. A few sample messages are below.

Some updates are also being worked on for TradeBot. Expect some more screener capabilities. Instead of just “What stock should I buy”, you’ll soon be able to ask “What high-beta real estate stock should I buy? No dividends, small market cap, and high volume would be great”.

These aside, development will be primarily focused on the daily algorithm for the foreseeable future. I’ll give periodic updates on development and whether we decide to lift the hold independent of it.

Misc. Data For The Week

Previous
Previous

HaiKhuu Daily Report 9/18/2023

Next
Next

HaiKhuu Weekly Preview September 18 - 22th, 2023