This paper uses genetic programming to construct risk-adjusted, ex ante, optimal, trading rules for the S&P 500 Index and then characterizes the predictive content of these rules. These results extend previous results by using risk-adjustment selection criteria to generate ex ante rules with improved performance. There is, however, no evidence that the rules significantly outperform the buy-and-hold strategy on a risk-adjusted basis. Therefore, the results are consistent with market efficiency. Nevertheless, risk-adjustment techniques should be seriously considered when evaluating trading strategies.