Keller's Defensive Asset Allocation

This post describes a showcase written for the v1 engine. Check out our v2 showcase code.

To showcase TuringTrader’s capabilities, we have just added another portfolio strategy: Wouter J. Keller’s and Jan Willem Keuning’s Defensive Assete Allocation (DAA). This is an ETF strategy, based on Keller and Keuning’s fabulous paper on SSRN.

TuringTrader implementation of Keller's Defensive Asset Allocation

- chart courtesy of TuringTrader.com

The strategy uses a ‘canary universe’ to identify markets downturns, and to determine the ‘cash fraction’ for the portfolio. This cash fraction will determine the percentage of assets allocated towards risky assets, with the remainder allocated towards cash. For the cash portion, the strategy picks the most promising ETFs from a universe of broadly diversified ‘risky’ ETFs, based on their momentum. For the cash portion, the strategy picks the single most promising ETF from a universe of ETFs covering treasuries and corporate bonds, again based on their momentum. The strategy re-balances its holdings only once per month. As a result, the portfolio turnover is fairly low.

This strategy is a great starting point for experimenting with different universes, and risk-management techniques. Consequently, the code allows switching between many of the flavors discussed in the paper, including DAA-G6, DAA-G12, DAA1-G4, and DAA1-G12. Further, the code is concise and easy to understand, with the main logic implemented in less than 150 lines.

We hope you find this strategy interesting, and maybe it helps you spark some new ideas. If you are just curious and like to see how well the strategy does, head over to TuringTrader.com, where we have daily updated charts.

Happy coding!