Robust Optimization of Algorithmic Trading Systems TESIS DOCTORAL José Manuel Berutich Lindquist Departamento de Lenguajes y Ciencias de la Computación Escuela Técnica Superior de Ingeniería Informática Universidad de Málaga Mayo 2017 AUTOR: José Manuel Berutich Lindquist http://orcid.org/0000-0002-0918-9634 EDITA: Publicaciones y Divulgación Científica. Universidad de Málaga Esta obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial- SinObraDerivada 4.0 Internacional: http://creativecommons.org/licenses/by-nc-nd/4.0/legalcode Cualquier parte de esta obra se puede reproducir sin autorización pero con el reconocimiento y atribución de los autores. No se puede hacer uso comercial de la obra y no se puede alterar, transformar o hacer obras derivadas. Esta Tesis Doctoral está depositada en el Repositorio Institucional de la Universidad de Málaga (RIUMA): riuma.uma.es i Documento maquetado con TEX S v.1.0+. Robust Optimization of Algorithmic Trading Systems Memoria que presenta para optar al título de Doctor en Informática José Manuel Berutich Lindquist Programa de Doctorado Ingeniería del Software e Inteligencia Artificial Dirigida por los Doctores Francisco Luna Valero Francico López Valverde Departamento de Lenguajes y Ciencias de la Computación Escuela Técnica Superior de Ingeniería Informática Universidad de Málaga Mayo 2017 Copyright (cid:13)c José Manuel Berutich Lindquist Carta de Aval v Departamento de Lenguajes y Ciencias de la Computación Escuela Técnica Superior de Ingeniería Informática Universidad de Málaga El Doctor Francisco López Valverde, profesor titular y el Doctor Fran- cisco Luna Valero, profesor contratado, ambos pertenecientes al Departa- mento de Lenguajes y Ciencias de la Computación de la Universidad de Málaga, certifican: que D. José Manuel Berutich Lindquist, Ingeniero en Informática por Bentley University (Boston, EE.UU.), ha realizado en el Departamento de Lenguajes y Ciencias de la Computación de la Universidad de Málaga, bajo dirección de ambos, el trabajo de investigación correspondiente a su Tesis Doctoral titulada: Robust Optimization of Algorithmic Trading Systems Revisado el presente trabajo, estimamos que puede ser presentado al tribunal que ha de juzgarlo. Y para que conste a efectos de lo establecido en la legislación vigente, autorizamos la presentación de la Tesis Doctoral en la Universidad de Málaga. En Málaga, 22 de Mayo de 2017 Dr. Francisco López Valverde Dr. Francisco Luna Valero Abstract GAs (Genetic Algorithms) and GP (Genetic Programming) are investigated for finding robust Technical Trading Strategies (TTSs). TTSs evolved with standard GA/GP techniques tend to suffer from over-fitting as the solutions evolved are very fragile to small disturbances in the data. The main objec- tive of this thesis is to explore optimization techniques for GA/GP which produce robust TTSs that have a similar performance during both optimiza- tion and evaluation, and are also able to operate in all market conditions and withstand severe market shocks. In this thesis, two novel techniques that increase the robustness of TTSs and reduce over-fitting are described and compared to standard GA/GP op- timization techniques and the traditional investment strategy Buy & Hold. The first technique employed is a robust multi-market optimization method- ologyusingaGA.Robustnessisincorporatedviatheenvironmentalvariables of the problem, i.e. variablity in the dataset is introduced by conducting the search for the optimum parameters over several market indices, in the hope of exposing the GA to differing market conditions. This technique shows an increase in the robustness of the solutions produced, with results also showing an improvement in terms of performance when compared to those offered by conducting the optimization over a single market. The second technique is a random sampling method we use to discover robust TTSs using GP. Variability is introduced in the dataset by randomly sampling segments and evaluating each individual on different random sam- ples. This technique has shown promising results, substantially beating Buy & Hold. Overall, this thesis concludes that Evolutionary Computation techniques such as GA and GP combined with robust optimization methods are very suitable for developing trading systems, and that the systems developed using these techniques can be used to provide significant economic profits in all market conditions. vii Resumen Cuando las leyes de la matemática se refieren a la realidad, no son ciertas; cuando son ciertas, no se refieren a la realidad. Albert Einstein I Introducción Enlasdosúltimasdécadas,elAT(Algorithmic Trading)utilizandoEC(Evo- lutionary Computation) ha atraído mucha atención de investigadores acadé- micos tanto del ámbito de las finanzas, como del soft-computing (Aguilar- Rivera et al., 2015; Hu et al., 2015). AT es un término comúnmente usado para describir programas informáticos que automatizan una o más etapas del proceso de negociación de activos en los mercados financieros. Enlaactualidad,lossistemasdeATmanejanaproximadamentedel50% al 60% de todas las acciones negociadas en los Estados Unidos y la Unión Europea y es una fuente importante de innovación en computación, espe- cialmente en aprendizaje computacional y en computación distribuida (Nuti et al., 2011; Hendershott and Riordan, 2013). Estos sistemas se despliegan en mercados muy líquidos en clases de activos tales como acciones, futuros, derivados, bonos y divisas. Los principales objetivos que esta tesis trata de abordar, son el diseñar y optimizar TTSs (Technical Trading Strategies) robustas, dos problemas clásicos en el ámbito del AT. Una TTS consiste en una serie de reglas o condiciones que determinan si se compra o se vende un determinado instru- mento financiero. Para abordar ambos problemas utilizamos técnicas de EC a las que incorporamos métodos de optimización robusta. La optimización y diseño de una TTS es muy similar a un problema de aprendizaje computacional, donde estamos tratando de aprender el mejor conjunto de parámetros de un modelo sobre un conjunto de datos histórico. Para determinar cómo funcionarían las reglas obtenidas durante la optimi- zación en el mundo real, necesitamos dividir los datos en dos subconjuntos uno para entrenamiento y otro evaluación. ix
Description: