Using Market Breadth to Gauge Market Health (part 3)

Gratuitous cute-puppy photo. If you don't like puppies, you're a robot and I have charts and graphs below for you.
Gratuitous cute-puppy photo. If you don’t like puppies, you’re a robot and I have charts and graphs below for you.

If you’re just popping in during the middle of this series, I suggest that you go read the intro post first, so you know what the heck I’m talking about. I’ll wait here while you check it out:

Using Market Breadth to Gauge Market Health (part 1)

Let’s next take a look at a short-term breadth indicator that might be useful as a market-health indicator. Make a list of all the stocks that are up at least 4% on a particular day (I use the close of the current day vs close of the previous day), and all the ones that are down at least 4%. Then do the diffusion calculation:

diffusion = total_up4 / (total_up4 + total_down4) * 100

I multiply by 100 so that I can think in terms of percent.

Now we need a threshold. Let’s break out the historical constituents of the Russell 3000 index during 2010-2012 and optimize for a single in/out threshold. I start out using the same requirement for ten days of ‘signal’ as before. Enter the market when the last ten days have been above the threshold, and exit the market if the last ten days have been below the threshold. If the diffusion indicator is bouncing around above and below the threshold, then the status quo is maintained. This removes a lot of whipsawing and improves results (at least it did for the baseline moving-average test, so we keep it for consistency).

Except something weird is happening with this breadth indicator, which will become obvious in moment. Look at this optimization curve for different entrance/exit threshold values:

type 4daily 3D 2010-2012 single thWhat the porta-potty is going on there? It’s almost binary, with a very steep transition around the 50% mark. Hmm…let’s look at the number of trades. Ah hah! It’s either in the market all the time or none of the time. And the reason is simple: the “4% daily” breadth indicator bounces around from minimum to maximum very rapidly, even during the worst or best market conditions. So you rarely get 10 days of signal above or below the threshold. Here’s an example:

type 4daily example of 2008

Above you can see one of the most dire moments in recent market history, the end of 2008 and beginning of 2009. And yet look at that “4% daily” diffusion indicator…it’s merrily hopping up and down like it has no clue. There aren’t any moments where the indicator is below 50% ten days in a row.

What if we – just this once! – got rid of the 10 days of signal requirement before entering or exiting the market? I know, you’re scared to let go of the 10 day requirement, and I am too. But let’s just try it, shall we?

type 4daily 3D 2010-2012 single th flg=1Now we’re talkin’! There’s a nice plateau in the 50’s range, and I’m all about plateaux when it comes to optimization results. So I went with 55 as my entrance threshold.

type 4daily 3D 2010-2012 th1 55 flg=1As for a separate exit threshold, this curve is looking nice and plateau-y too, with a slight increase in performance at 45. So in at 55, out at 45 and on just the one signal. I’m envisioning lots of short term trades.

And I was right! 170 trades in a three year period (2010-2012), with a 53% win rate and an average trade length of 3.94 days. CAR/MDD is 0.64.

Our in-sample equity curve looks much more finely detailed compared to the other ones. That’s because of the high number of trades. We don’t stay out of the market for any length of time.

type 4daily 55,45 2010-2012 flg=1

2013-2015 had 147 trades, a 52% win rate, and an average trade length of 4.12 days. The indicator isn’t holding up very well in 2015 though. CAR/MDD for the three-year period is 0.52.type 4daily 55,45 2013-2015 flg=1

And the longer view, from 2000-2015. The crash of 2000 sucks less, but 2008 suffers greatly.

type 4daily 55,45 2010-2015 flg=1

Overall, not as good as either the Hi/Lo system in the past post, nor the benchmark moving-average system. Since it’s a short-term indicator, I shouldn’t be surprised. But it was worth a look.

Next post, we’ll look at using RSI as a breadth indicator.



One thought on “Using Market Breadth to Gauge Market Health (part 3)”

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.