Sparse Portfolio Selection via Topological Data Analysis based Clustering