Category: Investing Insight

Investing insight to make you a better investor.

Is Skewness a Timing Signal?

We recently came across a post titled “IMPROVING THE ODDS OF VALUE” (link,) where the author uses the skewness of one-year daily returns to time the value factor. Here, we try to replicate/extend the original backtest.

Key differences

We had to make some tweaks to simplify the task:

  1. The original uses a one-year lookback period, we use a 220-day (trading days) lookback. [minor]
  2. The original uses the S&P 500 index, we use the SPY ETF. Our prices are adjusted for dividends. [minor]
  3. The original constructs a long-short value portfolio. i.e., an academic alpha portfolio. We use it to time the IVE ETF which tracks the S&P 500 Value Index. [major]

We expected the major premise of the original post – that you can go long value during periods of positive skewness and go into cash otherwise – to hold. And perhaps provide some marginal advantage while using it to time a long-only value ETF.

Results

We observed the exact opposite result. Going long IVE during periods of positive skewness under-performed going long IVE during periods of negative skewness. In the cumulative returns chart below:

  • the black and red lines are buy&hold IVE and SPY,
  • the green and blue lines are IVE returns when being long during periods of positive and negative skewness, respectively,
  • the cyan and purple lines are SPY returns when being long during periods of positive and negative skewness, respectively,

cumulative returns using skewness for timing (IVE/SPY)
Note how buy&hold vastly out-performs the timing portfolio.

Further, if you rotate into a liquid fund (earning risk-free returns) instead of going into cash (earning zero), the SPY returns being long during periods of negative skewness beat buy&hold SPY returns:
cumulative returns using skewness for timing with risk-free rate (IVE/SPY)

Perhaps, we are seeing these totally different results because we are long-only and the original back-test was long-short? We are not entirely sure.
Also, the out-performance we observed on SPY failed to replicate on the NIFTY 50 and NIFTY MIDCAP 100 indices.

Code, charts and backtest results for NIFTY 50 and NIFTY MIDCAP 100 indices are on github.

Charts: Yield Curves

A yield curve is simply a term structure of interest rates – something you get when you plot rates (y-axis) against the term (x-axis.)

When you lend money to someone, you are taking two types of risk: rate risk and credit risk. This shows up in the chart as a curve that slopes up and two the right (to compensate for the former) and as a higher spread for riskier credit (to compensate for the latter.) But the shape is not a “universal truth” that always needs to be. For example, here are Indian zero coupon rates over the last 5 years:
India zero coupon yield curve
Note how in 2014, the curve was “inverted” – short-term rates were higher than long-term rates. This happens more often than one might think. One way to chart it is as a difference between the 10-year yield and the 2-year yield. If it dips below zero, you know the term-structure was inverted:
India 2s10s

Bonds are not “boring.” Note the volatility in the 10-year yields, not just in Indian bonds but in US and Euro area as well:
Indian 10y yields

US 10y yields

Euro 10y yields

Countries in the Euro area have different sovereign credit ratings. So the ECB publishes two rates: one is an aggregation of the whole Euro area and the other that is an aggregation of only the AAA country bonds. The chart above shows how right until the credit crisis hit, AAA and ALL were right on top of each other and then blew out after that point. This is the market realizing that not all Euro area countries are the same.

Although Indian rates have never been negative, the same cannot be said for others. Here is how the Euro yield curve looked like on October 15, 2018:
Euro area yield curve on 2018-10-15
And until very recently, short term rates in the US were zero:
US yield curves

Corporate bond investors need to be compensated for the credit risk that they take (over and above rate risk.) So corporate bonds tend to trade at a spread over the govvies. They are typically broken up by their credit rating and quoted as a spread:
US corporate spreads

And the market further differentiates between “developed market” and “emerging market” corporates even within the same credit rating. Here is a chart of AAA spreads for US and EM corporate credit:
US/EM corporate credit spreads
The spikes in spreads are the credit crisis rippling through the system.

We publish updated rate, credit and currency charts that all investors should track on our Macro Dashboard. Do check it out.

Code and more charts on github.

Principal Component Analysis, Part II

This post is an update to Part I of applying PCA to NASDAQOMX India TR indices.

Daily returns tends to be noisy. One way to smooth things out is to use rolling returns over a certain period of days. Rolling returns also allows a bit of slack in terms of variable response times. We wanted to check if using rolling returns would help shake out any obvious regime shifts that daily returns could not.

To recap, we split the NASDAQOMX India TR Index (NQINT) into two regimes. One above SMA-200 (A SMA_200) and the other below (B SMA_200.) The idea was to use PCA on the component indices to see if we could develop a “good times” and “bad times” portfolio based on the regime we are in.

