Tuesday, March 16th, 2010

Fidelity Select Sector Rotation Strategy: Wrap Up

Wednesday, January 20, 2010 at 10:13 pm

38

This post serves primarily to serve as one link point for this series of posts, but I have included some additional testing results.

Part 1

Part 2

Part 3

Part 4

In Part 4, it was suggested in the comments section that it might be helpful to perform an analysis on the effect of start date on system performance. I agreed.

Although the data goes back to 1985, the volatility calculation needs 252 bars to make its calculation, so the first trade didn’t take place until 6/20/1986. I updated the fund data tonight, so the ending date is today.

The start date skips around a bit due to the 50 day moving average filter kicking in and keeping the system in cash for almost a month in July and early August.

fsf-effect-of-start-date

Changing the start date did not make much difference in the annualized return. I also kept an eye on max system drawdown, and it also varied little. Honestly, I expected more variation in both measures. I’m not sure exactly what to make of the lack of variation. I’m willing to entertain any ideas from the community in the comments section.

On to the next system!!!

Post to Twitter Post to Digg Post to Facebook

Comments

38 Responses to “Fidelity Select Sector Rotation Strategy: Wrap Up”
  1. bill says:

    Hi wood,

    could you please email me AFL code and the trades. Would like to study.

    thanks

    Bill

  2. eman says:

    I believe the similar CAGR’s with the different start dates are an outcome of the moving average filter. Once each backtest “run” hits a time period where the system is in cash for longer than 30 days, each run will re-enter the market at the same time and have the same trades going forward.

    Specifically, I think each run went to cash during the Sept.’86 crash, and all runs re-entered 10/29/86 (SP500 back above 50MA) after which time, each run probably had the same buy / cash signals. I quick spot check of the specific trades for each start time would let you know. Probably only the first one or two trades are different.

  3. Toptick says:

    Well, I sure didn’t mean to send you astray with my warning about start date. Eman points out that depending on how you treat the 50MA filter, you could be synching up no matter what the start date. My findings were based on a strict 30-day trading period, in cash or in funds.

    Another point: how many selects were active in 1986? Yahoo provides data for most of the selects only back to 1/1987 (FSUTX goes back to 6/1985, some others start after 87).

    In any case, there are many ways to look at this relative strength model, and all show large returns relative to the market, and the effect has persisted after it became well known.

    Great work. Thanks!

    • Woodshedder says:

      Astray? Nah, I do this for fun!
      Before I employed the MA filter, I noticed some variations based upon the start date. And furthermore, adding the 252 bar lookback alters the start date itself, which may be more of the reason that penalizing volatility helped with returns. What I mean is that it may be the 252 bar adjustment that made the difference, more than penalizing volatility. No doubt the equity curve was smoother due to the penalty, but without more testing, hard to say if it was the reason that CAGR increased.

      I have only FSUTX showing up in the backtesting in 1986 and FBIOX starting in 1987. It looks like that in 1988 many more funds became available.

      Oh, and to anyone else, it should be considered pure luck that a 50day MA filter mitigated the 1987 crash. We would not expect us to be so lucky next time.

  4. Wolfschanze says:

    Isen’t having such little variation in performance when changing a variable that should’nt change the underlying efficacy of the system actually prove its worth? It is always worrying when you have a system and you can dramatically change its performance by changing what should be unimportant components.

    e.g. if I have a system that trades in a mutliweek cycle and I alter that cycle to coincide with the cycle of the moon and peformance jumps 12% then, unless I can fully explain why this is the case, I have just cast doubt over my system since it apears to have a high chance of just being a bunch of variables that are optimized from backtesting but cannot provide even romotely accruate forecasts.

  5. t. says:

    Hi Wood,

    What were the results of running the test based on end of month seasonality, as Zack suggested? I was going to suggest a similar test idea.

    Thank you for an insightful and helpful blog -

    • Woodshedder says:

      t., thanks, glad you have enjoyed the blog.

      I think that it was Thomas that suggested that. Right now I do not have any plans to test it, mainly because I have projects coming out of my ears :) Just doing some triage in terms of time. Its a good idea though, and if I get around to it, I’ll post the results.

  6. JohnnyB says:

    Woodrow..Have you had a chance to email out the .afl file for this? Tell me to simmer down if I am being too impatient here.

  7. Gary says:

    Hi Wood,

    Nice work.

    Wonder if a fairly loose daily stop (perhaps ATR stop) would help drawdown without penalizing returns too much. Or whether picking the top 2 funds would help.

    Would you kindly email the rotation AFL code and transaction list?

    Thanks in advance,
    Gary

    • Woodshedder says:

      Gary, thanks.
      I have not tried a loose daily stop, as it would not be able to be used until after the 30 day min hold time has been met. I would rather leave $$ in the fund and use the MA filter or the normal rotation action to switch up.

      Wood

  8. Jeff says:

    Although I didn’t disclose my specific algorithm for a variety of reasons, I’ll happily submit (again) that weighting multiple time frames and smoothing the subsequent result does wonders to such methodologies. Furthermore, I suggest forcing some level of diversification along the sector, style and country spectrums, and that “sliding right” into new signals may also help (surfers will understand). Excellent series. All the best, Jeff P a.k.a Mrkt_Rwnd

    • Woodshedder says:

      Thanks for the ideas Jeff! Glad you enjoyed the series. Of course you know that your series on rotational systems is what prompted me…

      By the way, I grew up surfing, but can’t figure out what you mean about sliding right into new signals.

  9. Jim says:

    Wood, Could you add me to the list for the AFL code on this idea.
    Thanks, Jim

  10. JohnnyB says:

    Am I on the right track here…I am new to AB and for sure not a programmer (So jealous of you that are). Anyway, is this how I run this puppy?

    Wait for SPX to cross above 50 DMA…the load .afl code into AB. Run Exploration against the Fido Select List. Choose highest ROC Fido fund on that day. Wait 30 days repeat (as long as SPX is above 50 DMA).

    Sound Correct?

  11. Woodshedder says:

    The simplest, quickest answer is that you are using the “explore” function in a way that it is not really designed to be used. Read the AmiB literature on what an exploration does.
    Start with N=1 and see if that doesn’t make sense. Then sort the column by clicking on “score.”

  12. JohnnyB says:

    Thanks for taking the time. I know it’s not easy replying to really remedial questions but I sure do appreciate it.

  13. Howard Bandy says:

    Greetings –

    You have a very nice site, with good information.

    When you have a chance, please send me a copy of the afl for your rotational system.

    Thanks,
    Howard

    • Woodshedder says:

      Howard, thanks for stopping by and thanks for the compliments. They mean a lot coming from you.

      How coincidental that you stopped by here today. I was outside today cleaning out my car, and under the front seat I found your business card which you had included in the last book I ordered from you. I almost threw it away with the rest of the junk under the seat, but kept it as a reminder to see how your newest book is progressing.

      Serendipity, maybe?

      I’ll send you the AFL today.

Trackbacks

Check out what others are saying about this post...
  1. [...] factor is often a measure of strength or weakness, perhaps Rate-of-Change, as we explored in the Fidelity Select system. The factor could be a moving average, or combination of moving averages, or the slope of a linear [...]



Speak Your Mind

Tell us what you're thinking...
and oh, if you want a pic to show with your comment, go get a gravatar!