Financial market noise greatly limits portfolio optimization by concealing key patterns and resulting in inaccurate asset selection. In this paper, we propose a novel approach that leverages dictionary learning, specifically the modified K-SVD algorithm, for denoising financial time series in the context of multivariate portfolio selection. Our method, which considers highly correlated short datasets, trains the dictionary simultaneously for multiple assets, resulting in more robust and adaptive denoising. We next use a vector auto-regressive process on the denoised data to estimate covariance matrices and build optimal portfolios using the minimum variance approach. Extensive computer simulations are conducted to assess the impact of our denoising method on portfolio performance in terms of several metrics, such as cumulative returns, Sharpe ratio, and model accuracy. The findings indicate how dictionary learning can improve the robustness of investment portfolios in the face of market noise and volatility.