idea from https://github.com/robertmartin8/PyPortfolioOpt
This custom hierarchical risk party removes the assets which reduce sharp ratio because risk parity will sometimes optimize with negative returns given enough assets.
Warning, the out of sample returns are significanly worse than in sample.