NQINT 200-day SMA chart:
NQINT SMA 200

Factor loadings of indices when NQINT is above its 200-day SMA:
loadings above 200-day SMA

Factor loadings of indices when NQINT is below its 200-day SMA:
factor loadings below 200-day SMA

And finally, factor loadings through out:
factor loadings

Unfortunately, neither using daily returns nor lagged rolling returns resulted in PCA being useful in chalking out a regime specific portfolio.

Code and more charts are on github.

The EQUAL-III Theme

Our recent series on asset allocation walked through how different investment decisions affect portfolio returns and risk.

  1. Number of assets: Three is better than two and four.
  2. Rebalance threshold: Allowing a single asset to drift upto 80% reduces transaction costs and taxes.
  3. Weighing scheme: Equal weight is better than portfolio optimization methods.

You can read through the posts and the various factors that went into the analysis in order:

  1. Allocating a Two-Asset Portfolio
  2. Allocating a Three-Asset Portfolio, Equal Weighted
  3. Allocating a Three-Asset Portfolio, Optimized
  4. Allocating a Four-Asset Portfolio

For investors looking to gain from such a portfolio, we have setup a ready-to-invest Theme, the EQUAL-III, that takes care of keeping track of everything. It maintains an equal-weight portfolio of the M100 (Midcap-100 ETF,) N100 (Nasdaq-100 ETF) and the RRSLGETF (Long Term Gilt ETF.)

Questions? WhatsApp us +91-80-2665-0232

Allocating a Four-Asset Portfolio

Our previous posts showed how various allocation decisions impact optimized and equal-weighted three-asset portfolios. Here, we add a fourth asset – gold – and run it through the same scenarios.

Picking the Assets and Allocation

The assets we selected previously – MIDCAP, 0-5yr bond and NASDAQ-100 – were based on low observed historical pair-wise correlations. Most investors tend to add a fourth asset – gold – to their portfolios. Not only is gold not correlated with the other three, it has the added benefit of being priced internationally but traded locally. This allows it to benefit from rupee depreciation even if international gold prices remain flat. Observe how, at times, gold has a negative correlation to other assets:
correlations between gold, SPY, QQQ, MIDCAP and BONDs

The results

In the cumulative return and drawdown chart below, A1 is the MIDCAP index, A2 is the 0-5yr bond index, A3 is the QQQ and A4 is gold. A tax drag of 10% and an STT of 0.1% is applied at every rebalance. The rebalance threshold is set at 20%. The light-blue lines are the resulting portfolio returns. In the case of optimized portfolios, assets are allowed to have a weighting between 10% and 40% during the optimization process.

Equal Weighted

after tax cumulative returns of 4-asset equal weighted portfolio

Variance optimized

after tax cumulative returns of 4-asset variance optimized portfolio

Expected Tail Loss optimized

after tax cumulative returns of 4-asset ETL optimzied portfolio

Pre- and Post-tax returns

before and after tax cumulative returns of 4-asset equal weighted portfolio
before and after tax cumulative returns of 4-asset variance optimized portfolio
before and after tax cumulative returns of 4-asset ETL optimized portfolio

Rebalance

The rebalance threshold ends up determining the frequency of rebalance events. For a variance optimized portfolio, contrast the difference between a 20% threshold and an 80% threshold:

4-asset portfolio at a 20% rebalance threshold
4-asset portfolio at a 80% rebalance threshold

Take-away

  1. Every time there is a rebalance, the tax-man cometh and taketh away. Trying to minimize taxes is equivalent to minimizing the number of rebalancing events.
  2. To minimize reblancing events, one could set the threshold of rebalance higher. But there is a point of inflection with regards to after-tax returns.
  3. Allowing a single asset to balloon in weight risks larger portfolio drawdowns if that asset deflates.
  4. A four-asset equal weight portfolio under-performs a 3-asset equal weight portfolio. Gold maybe a good diversifier, but it doesn’t appear to do any favors to the portfolio on the performance front.
  5. Equal-weight 4-asset portfolio containing gold (above) drew-down less than the equal-weight 3-asset portfolio during the 2008 carnage (~30% vs. ~40%, respectively.)

Adding gold to a portfolio does not look like a good idea when looked through the lens of asset allocation schemes discussed here. However, there is a strong case for owning gold and the Sovereign Gold Bond (SGB) Scheme makes a lot of sense. See our previous post regarding the case for owning gold in India here.

Code, charts and the complete result dataset are available on github.