Seeking Alpha

Marc Cohn's  Instablog

Marc Cohn
Send Message
I am a patent litigator with a background in physics and electronics. I enjoy studying quantitative, rules-based investment methods through rigorous backtesting and numerical analysis. I believe that patterns exist in the market that benefit trading -- the challenge is finding them!
  • Update On Modified GMR: A Robust Trading System Over A Wide Range Of Parameters 17 comments
    Feb 10, 2014 9:34 PM | about stocks: SSO, MDY, SPY, TLT, EDV, SHY, EEM, EPP, ILF, FEZ

    I have finally resolved my modified version of Grossman's GMR trading system. The results are improved and appear quite robust under various input conditions.

    By way of recap, the system trades 6 ETFs: SSO, FEZ, EEM, ILF, EPP and EDV. It goes to SHY when the stop condition is satisfied. It is backtested to 12/31/2003. (Prior to EDV's inception in 2008, I used TLT data. Prior to SSO's inception in 2006, I used MDY data.)

    The system relies only on monthly data and can be implemented simply in an Excel spreadsheet. This makes it a very practical system for ordinary people with limited time to update stock data and without costly trading software.

    The system relies on two parameters -- performance and volatility. Performance is the logarithm of monthly performance over 3 months. Volatility is the standard deviation of 6 months of monthly performance.

    The performance of the 6 ETFs is then standardized according to their mean and standard deviation. The same is done for the volatilities.

    These standardized values are added together using weights of 0.75 for performance and 0.25 for volatility. These weights gave the best overall returns, but the total returns are not terribly dependent on these weighs. Returns are still quite with weights from 0.6/0.4 to 0.9/0.1.

    The ETF with the highest final rank is purchased and held for one month. The cycle repeats month to month.

    Here are the results of the system as a function of the weighing factors (with the optimal cash stop in place):

    0 (performance) / 1 (volatility)

    Total

    3.64

    CAGR

    13.79%

    Stdev

    27.51%

    Drawdown

    67.02%

    Sharpe v SPY

    0.23

    Sharpe v SHY

    0.42

    0.1/0.9

    Total

    3.54

    CAGR

    13.47%

    Stdev

    27.53%

    Drawdown

    67.57%

    Sharpe v SPY

    0.22

    Sharpe v SHY

    0.41

    0.2/0.8

    Total

    4.94

    CAGR

    17.32%

    Stdev

    28.39%

    Drawdown

    70.87%

    Sharpe v SPY

    0.35

    Sharpe v SHY

    0.53

    0.3/0.7

    Total

    4.69

    CAGR

    16.71%

    Stdev

    28.55%

    Drawdown

    68.01%

    Sharpe v SPY

    0.33

    Sharpe v SHY

    0.51

    0.4/0.6

    Total

    8.26

    CAGR

    23.51%

    Stdev

    29.07%

    Drawdown

    69.86%

    Sharpe v SPY

    0.56

    Sharpe v SHY

    0.73

    0.5/0.5

    Total

    9.59

    CAGR

    25.36%

    Stdev

    28.82%

    Drawdown

    69.00%

    Sharpe v SPY

    0.63

    Sharpe v SHY

    0.80

    0.6/0.4:

    Total

    39.40

    CAGR

    44.39%

    Stdev

    24.54%

    Drawdown

    26.94%

    Sharpe v SPY

    1.51

    Sharpe v SHY

    1.72

    0.7/0.3

    Total

    40.22

    CAGR

    44.69%

    Stdev

    23.94%

    Drawdown

    16.11%

    Sharpe v SPY

    1.56

    Sharpe v SHY

    1.77

    0.8/0.2

    Total

    40.16

    CAGR

    44.67%

    Stdev

    23.57%

    Drawdown

    22.28%

    Sharpe v SPY

    1.58

    Sharpe v SHY

    1.80

    0.9/0.1

    Total

    36.68

    CAGR

    43.37%

    Stdev

    23.74%

    Drawdown

    19.72%

    Sharpe v SPY

    1.52

    Sharpe v SHY

    1.73

    1.0/0.0

    Total

    34.03

    CAGR

    42.30%

    Stdev

    23.56%

    Drawdown

    19.72%

    Sharpe v SPY

    1.48

    Sharpe v SHY

    1.70

    I prefer 0.75/0.25 because it was in the middle of the peak values shown above:

    0.75/0.25

    Total

    43.16

    CAGR

    45.72%

    Stdev

    23.89%

    Drawdown

    16.11%

    Sharpe v SPY

    1.61

    Sharpe v SHY

    1.82

    With these values and the cash-stop, returns year-over-year were:

    Last day of…

    SYSTEM

    SPY

       

    Dec-04

    35.89%

    10.70%

    Dec-05

    50.61%

    4.83%

    Dec-06

    18.88%

    15.84%

    Dec-07

    29.22%

    5.15%

    Dec-08

    51.49%

    -36.80%

    Dec-09

    100.21%

    26.35%

    Dec-10

    32.69%

    15.06%

    Dec-11

    74.43%

    1.90%

    Dec-12

    28.93%

    15.99%

    Dec-13

    48.95%

    32.31%

    This is without commissions and slippage. If you add in 0.25% commissions and slippage, which is terrible, you still get fine results:

    Total

    38.60

    CAGR

    44.10%

    Stdev

    23.89%

    Drawdown

    16.11%

    Sharpe v SPY

    1.54

    Sharpe v SHY

    1.75

    With commissions and slippage of 1% (!!), it's still acceptable:

    Total

    27.57

    CAGR

    39.33%

    Stdev

    23.93%

    Drawdown

    16.11%

    Sharpe v SPY

    1.34

    Sharpe v SHY

    1.55

    The system does not rotate into cash. Instead, there is a cash stop when the correlation between SSO and EDV is above a threshold. The system will go to cash regardless of which of the 6 ETFs is being signaled. This only happens at the month's end, so we do need to stomach some inter-month changes.

    Here are the scenarios with the weights at 0.75/0.25 and various cash-stop thresholds (with commissions and slippage = 0):

    Threshold = 0 (months stopped = 33):

    Total

    11.32

    CAGR

    27.46%

    Stdev

    19.77%

    Drawdown

    18.94%

    Sharpe v SPY

    1.02

    Sharpe v SHY

    1.27

    Threshold = 0.25 (months stopped = 24)

    Total

    16.91

    CAGR

    32.68%

    Stdev

    20.67%

    Drawdown

    16.11%

    Sharpe v SPY

    1.23

    Sharpe v SHY

    1.47

    Threshold = 0.5 (months stopped = 13)

    Total

    37.55

    CAGR

    43.70%

    Stdev

    23.12%

    Drawdown

    16.11%

    Sharpe v SPY

    1.57

    Sharpe v SHY

    1.79

    Threshold = 0.75 (months stopped = 8)

    Total

    43.16

    CAGR

    45.72%

    Stdev

    23.89%

    Drawdown

    16.11%

    Sharpe v SPY

    1.61

    Sharpe v SHY

    1.82

    Threshold = 1 (months stopped = 0)

    Total

    28.89

    CAGR

    39.98%

    Stdev

    25.66%

    Drawdown

    22.56%

    Sharpe v SPY

    1.27

    Sharpe v SHY

    1.47

    I am using 0.75 as the stop threshold.

    I want to reiterate the importance of using monthly data. Every time I have tried to implement this system using some version of daily data (e.g. a 70-day performance lookback, etc.) the results are not as good. Also, the monthly data makes things really easy to do and ignoring everything during the month can take some anxiety out of the trading process.

    ** If you've read this far you'll be delighted to know I plan to post updates and signals here as the months stroll by because (i) it's fun to discuss these things (ii) we can all play along and (iii) it is proof (or disproof) of the system in real time. In light of last week's good performance for equities, the system says to stay in SSO if things stay flat from here to month's end. In the middle of last week, the signal would have been to EDV. It is interesting to see how the signals evolve over the month as conditions change.

    As for the 3-day swing trading system, I attempted to mingle this with the rotation strategy to no avail. The idea was to trade between the signaled ETF and SHY according to the 3-day system. The results were terrible and I do not expect to write more on the matter.

    Disclosure: I am long SSO.

    Themes: sector, ETF, rotation, Grossman, trading Stocks: SSO, MDY, SPY, TLT, EDV, SHY, EEM, EPP, ILF, FEZ
