Data to 5 October 2026

Research

How did Hierarchical risk parity do after costs and tax?

Single-linkage clustering on correlation distance, then recursive bisection with inverse-variance weights; last 252 sessions; monthly. From Apr 2005 to Oct 2026 it compounded at 7.2% a year after costs and tax (7.7% before tax), against 11.4% after tax for 60/40. Its worst fall was −6%, bottoming in Aug 2013 and recovered by Jan 2014.

Written for investors weighing this allocation against a plain 60/40, and advisers who want its tax and cost drag measured. Data to 5 Oct 2026.

How it works

One of 136 portfolios in the lab, in the family "Risk-based". The rule and its parameters were written down before any result was computed.

Historical research on index portfolios, not investment advice. Returns are after fund costs; 'after tax' applies Indian capital-gains rules by date for a 30% slab investor and sells everything at the end. Most factor, mid-cap and small-cap index history before each index's launch date is back-tested by NSE. One 21-year sample, domestic assets only.

Construction
Single-linkage clustering on correlation distance, then recursive bisection with inverse-variance weights; last 252 sessions; monthly.
Rebalancing
A rule sets the weights at each month-end close; trades happen at the next session's close.
From the literature
Lopez de Prado (2016).
Weights held, month-end, Apr 2005 to Oct 2026. No fixed target: the rule decides each month.
AssetTargetAverage heldLowestHighestLatest (Oct 2026)More
G-sec 5-year (NSE benchmark index)–92%74%99%96%
Gold (domestic, rupees)–5%1%15%1%
Nifty 500–3%1%12%3%

Growth and falls

What one rupee became, and how far it fell on the way. 60/40 is drawn in grey for comparison. Both curves are after fund costs and before tax; the after-tax figures are in the costs chapter.

Growth of 1 rupee

Weekly, shown month by month, Apr 2005 to Oct 2026. After costs, before tax. Log scale.

How to read it. On a log scale equal slopes are equal rates of return. One rupee became 4.94× here and 11.21× in 60/40; a steeper line in one stretch says which did better then.

Hierarchical risk parity60/40
201020201×2×5×10×11.2×4.9×
Source: tipsheet portfolio lab, computed from domestic gold in rupees (World Gold Council), the NSE 5-year benchmark G-sec index, NSE total-return indices.

Fall from the previous peak

The lowest weekly reading of each month, per cent below the highest value reached so far.

How to read it. Zero means a new high. The deepest fall here was −6.3% (Aug 2013), against −36.5% for 60/40. Depth is half the story: the width of each dip is how long an investor waited to get back to even.

per cent

Hierarchical risk parity60/40
20102020−40%−30%−20%−10%0%−2%−5%
Source: tipsheet portfolio lab, computed from domestic gold in rupees (World Gold Council), the NSE 5-year benchmark G-sec index, NSE total-return indices.

The five deepest falls

Measured on daily values. Days are calendar days.
FallPeakBottomBack to peakDays fallingDays below peakMore
−6.3%27 May 201319 Aug 201313 Jan 201484231
−5.6%18 Mar 200816 Jul 200816 Sept 2008120182
−4.0%9 Mar 202023 Mar 202020 Apr 20201442
−3.9%5 Jan 200926 Mar 20096 May 200980121
−3.2%7 Apr 20229 May 20224 Aug 202232119

Year by year

Calendar-year returns, after costs and before tax, with 60/40 below for comparison. In 8 of 20 full years this portfolio did better. The market phases below are the lab's pre-registered splits.

Per cent. * Part year: Apr 2005 on, and to Oct 2026.
2005*200620072008200920102011201220132014201520162017201820192020202120222023202420252026*
Hierarchical risk parity +7+4+8+16+2+5+5+10+5+13+8+12+6+6+11+14+3+3+9+9+8+3
60/40 +24+22+40−27+51+10−15+23+5+29+4+8+24+1+9+15+20+3+19+13+8−3
Annualised return and worst fall in each phase, after costs, before tax.
PhaseDatesA year60/40, a yearWorst fall60/40, worst fallMore
The boom, FY06 to FY08Apr 2005 to Mar 20086.8%20.9%−3%−22%
The crisis, FY09Apr 2008 to Mar 200912.0%−14.6%−5%−27%
FY10 to FY14Apr 2009 to Mar 20146.6%14.4%−6%−17%
FY15 to FY20 (to March 2020)Apr 2014 to Mar 20209.2%7.9%−4%−23%
April 2020 onApr 2020 to Oct 20267.0%14.6%−3%−11%

