The SPY-TLT Universal Investment Strategy [View article]

Follow this link for a very clear explanation on walk forward testing: http://bit.ly/1urtMKC

The described tool is implemented in the platform I use these days for my backtesting. The posted charts in my comments are also generated by the same software.

BTW, I have no affiliation with the designer. I am just a satisfied user. :-)

Starting ultimo 2002 with a hypothetical $100,000 as initial capital and with IJJ, IEV, ILF, EPP, EEM and TLT as our portfolio, at the end of last August ILF's profit contribution still was at a decent 12%: http://bit.ly/15XTlOf

September's severe hit for ILF changed its total contribution to -2%: http://bit.ly/15XTlOh So in hindsight the portfolio would have done better without ILF at all.

These percentages are taken from each ETF's profit contribution measured in $-dollars compared to the portfolio's total dollar profit (End November: $2.095.000).

While to a certain extent the severity of September's blow to the portfolio remains concealed in ILF's aggregate monthly returns, your trading account would have uncloaked it for sure: a $295,000 setback. http://bit.ly/15XTj8X (check the last column sorted on loss in $-value)

The SPY-TLT Universal Investment Strategy [View article]

@ Cliff:

Differentiating the settings for return, volatility and the f-exponent shows the model is quite stable, at least over the tested time frame.

r/v/f: CAR% and MDD% (2009 - 2014) 3/3/2: 18.92 and -8.19 3/4/2: 18.41 and -8.20 3/6/2: 18.91 and -8.21 3/8/2: 18.93 and -8.20 3/9/2: 18.90 and -8.20 3/12/2: 19.30 and -8.20

2/12/2: 15.94 and -9.42 4/12/2: 18.79 and -8.91 5/12/2: 17.11 and -7.94 6/12/2: 14.37 and -8.37

3/3/1: 19.08 and -8.20 3/4/1: 18.70 and -8.21 3/6/1: 19.00 and -8.20 3/8/1: 19.01 and -8.20 3/9/1: 18.97 and -8.20 3/12/1: 19.16 and -8.21

The choice for 6 months on volatility was just because it was used in GMRE per Marc Cohn.

Using FDVLX for the long term backtest was more out of habit than anything else. With VFISX-VUSTX-VFISX performance would have been quite a bit lower: CAR drops and MDD rises. performance chart: http://bit.ly/1voAoxF rolling returns : http://bit.ly/1voAoxJ

And finally an attempt to depict the capital percentages allocated to SPY (blue), TLT (red) and SHY (green): http://bit.ly/1voAqWe

The replication rebalances monthly on the [3 month return / sd ( 6 month volatility ) ^ 2] ratio between SPY and TLT. But when both funds register negative 3 month returns, capital is allocated to SHY. No optimization is applied.

Backtesting 2004 - 2014 Extending the backtest results in the following performance:

Quarterly Tactical Strategy Backtested To 2003: CAGR Over 28% And Consistent Positive Returns [View article]

See the "attached" screenshot to demonstrate the SMA is definitively calculated using the adjusted closes. All other calculations are performed on total return data too. http://bit.ly/YZaIuM

Quarterly Tactical Strategy Backtested To 2003: CAGR Over 28% And Consistent Positive Returns [View article]

Terry, to answer your question: just the default settings as described by Cliff in his post, so 0.5 * 105d momentum + 0.5 * 20d momentum with a 3 month sma as cash filter. The profit table complements the QTS equity curve with key performance indicators as posted in my Sep 12 comment.

Quarterly Tactical Strategy Backtested To 2003: CAGR Over 28% And Consistent Positive Returns [View article]

After consulting AmiBroker's developer this is the profit table for QTS (correct calculation of monthly returns and no more blank squares inside the backtest timeframe): http://bit.ly/1oQ2aMF

Quarterly Tactical Strategy Backtested To 2003: CAGR Over 28% And Consistent Positive Returns [View article]

Cliff gave me a few questions to ponder:

For interpreting the 3D graph, what we are looking for is a high broad plateau on the 3D graph. Instead of analyzing the 3D data, see the attached 2D "CARpet" plot. The plot with the QTS settings (105d/20d, white arrows) shows it lies on a small rim, while the other plot shows that the 108d/54d (yellow arrows) lies on a plateau with similar/high CAR readings, indicating less sensitivity to small parameter changes. Waterlevel is set slightly above 24% CAR, so the spot indicated with the red arrows is "under the waterline".

