We study the problem of finding sparse, mean reverting portfolios based on multivariate historical time series. After mapping the optimal portfolio selection problem into a generalized eigenvalue problem, we propose a new optimization approach based on the use of simulated annealing. This new method ensures that the cardinality constraint is automatically satisfied in each step of the optimization by embedding the constraint into the iterative neighbor selection function. We empirically demonstrate that the method produces better mean reversion coefficients than other heuristic methods, but also show that this does not necessarily result in higher profits during convergence trading. This implies that more complex objective functions should be developed for the problem, which can also be optimized under cardinality constraints using the proposed approach.