Abstract:According to the traits of frictional markets, a multi-goal programming model with transaction costs, taxes and free dispatched share is set up. In order to gain the model's solution more easily, the model is converted into a single goal programming model by use of utility function. Meanwhile, in view of the fact that investors are usually hard to describe their utility functions precisely, they are let to compare the valid portfolios in couples by their utility preferences. Then, on the basis of the outcome above-mentioned, the solution is gradually approached to an approximate optimal solution by using Fabonacci method. This multi-goal programming model conforms to the actuality better than the Markowitz model. And the way of getting solutions feasible, comprehensible and novel. So it is very practical, and can help inkestors make good descions.