The big difference between the 105d/20d against the 5m/1m strategy can largely be attributed to the rotation on June 30, 2011: 105d/20d had NAESX as top pick, but NAESX failed to pass the SMA filter, so VUSTX became the holding for 2011-Q3 yielding a return of 24,76% (!). 5m/1m had PREMX as top pick and because PREMX did pass the SMA filter too, this strategy returned a loss of 5.92% over the same quarter.

Per Cliff's request I also performed an optimization run differentiating the weights for slow and fast momentum (combined 1) as well as the lookback period for both momentum measurements: SlowWeight: between from 0.2 until 0.8 with 0.1 increments FastWeight = 1 - SlowWeigth; SlowLength: between from 75 until 260 with 1 increments FastLength : between from 10 until 75 with 1 increments Of course, this kind of optimization carries a high data snooping risk.

The result is a table showing all possible combinations, in this case nearly 86,000 different strategy settings. The below table shows the best results sorted on CAR: http://bit.ly/XiRyi9

Quarterly Tactical Strategy Backtested To 2003: CAGR Over 28% And Consistent Positive Returns [View article]

Though the above Profit Table is automatically generated by the software, the metrics appear to be quite wrong when compared to the actual month by month changes of the equity curve as written down in Excel: http://bit.ly/1s3Kyh4

Quarterly Tactical Strategy Backtested To 2003: CAGR Over 28% And Consistent Positive Returns [View article]

With the full cooperation of Cliff I was able to replicate QTS with the settings applied in ETFreplay. Long story short: the results match.

While our goal was to go back as far as the start of 1997, Cliff discovered serious differences between Stockcharts' total return data and Yahoo's, reason why I gave up the pre-2002 years in the below chart(s).

QTS equity curve with key performance indicators (see chart title): http://bit.ly/X5H59A

QTS list of trades (some positions are kept for more than one quarter): http://bit.ly/X5H59E (Notice the cash protection kicks in for 4 Q's and take a look at the winner%! )

For synthetic ETF's the price history of an ETF is extended with the data for the corresponding mutual fund as mentioned in Cliff's article. This amounts to using an ETF's data as soon as it becomes available. $VB = VB + NAESX, $VWOB = VWOB + PREMX, $VWO = VWO + VEIEX, $VCIT = VCIT + VFICX, $VMBS = VMBS + VFIIX, $SPY = SPY + VFINX, $VNQ = VNQ + VGSIX, $VEU = VEU + VGTSX, $TLT = TLT + VUSTX Prices are baked in "R" and then imported into AmiBroker (or Excel for that matter). There is a posting on my blog covering this subject.

QTS CAR in 3D on xx days slow momentum and yy days fast momentum: http://bit.ly/X5H5X1

How to read the 3D chart is explained on the AmiBroker help pages: "By visualizing how your system's parameters affect trading performance, you can more readily decide which parameter values produce "fragile" and which produce "robust" system performance. Robust settings are regions in the 3D graph that show gradual rather than abrupt changes in the surface plot. 3D optimization charts are great tool to prevent curve-fitting. Curve-fitting (or over-optimization) occurs when the system is more complex than it needs to be, and all that complexity was focused on market conditions that may never happen again. Radical changes (or spikes) in the 3D optimization charts show clearly over-optimization areas. You should choose parameter region that produces a broad and wide plateau on 3D chart for your real life trading. Parameter sets producing profit spikes will not work reliably in real trading."

To conclude, by building the strategy step-by-step I also had the chance to compare the "simpler" version against each other. The comparison equity chart is to be read as follows (lookback periods): - black: 105d - red: 5m - blue: 105d + 20d - green: 5m + 1m - orange: 5m + 1m + 3m sma cash filter - magenta: 105d +20d + 3m sma cash filter While the simpler versions with a lookback of exactly 5/1 months did outperform the versions using 105/20 days, Cliff's final QTS version is far superior to the monthly version. Notice the big difference between the orange and magenta equity curves.

Quarterly Tactical Strategy Backtested To 2003: CAGR Over 28% And Consistent Positive Returns [View article]

Thank you for posting yet another interesting strategy, Cliff.

I will try to replicate the strategy for AmiBroker, so we can extend backtesting to 1996.

In order to do so, please allow me two questions: - what happens in case of a tie? Allocate equal portions to the best 2 or 3? - did you backtest 5m + 1m (instead of 20 days total return, because a typical trading month is 21 days long, so there should not be that much difference between 5m + 1m against 5m + 20/21d)?

