Introducing Protective Asset Allocation

Protective Asset Allocation (PAA) is a new provident long only tactical investment strategy that combines a dual momentum approach with a vigorous capital preservation routine. The key elements of PAA are:
  • dual momentum based timing and selection mechanism
  • innovative c(r)ash protection routine through protective momentum
  • support for separate “risk-on” and “risk-off" universes
Each of these building blocks will be explained quite comprehensively followed by a detailed comparative backtest covering 45 years (Dec. 1970 – Dec. 2015). But first be ready for a truckload of conceptual particularities ;-)


In our quest for a yield neutral absolute return performance strategy Wouter Keller and I developed PAA (long only) with its innovative protective momentum approach for capital preservation in times of market turmoil. The interested reader might consider reading our PAA-paper on SSRN too.

PAA exploits the well-defined momentum phenomenon: the empirically observed tendency for asset prices to keep moving in the same direction. By applying PAA to a broad diversified global universe of sufficiently uncorrelated ETFs, PAA will auto-detect bull trends that emerge. Meanwhile protective momentum keeps guard over global market-breadth to adjust the “equity” : “cash” spread of the portfolio. And when trends shift, PAA catches the change and adapts, be it bullish or bearish. In doing so PAA is purely mechanical, so there is no need second guessing market conditions nor predicting trends. PAA is capable of delivering absolute return performance with 1-year-rolling-return win rates of more than 95% (R1yWin>0%) and 99% (R1yWin>-5%).

Equity chart of the PAA strategy demonstrating high return/risk performance

Portfolio Level Monte Carlo Analysis

Following up on the prior Strategy Stress Testing post: with the release of AmiBroker version 6.10.0 a new Monte Carlo mode has come available for simulating portfolio equity changes. Instead of randomizing the trade list, the new mode uses bar-per-bar percent equity changes at the portfolio level to generate permutations. Consequently cross-sectional correlations are preserved. According to AmiBroker’s developer, the new method is perfectly fine for multiple overlapped positions, provided the number of bar-per-bar equity changes is sufficiently large (> 100).


The portfolio level Monte Carlo simulation is controlled by a couple of new SetOption fields which allow for AFL implementation right into the strategy code:
The Monte Carlo Portfolio Analysis code is suitable for copy/paste inside a rotational model like the familair Simple GMR code attached to the prior Monte Carlo post. However, my preferred method is to save the code as a separate file for inclusion in strategy models by calling the #include command:

Lab Announcement


After spending ages on research a couple of exciting new developments will be published shorty:
  • Portfolio level Monte Carlo analysis
  • DIY global multi asset universe with 21 ETF-proxies covering a history of 45+ years
  • “One-Click” export from Excel to multiple csv (in R)
  • Enhanced c(r)ash protection routine for tactical investment strategies
  • Dual universe support for differentiation of risk-on and risk-off assets
  • Surveying volatility driven dynamic lookback indicators

Strategy Stress Testing à la Monaco

After a short, admittedly rather superfluous, historical digression, this post will introduce Monte Carlo Analysis. What is Monte Carlo Analysis? Why is such analysis useful if not prerequisite for a strategy trader? What does it supplement to customary backtest information? By exploring the darker corners of a strategy the objective of this post is revealing real risk.

Crunching numbers in a monastery

During the first half of the 1600s a French monk, Marin Mersenne, had many acquaintances in the scientific world. Mersenne studied (and taught) theology, philosophy, mathematics and music. He communicated extensively with other scholars like Descartes, Pascal, Huygens and Galilei.

In spite of being a theologian and philosopher primarily, Mersenne’s name is associated with prime numbers that compound to Mn = 2n – 1. Such numbers are called Mersenne primes. The first four Mersenne primes are 3, 7, 31 and 127 and significantly a Mersenne prime (219937−1) is elementary for the most commonly used version of the Mersenne Twister.

The Mersenne Twister is a fast generator of high-quality pseudorandom integers. Recently AmiBroker’s already extensive feature set was expanded with a Mersenne Twister based Monte Carlo simulator which is capable of rendering 30+ million trades per second (!). More specific, the Monte Carlo simulator runs series of trade sequences based on backtest output and uses the high-quality Mersenne Twister for randomizing the order of the trades.

And so we finally arrive down the stairs of the famous "Casino de Monte-Carlo" in mondain Monaco ;-)


Why stress test strategies with Monte Carlo Analysis?

Before we start familiarizing ourselves with Monte Carlo Analysis let’s first pick a sample strategy for illustration purposes: SeekingAlpha's contributor Varan's Simple GMR. Each month all available trading capital is re-allocated to the top performing ETF out of a basket with IJJ, EFA, IEV, EPP, QQQ, EEM and TLT. See Varan's post for details. For establishing points of reference and collecting the trade data required for a Monte Carlo Analysis, a backtest is run starting at year-end 2003 and ending August 2015 using high-quality monthly total return data as provided by Norgate Premium Data (Alpha-tester program).

The equity curve as well as the distribution of the yearly returns obtained from the backtest look reasonable, even considering the 2008 drawdown when compared to the market in general. Volatility is not too high. Actually, the ratios for Sharpe, Sortino and Calmar are quite nice. The complete chart suite is available in the Google drive folder connected to this post (zooming required!).

Portfolio performance over 2004 - 2015

EAA Piloting Quarterly Sector Rotation With C(r)ash Protection

This post will cover a detailed look into quarterly sector investing using the EAA-model previously introduced (see here). For the sector investor Fidelity is the place to be. Currently Fidelity offers 46 sector mutual funds. Lots of these funds have at least 21 years of historical prices available. Those are the ones collected in the universe under investigation in this post to allow for comparability with prior backtests.


Fidelity Sector Select Universe

The above stated data history requirement is met by 34 from the 46 available sector funds. With these 34 funds not only 10 economical sectors plus precious metals are covered, but it also ensures for a well diversified basket to select investments from.


In the above table funds are sorted on sectors. Furthermore the performance of each fund over 1995 - 2014 is shown and broken down into the average yearly return (R), the fund's volatility (V) and the worst draw down (D) during those 20 years.

Sampling Universes with EAA

In this post several universes will be sampled using the Elastic Asset Allocation model. The universes under review are:
- CXO Advisory's 8 assets simple momentum universe
- Stefan Solomons 12 assets tactical allocation universe
- ETFdb.com's most popular ETFs
- CXO's on steroids: a 300% leveraged universe


The backtests are performed using monthly Yahoo! Finance total return data with EAA in Equal Weigted Hedged mode with monthly reforms. So each month assets are (re-)alloced according to the below simplified formula:
wi zi = ( ( 1 ci ) ri ) eps , wi sim zi = ((1-ci) cdot ri ) ^ eps,  if ri > 0 else wi = zi = 0
ETFs are extended using mutual fund data to attain a backtest period of 20 years (1995 - 2014)*.

CXO Advisory's 8 assets simple momentum universe

The line-up for CXO's is DBC, EEM, EFA, GLD, IWM, IYR, SPY and TLT. Since the liquidity of CXO's original IWB is way lower than that of its bigger sibling SPY, the latter was used. IEF is deployed as c(r)ash protection fund (CPF), but is kept outside the regular allocation basket. The maximum number of assets for capital allocation is limited to 3+1.

CXO: equity curve with key performance indicators