We study the finite horizon Merton portfolio optimization problem in a general local-stochastic volatility setting. Using model coefficient expansion techniques, we derive approximations for the both the value function and the optimal investment strategy. We also analyze the `implied Sharpe ratio' and derive a series approximation for this quantity. The zeroth-order approximation of the value function and optimal investment strategy correspond to those obtained by Merton (1969) when the risky asset follows a geometric Brownian motion. The first-order correction of the value function can, for general utility functions, be expressed as a differential operator acting on the zeroth-order term. For power utility functions, higher order terms can also be computed as a differential operator acting on the zeroth-order term. We give a rigorous accuracy bound for the higher order approximations in this case in pure stochastic volatility models. A number of examples are provided in order to demonstrate numerically the accuracy of our approximations.