## The SPY-TLT Universal Investment Strategy [View article]

http://bit.ly/1urtMKC

The described tool is implemented in the platform I use these days for my backtesting. The posted charts in my comments are also generated by the same software.

BTW, I have no affiliation with the designer. I am just a satisfied user. :-)

## Simple GMR [View instapost]

http://bit.ly/15XTlOf

September's severe hit for ILF changed its total contribution to -2%:

http://bit.ly/15XTlOh

So in hindsight the portfolio would have done better without ILF at all.

These percentages are taken from each ETF's profit contribution measured in $-dollars compared to the portfolio's total dollar profit (End November: $2.095.000).

While to a certain extent the severity of September's blow to the portfolio remains concealed in ILF's aggregate monthly returns, your trading account would have uncloaked it for sure: a $295,000 setback.

http://bit.ly/15XTj8X

(check the last column sorted on loss in $-value)

## Simple GMR [View instapost]

http://bit.ly/1AvUAxO

## The SPY-TLT Universal Investment Strategy [View article]

Differentiating the settings for return, volatility and the f-exponent shows the model is quite stable, at least over the tested time frame.

r/v/f: CAR% and MDD% (2009 - 2014)

3/3/2: 18.92 and -8.19

3/4/2: 18.41 and -8.20

3/6/2: 18.91 and -8.21

3/8/2: 18.93 and -8.20

3/9/2: 18.90 and -8.20

3/12/2: 19.30 and -8.20

2/12/2: 15.94 and -9.42

4/12/2: 18.79 and -8.91

5/12/2: 17.11 and -7.94

6/12/2: 14.37 and -8.37

3/3/1: 19.08 and -8.20

3/4/1: 18.70 and -8.21

3/6/1: 19.00 and -8.20

3/8/1: 19.01 and -8.20

3/9/1: 18.97 and -8.20

3/12/1: 19.16 and -8.21

The choice for 6 months on volatility was just because it was used in GMRE per Marc Cohn.

Using FDVLX for the long term backtest was more out of habit than anything else. With VFISX-VUSTX-VFISX performance would have been quite a bit lower: CAR drops and MDD rises.

performance chart: http://bit.ly/1voAoxF

rolling returns : http://bit.ly/1voAoxJ

And finally an attempt to depict the capital percentages allocated to SPY (blue), TLT (red) and SHY (green):

http://bit.ly/1voAqWe

## The SPY-TLT Universal Investment Strategy [View article]

http://bit.ly/1voeQRR

## The SPY-TLT Universal Investment Strategy [View article]

Five year equity:

http://bit.ly/1veePuw

Five year profit table:

http://bit.ly/1veePuy

The replication rebalances monthly on the [3 month return / sd ( 6 month volatility ) ^ 2] ratio between SPY and TLT. But when both funds register negative 3 month returns, capital is allocated to SHY. No optimization is applied.

Backtesting 2004 - 2014

Extending the backtest results in the following performance:

Equity chart:

http://bit.ly/1veePuA

Yearly returns:

http://bit.ly/1veePuE

Profit table:

http://bit.ly/1veePuG

Capital allocation:

http://bit.ly/1veePuI

Profit contribution:

http://bit.ly/1veePuL

Backtesting 1993 - 2014

Switching to the FDVLX, VUSTX and cash proxy VFISX mutual funds allows for a backtest covering 22 years.

Equity:

http://bit.ly/1veePuO

Profit Table:

http://bit.ly/1veeR5M

The replication is performed in AmiBroker with Yahoo monthly data.

## Quarterly Tactical Strategy Backtested To 2003: CAGR Over 28% And Consistent Positive Returns [View article]

http://bit.ly/YZaIuM

## Quarterly Tactical Strategy Backtested To 2003: CAGR Over 28% And Consistent Positive Returns [View article]

## Quarterly Tactical Strategy Backtested To 2003: CAGR Over 28% And Consistent Positive Returns [View article]

http://bit.ly/1oQ2aMF

For interpreting the 3D graph, what we are looking for is a high broad plateau on the 3D graph. Instead of analyzing the 3D data, see the attached 2D "CARpet" plot. The plot with the QTS settings (105d/20d, white arrows) shows it lies on a small rim, while the other plot shows that the 108d/54d (yellow arrows) lies on a plateau with similar/high CAR readings, indicating less sensitivity to small parameter changes. Waterlevel is set slightly above 24% CAR, so the spot indicated with the red arrows is "under the waterline".