Back To Marc Cohn's Instablog HomePage »

Instablogs are blogs which are instantly set up and networked within the Seeking Alpha community. Instablog posts are not selected, edited or screened by Seeking Alpha editors, in contrast to contributors' articles.

Comments (17)
Track new comments
  • Aurelia0001
    , contributor
    Comments (13) | Send Message
     
    Thanks MCohn, great analysis and findings!
    11 Feb 2014, 03:46 AM Reply Like
  • Marc Cohn
    , contributor
    Comments (87) | Send Message
     
    Author’s reply » One thing I have found confusing is Grossman's advice to use volatility as a negative factor in his rankings, i.e., lower is better. I have tried this using various methods with no success.

     

    I have also failed to replicate his results using 20-day volatility in any manner. I have tried the plain 20-day volatility and also the 3-month median of 20-day volatility, which he suggesting in one of his comments. I could not get his results with those figures.

     

    Instead, I found the six month volatility was the best when used as a positive factor in the system. I have tried other x-day lookbacks and even though the ~120 day lookback gave decent results, they were not as good as the 6-month data.

     

    There is something improved about trading only the monthly data versus the daily. I can't explain why.

     

    MC
    11 Feb 2014, 08:48 AM Reply Like
  • IndyDoc1
    , contributor
    Comments (182) | Send Message
     
    do you mean 120 days as in calender days (i.e 4 months) or 120 trading days(which is roughly 6 months).
    18 Feb 2014, 08:19 PM Reply Like
  • EdwardjK
    , contributor
    Comments (136) | Send Message
     
    MCohn,

     

    I find it interesting that your analysis yields better results with monthly data rather than daily, as Grossmann is doing.

     

    I tend to agree with Grossmann that volatility should be considered a negative. Intuitively, increasing volatility is a sign of a change. If a signal to change an investment is given, I'd rather use current daily data rather than monthly data.

     

    Not arguing with what your model says. Just commenting on a preference for current data when making investment decisions.
    12 Feb 2014, 04:41 PM Reply Like
  • Marc Cohn
    , contributor
    Comments (87) | Send Message
     
    Author’s reply » I agree with you in principle, but I have not been able to replicate Grossman's results using the daily data (20-day volatility). Factoring in volatility impairs the performance of the system in my spreadsheets.
    12 Feb 2014, 09:10 PM Reply Like
  • EdwardjK
    , contributor
    Comments (136) | Send Message
     
    Can you please explain what you mean by "The performance of the 6 ETFs is then standardized according to their mean and standard deviation. The same is done for the volatilities." ?
    16 Feb 2014, 05:15 PM Reply Like
  • Marc Cohn
    , contributor
    Comments (87) | Send Message
     
    Author’s reply » I wish to correct a statement made in the article above. I said "One of the commenters on Grossman's original GMR article had professed to backtesting the system using similar Vanguard mutual funds..."

     

    Apparently, the word "professed" suggests that the person was not being truthful, but I did not mean that all all. I simply meant that the commenter stated that he run the backtest. I meant no ill will or anything at all other than to identify that commentor's very good idea.
    17 Feb 2014, 05:17 PM Reply Like
  • IndyDoc1
    , contributor
    Comments (182) | Send Message
     
    have you tried using 2x leveraged position of the winner ETF if it such a fund exists?. For example, using EET which is ultra MSCI emerging market, if the winner is VWO, or UPV if fez is the winner
    18 Feb 2014, 08:27 PM Reply Like
  • Max1985
    , contributor
    Comments (11) | Send Message
     
    I've been running a similar strategy for the past 2 yrs using 3x leverage ETFs. You do need data with shorter time period. (i.e. weekly data). Returns are good but volatility is very high. With stdev north of 30%, behavioral biases will creep in and prevent you from making disciplined and rational adjustments.
    20 Feb 2014, 10:46 AM Reply Like
  • Marc Cohn
    , contributor
    Comments (87) | Send Message
     
    Author’s reply » I use the 2x leveraged SSO only because the stdev matches up with the other non-leveraged funds (all between about 20 and 30%). Using any of the other funds leveraged 2x would then set the stdev's out of whack again. As Grossman says, you want the stdevs to be in line.
    20 Feb 2014, 11:22 AM Reply Like
  • roymottram
    , contributor
    Comment (1) | Send Message
     
    fantastic article and analysis, including the comment on using leveraged ETFs which can throw the system out of whack.
    23 Feb 2014, 12:57 PM Reply Like
  • Tiziano C.
    , contributor
    Comments (8) | Send Message
     
    Well done, your system this year picked the right ETFs: cash for January and SSO for February. And it wasn't easy at all. Whereas Grossman's strategy unfortunately picked the "wrong" ones: FEZ for January (-4.3%) and EDV(-2.1%) for February.
    24 Feb 2014, 04:34 AM Reply Like
  • chaovakorn
    , contributor
    Comment (1) | Send Message
     
    Thank you so much on your analysis.It's so amazing. I have a question. I don't understand how to standardize performance and volatility. If I have monthly returns for the last 3 months, Am I right to say that I will calculate mean of monthly return for the last 3 months and standardize it by using last month return minus mean and divide by standard deviation of last 3 monthly returns, and the same method apply to monthly volatility but now we use 6 month monthly returns to calculate volatiliy first and then standardize it.
    Thank you so much in advance for your kind explanation.
    21 Mar 2014, 12:45 AM Reply Like
  • Marc Cohn
    , contributor
    Comments (87) | Send Message
     
    Author’s reply » I just use the Excel STANDARDIZE function.
    21 Mar 2014, 08:29 AM Reply Like
  • bennfine
    , contributor
    Comments (8) | Send Message
     
    Nice article.

     

    But like a commentator above, I am missing something in the details (any chance you could post a google doc with your calculations??)

     

    How many months of data do you use when you standardize the performance and volatility numbers?

     

    That is, I have monthly performance measures, which are the log of 3 month returns. How many of these log of 3 month return values do I use to standardize it?

     

    Thanks!!

     

    Thanks!
    17 Apr 2014, 08:46 PM Reply Like
  • berry
    , contributor
    Comments (168) | Send Message
     
    Hi Marc,
    I've been an interested follower of both you and Frank since the publication of his GMR article and your subsequent follow-up work. It's an intriguing subject.
    I've seen mention of your "cash stop" and am very interested in how the ratio is determined. Is it a point-in-time calculation, or is it the result of some number-of-days? For example you mention that it only occurs at month end. Is it calculated based on month end values or calculated at month end from some average or accrued values?

     

    Thanks for all of your fine contributions to the momentum body of knowledge.

     

    cheers
    18 Apr 2014, 05:46 AM Reply Like
  • thb007
    , contributor
    Comments (6) | Send Message
     
    Yes, Mr. Cohen, I don't understand the Performance/Volatility in the spreadsheet? I use GoogleDocs spreadsheet, because I can access anywhere on the web, anyplace. Can you post a visual of the spreadsheet?
    14 May 2014, 12:14 PM Reply Like
Full index of posts »
Latest Followers

StockTalks

More »

Latest Comments


Posts by Themes
Instablogs are Seeking Alpha's free blogging platform customized for finance, with instant set up and exposure to millions of readers interested in the financial markets. Publish your own instablog in minutes.