Genetic programming (GP) is increasingly popular as a research tool for applications in finance and economics. One thread in this area is the use of GP to discover effective technical trading rules. In a seminal article, Allen & Karjalainen (1999) used GP to find rules that were profitable, but were nevertheless outperformed by the simple “buy and hold” trading strategy. Many succeeding attempts have reported similar findings. This represents a clear example of a significant open issue in the field of GP, namely, generalization in GP [78]. The issue of generalisation is that GP solutions may not be general enough, resulting in poor performance on unseen data. There are a small handful of cases in which such work has managed to find rules that outperform buyand- hold, but these have tended to be difficult to replicate. Among previous studies, work by Becker & Seshadri (2003) was the most promising one, which showed outperformance of buy-and-hold. In turn, Becker & Seshadri’s work had made several modifications to Allen & Karjalainen’s work, including the adoption of monthly rather than daily trading. This thesis provides a replicable account of Becker & Seshadri’s study, and also shows how further modifications enabled fairly reliable outperformance of buy-and-hold, including the use of a train/test/validate methodology [41] to evolve trading rules with good properties of generalization, and the use of a dynamic form of GP [109] to improve the performance of the algorithm in dynamic environments like financial markets. In addition, we investigate and compare each of daily, weekly and monthly trading; we find that outperformance of buy-and-hold can be achieved even for daily trading, but as we move from monthly to daily trading the performance of evolved rules becomes increasingly dependent on prevailing market conditions. This has clarified that robust outperformance of B&H depends on, mainly, the adoption of a relatively infrequent trading strategy (e.g. monthly), as well as a range of factors that amount to sound engineering of the GP grammar and the validation strategy. Moreover, v we also add a comprehensive study of multiobjective approaches to this investigation with assumption from that, and find that multiobjective strategies provide even more robustness in outperforming B&H, even in the context of more frequent (e.g. weekly) trading decisions. Last, inspired by a number of beneficial aspects of grammatical evolution (GE) and reports on the successful performance of various kinds of its applications, we introduce new approach for (GE) with a new suite of operators resulting in an improvement on GE search compared with standard GE. An empirical test of this new GE approach on various kind of test problems, including financial trading, is provided in this thesis as well.