Ten years ago, Warren Buffet successfully bet that a low-cost Vanguard S&P 500 index fund would beat any managed fund portfolio picked by Protégé Partners. Gary Antonacci's “Dual Momentum Investing: An Innovative Strategy for Higher Returns with Lower Risk” can be used to “tweak” Buffett’s simple money management approach by moving into cash when the S&P starts trending down, then moving back to the S&P fund when it trends up. The trick, of course, is coming up with a proper trend function. Jumping in and out of the market too frequently, even in ETFs, erodes returns, especially (apparently) if you are a guy.

In addition to my prior post, you can get more detail about Dual Momentum from Quantcon 2016's video and blog post featuring the above mentioned Gary Antonacci. See also gosmej1977.blogspot.com and portfolio visualizer.

This post reports my observations after looking a little deeper into Dual Momentum’s “lookback” interval.

The version of the Dual Momentum algorithm used here is parameterized by:

- Portfolio: Two portfolios Al Zmyslowski’s VFINX_NAESX_FGOVX and James Lingane’s VFINX_HAINX_VBMFX portfolio
- TBillRate: Four different TBill measures (1moTBill, 3moTBill, FarmaFrench and shiftedFarmaFrench)
- Lags: Portfoliovisualizer.com’s 20 lags of 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 15, 18, 21, 24, 27, 30, 33, 36 months.
- TimeFrame: Initially January 1985 to December 2016 (32 years * 12 = 384 months). Note: The first 36 months of all runs are "nulled" out." This "lines up" all runs, from those starting with a 1 month lag to those starting with a 36 month lag.

The search algorithm passes the DM algorithm a "lag structure" that starts and ends with any of Portfoliovisualizer.com’s 20 lags and switches once during the 384 month period. Below is a list of the top 20 best returns sorted by return for these 1,228,800 combinations (20 lags x 20 lags x 384 months x 2 portfolios x 4 TBill Rates).

- Portfolio: VFINX_HAINX_VBMFX does best.
- TBillRate: Farma French does best, but most top results come from the 3mo Federal Reserve Board TBill Rate.
- lagName (lag structure): The lag name denotes the start lag, end lag and crossover point. E.g. lag011_(070)_021_(314) uses an 11 month lookback for 70 months then switches to a 21 month lookback for 314 months.
- Crossover Point: The point in time where switching from the first to the second interest rate produces maximum revenue.

Below is the list sorted by crossover point, followed by a SPY chart marked with the crossover points. I had hoped that using Return as an “Objective function” while varying the crossover point would give deeper insight into the temporal nature of the market. I had then hoped to apply this approach recursively, discerning the market’s “fine structure”.

However, an exhaustive (retrospective) search serves simply to identify key tops/bottoms over the time period. As such, the relative market peak in 2007 and market bottom in 2009 both seem to be favorite switching points.

How about shorter timeframes? Below are the top 20 for the period from January 1988 to December 2016 by Return. Several common favorites still appear (E,g, 21 month followed by 5 month, 21 month followed by 2 month).

How about over the last 9 years (January 2008 to December 2016)? The relative peak in 2011 is where the approach switches to a 36 month lookback for most cases. In essence, DM switches to “Buy and Hold”.

The table below shows the top 2 portfolios for each time period where only one lag is used. Interestingly, Al's and James' portfolios occupy the top 2 spots for each timeframe. Recall the returns using one switchover were $745,912, $491,540 an 25,860 for the three periods investigated. I hand checked using portfolio visualizer and 21 month beats 12 month (and every other lag). The final balances do not match due to the issues brought up in the last post.

One thing that makes a big difference in the dual momentum returns is the use of S&P 500 TR as the leading indicator for foreign stocks. Using single momentum means that the absolute momentum test for all assets is based on a single asset. In Gary Antonacci's Dual Momentum book the proposed model is based on US stocks, international stocks and total bond market. In the proposed model instead of testing both US stocks and international stocks against the absolute momentum filter separately, only US stocks are tested against the absolute momentum filter, and if they pass the filter, then the selection between US and international stocks is based on relative strength. This is based David Rapach, Jack K. Strauss, and Guofu Zhou 2013 paper (International Stock Market Return Predictability), in which they find that the US stock market leads the world markets even at the monthly frequency. You can find more information in the methodology section of the FAQ (https://www.portfoliovisualizer.com/faq#methodology), and the relevant section in the Dual Momentum book is the paragraph or two immediately before Table 8-3 and Figure 8-2 (note that this is different from the Figure 8.4 in Chapter 8) in case you have the book. If you open the Dual Momentum example from the Examples section (https://www.portfoliovisualizer.com/examples), you will notice that the backtested results are better when VFINX is used as the single absolute momentum asset as proposed in the book.

Here are some general comments and suggestions:

- Running a million parameter combinations and focusing on the top 20 probably won’t tell you too much other than you probably have found 20 “lucky” cases of curve-fitting. You’d need to look for some characteristics of the results that included many more samples. Unfortunately, I have no good suggestions for how to to that right now but may after your presentation.
- An approach I’ve used to protect against “luck” and “overfitting” is to generate lots of synthetic EC’s which have similar characteristics to the original EC. Generate 1000 or more synthetic ECs and then test the parameter combinations again though that would require, in your case, a billion runs. Alternatively, you could randomly generate a subset of the million parameter combinations – maybe 1000 and then that would require a million runs (=1000x1000). If some of the 1000 subset of parameter combinations did well for many of the 1000 synthetic EC, you may have found something that isn’t luck or due to overfitting.
- You could also use another technique I use to create a random no-skill distribution of possible results over the various periods. Each month, you randomly select an asset to hold for the month maybe using a weighted sampling of each asset, with a smaller sampling weight for the cash asset. You generate 1000 ECs using this technique then you have a distribution from which to compare the results you get above.

I think: for fitting the values (the greeks) it could be favorable to use the stepwise regression including test for t or F. Compare my simple approach for orthdisk.bas or orthstpx.bas that use some comparable parameters looking for the best one which are to use in a model. E.G. testing alphas, betas, return/Beta, Vei, and so on.

My original hypothesis, that I could usee DM as an "Objective Function" to determine the time structure of the market, didn't pan out. In essence, the function seeks out major tops and bottoms, which one can obtain more quickly via casual inspection.

The approach is adapable, in that it can emulate a "Buy and Hold" strategy if a sufficently long lag is selected.

In the case where the same lag is maintained over the entire interval, Depending on the portfolio, 21 or 12 mos lag worked best over 30 years and 24 or 5 mos worked best recently. Note that a 12 month (Yearly) lookback doesn't appear on the backend of **any** "top 20" portfolio for any timeframe for any TBill rate. It does however appear at the front end of some structures.

Although not discussed above, the approach seems to "want" to use shorter lags during times of higher volatility and longer lags when things are going smoothly. Perhaps selecting the lag using the VIX in conjuction with the Index trend would provide a better result.