http://bit.ly/XiRyi5

http://bit.ly/XiRwH0

The big difference between the 105d/20d against the 5m/1m strategy can largely be attributed to the rotation on June 30, 2011:

105d/20d had NAESX as top pick, but NAESX failed to pass the SMA filter, so VUSTX became the holding for 2011-Q3 yielding a return of 24,76% (!).

5m/1m had PREMX as top pick and because PREMX did pass the SMA filter too, this strategy returned a loss of 5.92% over the same quarter.

Per Cliff's request I also performed an optimization run differentiating the weights for slow and fast momentum (combined 1) as well as the lookback period for both momentum measurements:

SlowWeight: between from 0.2 until 0.8 with 0.1 increments

FastWeight = 1 - SlowWeigth;

SlowLength: between from 75 until 260 with 1 increments

FastLength : between from 10 until 75 with 1 increments

Of course, this kind of optimization carries a high data snooping risk.

The result is a table showing all possible combinations, in this case nearly 86,000 different strategy settings. The below table shows the best results sorted on CAR:

http://bit.ly/XiRyi9

the metrics appear to be quite wrong when compared to the actual month by month changes of the equity curve as written down in Excel:

http://bit.ly/1s3Kyh4

While our goal was to go back as far as the start of 1997, Cliff discovered serious differences between Stockcharts' total return data and Yahoo's, reason why I gave up the pre-2002 years in the below chart(s).

QTS against SPY starting ultimo 2001:

http://bit.ly/X5H59u

QTS equity curve with key performance indicators (see chart title):

http://bit.ly/X5H59A

QTS list of trades (some positions are kept for more than one quarter):

http://bit.ly/X5H59E

(Notice the cash protection kicks in for 4 Q's and take a look at the winner%! )

QTS mutual funds (black) against synthetic ETF's (red):

http://bit.ly/X5H31v

For synthetic ETF's the price history of an ETF is extended with the data for the corresponding mutual fund as mentioned in Cliff's article. This amounts to using an ETF's data as soon as it becomes available.

$VB = VB + NAESX,

$VWOB = VWOB + PREMX,

$VWO = VWO + VEIEX,

$VCIT = VCIT + VFICX,

$VMBS = VMBS + VFIIX,

$SPY = SPY + VFINX,

$VNQ = VNQ + VGSIX,

$VEU = VEU + VGTSX,

$TLT = TLT + VUSTX

Prices are baked in "R" and then imported into AmiBroker (or Excel for that matter). There is a posting on my blog covering this subject.

QTS CAR in 3D on xx days slow momentum and yy days fast momentum:

http://bit.ly/X5H5X1

How to read the 3D chart is explained on the AmiBroker help pages:

"By visualizing how your system's parameters affect trading performance, you can more readily decide which parameter values produce "fragile" and which produce "robust" system performance. Robust settings are regions in the 3D graph that show gradual rather than abrupt changes in the surface plot. 3D optimization charts are great tool to prevent curve-fitting. Curve-fitting (or over-optimization) occurs when the system is more complex than it needs to be, and all that complexity was focused on market conditions that may never happen again. Radical changes (or spikes) in the 3D optimization charts show clearly over-optimization areas. You should choose parameter region that produces a broad and wide plateau on 3D chart for your real life trading. Parameter sets producing profit spikes will not work reliably in real trading."

QTS comparison:

http://bit.ly/X5H59J

To conclude, by building the strategy step-by-step I also had the chance to compare the "simpler" version against each other. The comparison equity chart is to be read as follows (lookback periods):

- black: 105d

- red: 5m

- blue: 105d + 20d

- green: 5m + 1m

- orange: 5m + 1m + 3m sma cash filter

- magenta: 105d +20d + 3m sma cash filter

While the simpler versions with a lookback of exactly 5/1 months did outperform the versions using 105/20 days, Cliff's final QTS version is far superior to the monthly version. Notice the big difference between the orange and magenta equity curves.

BTW: While loading the price data into my platform I noticed a typo:

VFICK -> VFICX

I will try to replicate the strategy for AmiBroker, so we can extend backtesting to 1996.

In order to do so, please allow me two questions:

- what happens in case of a tie? Allocate equal portions to the best 2 or 3?

- did you backtest 5m + 1m (instead of 20 days total return, because a typical trading month is 21 days long, so there should not be that much difference between 5m + 1m against 5m + 20/21d)?