1. A method using a computer having a processor configured to execute instructions which when executed cause the computer to perform steps to determine a portfolio of financial assets which maximizes the expected utility of wealth to optimize the portfolio, where asset returns are represented by a factor model, the steps comprising: selecting from multiple financial assets a mix of a plurality of available financial assets comprising the portfolio of financial assets which is to be optimized; selecting a factor model which represents a distribution of expected asset returns for the plurality of financial assets for a selected subsequent period of time for which the portfolio is to be optimized; inputting, using the processor, data comprising the factor model including a factor explained part, R F ω , and an idiosyncratic part; ε, of the expected asset returns and parameters comprising constraints and bounds summarized by Ax=b,l≦x≦h for the portfolio of financial assets into a processor-readable memory, to determine expected utility maximization of the portfolio; expressing the expected utility maximization as 
 max E u (1+( R F ω +ε) T x) 
 Ax=b,l≦x≦h ; thereby expressing the return of a portfolio x as the sum of a discrete and a continuous random variable, distributed independently, for which the expected utility is to be calculated; calculating, using the processor, the expected utility of wealth for given values of x based on the selected factor model estimation by integrating over a normally distributed random variable with a mean value μ x ω =1+R F ωT x and variance σ x 2 = ∑ i = 1 n ⁢ σ i 2 ⁢ x x 2 , where time integration is only one-dimensional and is carried out numerically using a trapezoidal method; calculating, using the processor, gradients at given value x with respect to x i where the integrations are only one-dimensional and are carried out numerically using the trapezoidal method; determining, using the processor, the expected utility maximization using gradient-based nonlinear programming; iteratively changing the mix of financial assets in the portfolio; for each altered mix of financial assets in the portfolio, repeating the calculating and determining steps using the processor until an optimum portfolio is found which maximizes the expected utility of period-end wealth; and selectively using the optimized portfolio to implement an investment strategy.