Ranking Sectors by Performance

Hi
I am trying to create a sector rotation strategy which finds the top 3 sectors based on performance over x period of time. (To be included in the top 3 the sector has to have outperformed the benchmark) From there the strategy takes the top 3 performing stocks from each sector and invests.

I am struggling to figure out how to find the top 3 performing sectors. I tried to create a custom list of sector name, but the custom list creator didn’t like the sector names.

I would appreciate any insight from any of you talented investors.

Thanks

This screen will give you the nine stocks you’re looking for. Change 120 to the number of days you want to look back.

https://www.portfolio123.com/app/screen/summary/270118?mt=1

What is the optimal way to integrate a ranker into this sort? I can think of this, for instance:

Forder (“(Rank)^0.5 * (Close (0) / Close (120))”, #sector, #desc) <= 3

Using “P123 Multi-market Rank” ranker improves results (with a 4 wk rebalance).

(With SP500 Universe)

Thanks for your help Yuval. The Annual return looks promising, but that drawdown is sketchy. :slight_smile: I attached a screen shot of the backtest. (38 billion % return with a 99% drawdown on a 20 year backtest.)

Steve


Hi Steve,

also do a search on sector rotation in the forum. There are some good discussions and strategies available.

There’s probably some sort of one-time data error caused by a stock listed at $0.01 on no volume. Never run a backtest on the United States (incl. ADRs & dual listed) universe or the United States (all listed stocks) without adding some sort of price and liquidity filters. Best to use the No OTC Exchange or the Prussell 3000, or add a few minimum liquidity rules.

Yuval, this screen does not address the requirement that the top 3 sectors also have to have outperformed the benchmark. I can’t figure out a rule for this.

I added the following rule, as the third rule:

Close (0, #Sector) / Close (120, #Sector) > Close (0, #Bench) / Close (120, #Bench)

I then ran it with SH as the benchmark. Only one sector (Energy) passed.

Yuval, thank you.
Interesting choice of benchmark. It shows you how poor the current situation is for stocks that only the sector ENERGY does better than SH.

Using the R3000 as universe and SH as benchmark with
rule: Close(0,#Sector)/Close(100,#Sector)>1.02*Close(0,#bench)/Close(100,#bench)
then 105 stocks pass, all from the energy sector.

Using SPY as benchmark (with same rule) then 366 stocks from the R3000 pass, in 4 sectors only, ENERGY, MATERIALS, TELECOM, and UTIL. So these 4 sectors should do reasonably well when inflation expectation is high, like now.