Table Of ContentUNIVERSIDAD PONTIFICIA COMILLAS
ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
INGENIERO INDUSTRIAL
PROYECTO FIN DE CARRERA
APLICACIÓN PARA OBTENER
SISTEMAS AUTOMÁTICOS DE
TRADING BASADOS EN ANÁLISIS
TÉCNICO
AUTOR: Luis Martí Gutiérrez de la Cámara
MADRID, Junio de 2005
APLICACIÓN PARA OBTENER SISTEMAS AUTOMÁTICOS
DE TRADING BASADOS EN ANÁLISIS TÉCNICO
Autor: Luis Martí Gutiérrez de la Cámara
Directores: Álvaro Baíllo Moreno, Jesús Pascual Peco González
RESUMEN DEL PROYECTO
En este proyecto se propone una metodología para obtener
sistemas automáticos de trading basados en análisis técnico
utilizando redes neuronales artificiales. Para ello, en una primera
parte se analizan diferentes elementos del análisis técnico (medias
móviles, osciladores, días de giro,…) y se explica su uso para tomar
decisiones de inversión. A partir de este análisis se plantea un
modelo de desarrollo de sistemas de trading basado en redes
neuronales. Este modelo toma los elementos del análisis técnico para
generar variables de entrada y produce salidas que orientan las
decisiones de compra o venta.
Para el desarrollo de este modelo es necesario definir
claramente las señales de entrada, las señales de salida, los
indicadores y la función objetivo. Las señales de entrada son criterios
que nos permiten identificar situaciones del mercado en las que
podría ser un buen momento para abrir una posición. Las señales de
salida nos indicarán el precio al que debemos cerrar una posición
abierta. Los indicadores serán las variables explicativas a partir de las
que decidiremos, en cada caso, si se ejecuta una determinada señal
de entrada. La función objetivo será una función que modela el
beneficio que se obtiene al abrir una posición con una señal de
entrada y cerrar la posición con una señal de salida.
De esta forma, se plantea un problema de aproximación
funcional en el que se trata de establecer una relación entre un
conjunto de indicadores técnicos seleccionados y una función
objetivo evaluada en el momento en el que se produce una señal de
entrada.
Para resolver este problema de aproximación funcional se ha
empleado una red neuronal artificial, concretamente un Perceptrón
Multicapa. Se han propuesto dos enfoques distintos para orientar el
entrenamiento del Perceptrón Multicapa: minimización del error
cuadrático medio y maximización del beneficio medio por operación.
Para la utilización de este tipo de red neuronal se ha implementado
una librería codificada en Visual Basic, que incorpora un algoritmo
de tipo Quasi-Newton de baja memoria para resolver la optimización
de los pesos del Perceptrón Multicapa.
Los sistemas automáticos de trading obtenidos con esta
tecnología han ofrecido resultados satisfactorios en periodos no
considerados durante el proceso de optimización, de lo que se
deduce que es posible obtener beneficio operando en los mercados
financieros utilizando el análisis técnico con este procedimiento. No
obstante, no se puede garantizar que los sistemas automáticos de
trading obtenidos vayan a ofrecer el mismo rendimiento en el futuro.
El principal inconveniente que se ha presentado en la
realización de este proyecto ha sido que al optimizar un patrón de
funcionamiento en un periodo, los resultados que se obtenían en
periodos distintos empeoraban.
Se ha desarrollado una aplicación con la que se puede
representar gráficos especialmente diseñados para el estudio de los
elementos del análisis técnico y obtener sistemas automáticos de
trading. Adicionalmente la aplicación incorpora un interfaz que hace
posible que el usuario opere con los sistemas automáticos de trading
creados anteriormente en tiempo real a través de una plataforma
Web.
APPLICATION TO OBTAIN AUTOMATIC TRADING
SYSTEMS BASED ON A TECHNICAL ANALYSIS APPROACH
Author: Luis Martí Gutiérrez de la Cámara
Supervisors: Álvaro Baíllo Moreno, Jesús Pascual Peco González
ABSTRACT
In this thesis we have developed a methodology to obtain
automatic trading systems based on a technical analysis approach by
using artificial neural networks.
The dissertation begins with a study of the different
components of technical analysis (moving averages, oscillators,
reversal days…) and with an explanation of their use to take
investing decisions. According to this analysis we formulate a model
for developing automatic trading systems based in artificial neural
networks. This model takes elements from technical analysis in order
to generate input variables and produces outputs that support
adopting long or short positions. The development of this model
requires a clear definition of the input signals, the output signals, the
indicators and the objective function.
The input signals are criteria that permit the identification of
market situations in which it might be a chance to open a new
position. The output signals indicate the price at which the positions
should be closed. The indicators are explanatory variables that we
use to decide whether an input signal should be executed. The
objective function is a function that models the profit that is obtained
by opening a contract with an input signal and closing it with an
output signal.
In this fashion, a functional approximation problem is
formulated. We shall try to set up a relationship between a set of
selected indicators and an objective function evaluated at the time an
input signal is detected.
In order to solve this functional approximation problem we
have used an artificial neural network, in particular a Multilayer
Perceptron. We have proposed two different approaches in order to
guide the training process of the Multilayer Perceptron: the
minimization of the mean quadratic error or the maximization of the
operation average profit.
To facilitate the utilization of this kind of neural network a
library coded in Visual Basic has been implemented; it incorporates a
low memory Quasi-Newton algorithm to adjust the network
weights.
The automatic trading systems obtained with this technology
have offered positive results during periods not explicitly considered
in the training process. This implies that it is possible to obtain
profits in financial markets using technical analysis with this
procedure. Nevertheless, positive results of these automatic trading
systems can not be guaranteed in the future.
The key drawback that has been detected in the development
of this thesis has been that, while the results obtained in one period
improve during the optimization process, the results in other periods
worsen.
The application developed can represent graphics especially
designed for technical analysis studies and can obtain automatic
trading systems. Additionally, the application incorporates a visual
interface that supports real-time investing decisions through a Web
page.
Nunca será suficiente agradecimiento escribir aquí estos nombres, pero no habría podido
empezar y acabar este proyecto si no fuera por
Mi familia, Álvaro Baíllo, Grabiel Desmonts, Leonora Jiménez, Elisa López y Jesús Peco
Contenido
1 INTRODUCCIÓN........................................................................................................5
1.1 Mercados financieros e inteligencia artificial...............................5
1.2 Objetivos............................................................................................6
1.3 Organización del documento.........................................................6
2 ANÁLISIS TÉCNICO..................................................................................................9
2.1 Introducción. Análisis técnico y análisis fundamental...............9
2.2 Diferentes tipos de análisis técnico.............................................10
2.3 Los primeros principios del análisis técnico. La teoría de
Dow..................................................................................................11
2.4 Principales herramientas empleadas por el análisis técnico....14
2.4.1 Soportes y resistencias.............................................................................14
2.4.2 Líneas de tendencia..................................................................................16
2.4.3 El porcentaje de los retrocesos..................................................................18
2.4.4 La media móvil.........................................................................................20
2.4.5 Osciladores...............................................................................................25
2.4.6 Días de giro (Reversal Days)...................................................................31
2.5 La teoría de las ondas de Elliott...................................................34
2.5.1 Introducción............................................................................................34
2.5.2 Principios básicos de la teoría de las ondas de Elliott..............................34
3 DISEÑO DE UN SISTEMA DE TRADING..........................................................43
3.1 Introducción a los sistemas automáticos de trading.................43
3.2 Proceso de creación de un sistema automático de trading......44
3.3 Componentes utilizados en el desarrollo de un sistema
automático de trading...................................................................46
3.3.1 Señales de entrada....................................................................................47
3.3.2 Señales de salida......................................................................................53
3.3.3 Indicadores técnicos.................................................................................55
3.3.4 Función objetivo......................................................................................60
3.3.5 “Caja negra”............................................................................................61
3.4 Implementación del modelo con redes neuronales
artificiales........................................................................................61
3.4.1 Modelo A: Maximización del beneficio....................................................62
3.4.2 Modelo B: Minimización del error cuadrático medio...............................63
3.5 Ampliación del diseño: sistemas automáticos de trading
basados en grupos de redes neuronales.....................................64
4 HERRAMIENTA INFORMÁTICA PARA LA OBTENCIÓN DE
SISTEMAS DE TRADING: RNA TRADING.......................................................67
4.1 Gestión de la información.............................................................67
4.2 Visualización de gráficos..............................................................68
4.3 Creación de un sistema automático de trading.........................72
4.3.1 Opciones generales del sistema de trading...............................................72
4.3.2 Selección de componentes........................................................................74
4.3.3 Ejemplo A................................................................................................76
4.3.4 Ejemplo B.................................................................................................84
4.3.5 Ejemplo C................................................................................................89
4.4 Evaluación de un sistema automático de trading en
tiempo real......................................................................................92
5 CONCLUSIONES Y FUTUROS DESARROLLOS............................................101
5.1 Conclusiones.................................................................................101
5.2 Futuros desarrollos......................................................................102
6 APROXIMACIÓN FUNCIONAL MEDIANTE REDES NEURONALES
ARTIFICIALES.........................................................................................................105
6.1 Introducción..................................................................................105
6.2 Aproximación funcional.............................................................105
6.3 Redes neuronales artificiales......................................................109
6.3.1 Definición y características de una red neuronal artificial....................110
6.3.2 Paradigmas de aprendizaje....................................................................111
6.3.3 Principales estructuras conexionistas....................................................113
6.4 El Perceptrón Multicapa (Multilayer Perceptron)...................114
6.4.1 Estructura del Perceptrón Multicapa....................................................114
6.4.2 Entrenamiento de un Perceptrón Multicapa.........................................119
6.4.3 Cálculo de derivadas y algoritmo de Retropropagación
(Backpropagation)..................................................................................121
6.4.4 Evolución del entrenamiento.................................................................125
6.4.5 Aspectos a tener en cuenta en el entrenamiento de un Perceptrón
Multicapa...............................................................................................126
1 Introducción 1-3
Capítulo 1
Introducción
Description:Principios básicos de la teoría de las ondas de Elliott . El patrón básico [A. J. Frost and Robert Prechter, Elliot Wave Principle]. Por otra parte, como