Author: shyam

Intraday Momentum, an Update

Back in 2016, we ran a sniff test on Intraday Momentum: The First Half-Hour Return Predicts the Last Half-Hour Return (pdf). We promised an update so here it is (eight years later).

We ran the strategy with both the first 15min and 30min formations with and without considering gaps. It continues to not work with the three indices we used: NIFTY, BANK NIFTY and MID SELECT. Here’s the one for the NIFTY. The rest are on github.

Some strategies may benefit from becoming well known. However, a vast majority of them don’t. This one belongs to the former.

Prophet for VIX

Open sourced by Meta back in 2017, Prophet is a procedure for forecasting time series data. How does it compare to GARCH(1,1) and locf (last one carried forward) for forecasting VIX 20 days out?

We fit 500-days of rolling VIX data using Prophet and GARCH(1,1) and forecast forward 20-days. We then calculate the RMSE (Root Mean Squared Error) of the forecast vs. actual of both the models and locf. Plot RMSE of all three.

Ideally, you want the error to be low and the tail of errors to be as short as possible. GARCH(1,1) looks worse than Prophet. However, locf beat both?

When in doubt, take the average.

Code on github.

Also: VIX Seasonality

Prophet for Momentum, Part II

Previously, we discussed using Meta’s Prophet to create a momentum portfolio that was rebalanced monthly. Is there a benefit to rebalancing this at a higher frequency?

Turns out that there isn’t. Even before factoring in costs, Prophet works best with a monthly schedule.

And does significantly worse if bring costs into the equation.

The problem is that Prophet portfolios have little overlap.

Once again, a +1 to KISS.

Code and charts on github.

Momentum Rebalance Frequency, Part II

Previously, we looked at momentum rebalance frequencies with a monthly increment. However, if you observe the individual returns of momentum stocks (Returns under Momentum), you’ll notice that the returns of momentum stocks tail off after the first two weeks. Does switching to a weekly rebalance frequency make sense?

The biggest problem with a higher frequency of rebalance is the higher transaction cost that comes with it. So, we set the drag to be 0.5% and run 1- through 4-week rebalancing scenarios.

Turns out, there is an advantage to rebalancing a momentum portfolio once in two weeks rather than once a month.

The transaction costs are roughly 5% (annualized) vs. 3% of the monthly rebalanced version.

The main thing to watch out for is the portfolio overlap between rebalancing. The lower the overlap, higher the costs.

Costs are permanent and immediate while returns are hypothetical and distant. Make of this what you will.

Code and charts on github.

Related: Factors

Replication

Sometimes, you many not be able to directly buy an index or access a strategy because of regulatory hurdles, mandates etc… In these situations, replicating it using a basket of accessible securities might make sense.

For example, you can replicate the S&P 500 index using Indian indices: NIFTY 50, MIDCAP SELECT and NIFTY BANK.

In fact, you can do for any reference timeseries (strategies/funds) and apply leverage as desired.

Also, the loadings give you and idea of the shifting relationship between the reference asset and the basket over time.

Code and images are on github.