This document discusses using genetic programming to develop automated trading strategies by evolving buy and sell rules for stocks. It introduces genetic programming and how it has been applied to financial forecasting problems. The framework uses genetic programming to evolve trading rules based on hourly price and volume data for banking stocks. The results show it is possible to discover profitable arbitrage trading strategies in this domain, and that co-evolving separate buy and sell rules outperforms evolving a single ruleset. Transaction costs are also an important factor to consider for optimal performance.