What costs and tax took

The same Apr 2005 to Oct 2026 run, peeled back one layer at a time. Fund costs are those of the cheapest widely available index fund or ETF of each era; tax applies Indian capital-gains rules as they stood on each sale date, and everything is sold at the end so deferred tax is counted. Turnover was 0.09 times the portfolio a year.

Annualised return (CAGR) at each layer, and what that layer cost in percentage points a year.
LayerHierarchical risk parityCost of this layer (pts)60/40More
Index return, before any cost8.26%–12.48%
After fund costs and trading (before tax)7.70%0.5611.89%
After tax, 30% slab7.17%0.5311.41%
After tax and inflation0.68%6.494.67%
After-tax CAGR under other tax assumptions. The headline keeps the annual equity exemption off because it depends on the investor's other gains.
Tax caseHierarchical risk parity60/40
30% slab, equity exemption off (the headline)7.17%11.41%
30% slab, equity exemption on (Rs 10 lakh start)7.19%11.44%
20% slab7.22%11.42%

How sure we can be

One 21-year history is one draw. These numbers say how much the result could move with a different ordering of the same months, and how it looks once the 136 portfolios tried are taken into account.

Return, 90% interval
6.5% to 8.9% a year before tax (block bootstrap of monthly returns; the point estimate is 7.7%).
Against 60/40, 90% interval
−8.6 pts to 0.0 pts a year. The interval straddles zero: the history cannot tell this portfolio and 60/40 apart.
Five-year windows ahead of 60/40
12% of rolling five-year windows. The windows overlap: only about 4 of them are independent, so this is a description of the past, not a probability.
Longest stretch behind 60/40
7,826 days
Deflated Sharpe against 60/40
0.00. This is the probability that its edge over 60/40 is real once 136 tries are allowed for; 0.95 would be the usual bar.
Worst five years after inflation
−4.2% a year
Rolling five-year return
Lowest 5.5%, middle half 7.3% to 8.6%, highest 10.0% a year (before tax).

As a monthly SIP

Rs 10,000 a month, bought at the first session of each month, held for a fixed number of years and then sold, after costs and tax (with the annual equity exemption on). Each start month is one window. Windows that start a month apart share almost all their months, so the number of independent periods is printed next to every figure.

10-year SIP: after-tax return by start month

XIRR of each 10-year SIP, by the month it started (139 windows). Grey: the same instalments in one-year fixed deposits, taxed each year. FD proxy: 364-day T-bill primary yield (91-day before April 2005), after slab tax and cess each year.

How to read it. Each point is a whole 10-year SIP. Neighbouring points share most of their months, so the line is far smoother than the evidence is deep. The best start was Aug 2010 (8.6%), the worst Oct 2016 (6.1%).

per cent a year, after tax

Hierarchical risk parity SIPFixed-deposit SIP
201020154%5%6%7%8%9%6.1%4.1%
Source: tipsheet portfolio lab, computed from domestic gold in rupees (World Gold Council), the NSE 5-year benchmark G-sec index, NSE total-return indices.

The latest 10-year SIP in the data started in Oct 2016. It put in ₹12,00,000 and was worth ₹16,44,171 after tax at the end, against ₹14,81,288 for the same instalments in fixed deposits.

After-tax XIRR across start months, per cent a year. 'Below FD' and 'below inflation' are shares of overlapping windows, not probabilities.
YearsWindowsIndependent periods5th pctMedian95th pctWorstWorst startBelow FDBelow inflationMedian valueMore
322373.4%6.6%8.9%2.6%2019-1016%48%₹3,97,670
519945.6%6.9%8.3%5.2%2017-100%36%₹7,14,589
717536.0%7.3%8.4%5.6%2019-100%22%₹10,88,059
1013926.5%7.5%8.4%6.1%2016-100%7%₹17,68,141
157917.0%7.3%8.2%6.8%2011-100%0%₹31,97,988
201917.1%7.3%7.5%7.1%2006-100%0%₹53,08,302

The workings

Method

Data

Every chart has a table view, a CSV download and a link to its published JSON. Bundles are listed in data status.

Read with