Post
by **Hydromod** » Mon Jun 24, 2019 2:18 am

I've started doing some systematic backtesting with different strategies using Matlab. I’m excited by the results, but they are definitely preliminary and I need further testing to make sure I’m not making stupid mistakes. I’m sharing a bit early, because I’m trying to get at some of the issues related to rebalancing frequency and volatility.

I pulled in the UPROSIM and TMFSIM databases that the OP linked to, augmented by the daily UPRO and TMF returns since then. The strategy is to use sequences with specified duration starting on every possible starting day in the history, and construct a cumulative distribution from these. This mitigates issues with timing to some extent.

So far I’ve looked at three factors: (i) sequence duration (investing horizon), (ii) rebalancing frequency, and (iii) weighting scheme.

The sequence duration strongly affects the CAGR distribution, as is expected. For example, for the one-year durations with the standard 40/60 weighting and quarterly rebalancing, 10 percent of the periods have CAGR < -15% and 10% have CAGR > 50%. For the 25-year durations, the same strategy changes to CAGR < +14% and CAGR > +17.6. So it would have been a ride on short time scales, as many have pointed out.

I looked at rebalancing frequencies between daily and annual (in trading days, I did 1, 2, 5, 10, 20, 40, 60, 120, and 250 days). The rebalancing frequency tends to shift the CAGR more or less uniformly up and down. There were generally three groups: (i) daily to weekly rebalancing, (ii) biweekly to quarterly, and (iii) longer than quarterly. The biweekly to quarterly cohorts generally had similar distributions. Daily rebalancing performed best, usually about 1 to 2 percentage points better than the biweekly to quarterly cohorts. The statistics on the semiannual and (especially) the annual cases began to deviate from the more frequent rebalancing cases.

This is an area where a fund might offer a real systematic advantage, if they could efficiently perform the daily rebalancing trades.

The weighting scheme has been a big discussion point recently. I’ve implemented the constant-weighting and inverse-volatility weighting schemes.

For the constant-weighting scheme and the 25-year horizon:

30/70 weighting: expected CAGR of 17.6%, 15.9%, 15.9%, 16.1%, and 16.6% for daily, monthly, bimonthly, quarterly, and semiannual rebalancing frequencies.

40/60 weighting: expected CAGR of 17.9%, 16.2%, 16.3%, 16.5%, and 17.0% for daily, monthly, bimonthly, quarterly, and semiannual rebalancing frequencies.

50/50 weighting: expected CAGR of 17.9%, 16.2%, 16.3%, 16.6%, and 17.2% for daily, monthly, bimonthly, quarterly, and semiannual rebalancing frequencies.

For this, expected CAGR means 50% of the observations were higher and 50% lower.

The constant-weighting schemes had a pattern of (i) best CAGR at daily rebalancing, (ii) decreasing CAGR with decreasing frequency to about biweekly rebalancing, (iii) rebounding CAGR to semiannual, then (iv) unreliable estimates for annual rebalancing. It’s not entirely clear why there was a rebound with longer rebalancing frequency; I suspect that perhaps the extended bulls allowed the UPRO licensing to compound for a longer duration.

The inverse-volatility scheme has the length of the observation period for calculating volatility come in to play because the idea is to forecast the best weights during the interval between rebalances. There is an interplay between rebalancing frequency and the length of the observation period for calculating volatility as well, because frequent rebalancing might be able to take advantage of very recent volatility estimates.

I looked at volatility periods of 10, 20, 40, 60, 120, and 250 trading days, combined with the daily, monthly, bimonthly, quarterly, and semiannual rebalancing frequencies.

Out of the cases I looked at, the overall highest expected CAGR was 20.0% with biweekly rebalancing for two cases: (i) a 10-day volatility period and (ii) a quarterly volatility period.

The expected CAGR for the quarterly rebalancing was 18.7%, 18.8%, 18.7%, 18.6%, 17.8%, and 17.7% for volatility periods of 10, 20, 40, 60, 120, and 250 days. Other rebalancing periods had qualitatively similar behavior.

So it appears that CAGR would increase by 1 to 3 percentage points using moderately short-term volatility estimates to redo the weights. Even updating the weights on an annual basis provides some improvement over holding the weights fixed. But the improvement is on a statistical basis; there is no guarantee for any particular time history.

TL;DR Daily rebalancing helps, but nobody can do this on their own. Usually monthly to quarterly rebalancing gives similar CAGR over multiyear periods. Updating weights using inverse-volatility calculations appears to improve overall CAGR by 1 to 3 percentage points; generally good results would be expected with volatility estimates based on the previous 1 to 3 months, but even 1-year estimates offer improvement.

Hopes this helps folks in their thoughts. I'm out of the country so I may not be able to easily provide better input this week.