Table Of ContentAutorizada la entrega del proyecto del alumno:
CARLOS DE LUCAS HERRANZ
Los directores del Proyecto:
JOSÉ VILLAR COLLADO
Fdo.: ……………………….. Fecha: /09/2009
ÁLVARO SÁNCHEZ MIRALLES
Fdo.: ……………………….. Fecha: /09/2009
Vº Bº del Coordinador de Proyectos:
EDUARDO ALCALDE LANCHARRO
Fdo.: ……………………….. Fecha: /09/2009
PROYECTO FIN DE CARRERA
SISTEMA DE INVERSIÓN EN BOLSA
A CORTO PLAZO
AUTOR: CARLOS DE LUCAS HERRANZ
MADRID, SEPTIEMBRE 2009
SISTEMA DE INVERSIÓN EN BOLSA A CORTO PLAZO.
Dedicatoria.
A mis abuelos,
por el regalo más grande
que he recibido: mis padres.
I
SISTEMA DE INVERSIÓN EN BOLSA A CORTO PLAZO.
Agradecimientos.
Agradecimientos
Me gustaría aprovechar estas líneas para agradecer a mi familia, especialmente
a mis padres, todo el cariño, comprensión, apoyo y esfuerzo realizado a lo largo de
los años para que este momento haya llegado.
También a ti Juan, gracias, por todo lo que me enseñas día a día. Confío en
que todo te va a ir mejor que bien.
A ti, por ser tan especial en mi vida, gracias.
Muy importantes en esta etapa también han sido mis amigos, sin vosotros nada
sería lo mismo.
Gracias Hugo, te estaré siempre agradecido.
No sería justo si no reconociera a Eugenio Sánchez el empujón inicial y a
Miguel Ángel Sanz y Juan Marín todas las dudas resueltas.
Agradecer a mis directores, José Villar y Álvaro Sánchez, haberme dado la
oportunidad de realizar este proyecto y haber podido trabajar a su lado. Reconocer
también a Eduardo Alcalde toda la ayuda recibida.
Por último, agradecer a José Antonio Madrigal y a las Tortugas Hispánicas
todo lo aprendido. Espero no dejar de aprender nunca.
A todos una vez más, GRACIAS.
II
SISTEMA DE INVERSIÓN EN BOLSA A CORTO PLAZO.
Resumen del Proyecto.
Resumen del Proyecto
El presente proyecto consiste en el desarrollo de una aplicación de inversión
en bolsa con la que sea posible realizar predicciones sobre las cotizaciones de
algunas empresas del parqué español. Del mismo modo el sistema ejecutará
automáticamente órdenes de compra y venta en función de dichas predicciones. El
objetivo último del proyecto es conseguir un sistema rentable y fiable para el
usuario.
Se presenta una aplicación con un interfaz intuitivo para el usuario a través del
cual será posible entrenar diferentes modelos en busca del más óptimo a la hora de
realizar las predicciones. El usuario será capaz de estudiar las situaciones y los
modelos gracias a la información que el sistema facilitará mediante gráficas e
informes.
Para conseguir una aplicación completa, a la funcionalidad de la misma, se ha
añadido un simulador de resultados off-line para que el usuario pueda comprobar los
resultados que el sistema alcanzaría.
El desarrollo del sistema se ha realizado principalmente en Matlab y se han
puesto en práctica los conocimientos adquiridos sobre programación e inteligencia
artificial. Ha sido posible el desarrollo de la aplicación con Matlab gracias a su
toolbox sobre redes neuronales y la posibilidad que dispone de crear interfaces
gráficos de manera ágil.
La forma de predecir las series financieras en el proyecto se realiza a través de
modelos no lineales, más concretamente redes neuronales. La aplicación de modelos
no lineales para la predicción de series financieras está adquiriendo gran importancia
en los últimos años y se considera un campo de estudio que puede aportar resultados
muy interesantes.
III
SISTEMA DE INVERSIÓN EN BOLSA A CORTO PLAZO.
Resumen del Proyecto.
El proyecto es la continuación de los trabajos realizados sobre la materia en
años anteriores, ya que los interesantes resultados obtenidos hasta la fecha empujan a
seguir investigando en la materia. El presente documento explicará la adaptación del
trabajo realizado hasta el momento y las nuevas mejoras introducidas.
Del mismo, se ha desarrollado la lógica que la aplicación seguirá en el tiempo
real. Dicho problema quedará solucionado en futuros trabajos con el desarrollo en
Visual Basic de las funciones que conecten la aplicación desarrollada con Visual
Chart (el proveedor de información bursátil).
IV
SISTEMA DE INVERSIÓN EN BOLSA A CORTO PLAZO.
Abstract.
Abstract
This project develops a stock investment application with which it is possible
to forecast the prices of some companies in the Spanish Stock Exchange. Similarly,
the system will automatically buy and sell orders based on these predictions. The
project's ultimate objective is to achieve a cost-effective and reliable tool for the
user.
The application has an intuitive user interface through which it will be
possible to try different models in order to find the most efficient one to make
predictions. The user will be able to study situations and models due to information
that the system provides through graphs and reports. An off-line simulator has been
added so as to have a complete application.
The way to predict the financial series in the project is implemented through
non-linear models, specifically neural networks.
The project continues with the work done in this area in previous years, since
the positive results achieved up to date encourage further investigation of the matter.
The real time problem will be solved in future versions with Visual Basic
development functions combining the application developed with Visual Chart.
V
SISTEMA DE INVERSIÓN EN BOLSA A CORTO PLAZO.
Índice.
Índice
1. Introducción.....................................................................................................................................2
1.1. Motivación..........................................................................................................................................................3
1.2. Objetivos.............................................................................................................................................................3
1.3. Metodología........................................................................................................................................................4
1.4. Recursos Empleados.........................................................................................................................................6
1.4.1. Hardware......................................................................................................................................................6
1.4.2. Software.......................................................................................................................................................6
2. Estado del Arte.................................................................................................................................9
3. Estudio de Antecedentes...............................................................................................................13
3.1. Inversión en Bolsa...........................................................................................................................................13
3.2. Predicción de Series Financieras..................................................................................................................14
3.3. Modelo...............................................................................................................................................................15
3.3.1. Entradas del Modelo................................................................................................................................15
3.3.2. Redes Neuronales.....................................................................................................................................18
4. Extreme Programming..................................................................................................................24
4.1. ¿Qué es ‘Extreme Programming’?..................................................................................................................24
4.2. Fases de la Metodología XP............................................................................................................................25
4.2.1. Planificación del Proyecto......................................................................................................................25
4.2.2. Diseño.........................................................................................................................................................26
4.2.3. Codificación...............................................................................................................................................27
4.2.4. Pruebas.......................................................................................................................................................28
4.3. Conclusiones.....................................................................................................................................................28
5. Planificación...................................................................................................................................31
5.1. Introducción.....................................................................................................................................................31
5.2. Históricos..........................................................................................................................................................32
5.3. Modelo...............................................................................................................................................................33
5.4. Simulación........................................................................................................................................................34
5.5. Resultados.........................................................................................................................................................35
5.6. Sistema de Decisión........................................................................................................................................36
5.7. Tiempo real.......................................................................................................................................................36
6. Diseño..............................................................................................................................................38
6.1. Introducción.....................................................................................................................................................38
6.2. Históricos..........................................................................................................................................................39
VI
SISTEMA DE INVERSIÓN EN BOLSA A CORTO PLAZO.
Índice.
6.2.1. Carga...........................................................................................................................................................40
6.2.2. Visualización.............................................................................................................................................41
6.2.3. Diagrama de Flujo de Datos....................................................................................................................41
6.3. Modelo...............................................................................................................................................................42
6.3.1. Entrenamiento..........................................................................................................................................43
6.3.2. Carga...........................................................................................................................................................44
6.3.3. Diagrama de Flujo de Datos....................................................................................................................45
6.3.4. Gestión de Modelos..................................................................................................................................45
6.4. Simulación........................................................................................................................................................47
6.4.1. Simulación..................................................................................................................................................47
6.4.2. Carga...........................................................................................................................................................48
6.4.3. Diagrama de Flujo de Datos....................................................................................................................48
6.5. Resultados.........................................................................................................................................................49
6.5.1. Diagrama de Flujo de Datos....................................................................................................................50
6.6. Sistema de Decisión........................................................................................................................................51
6.7. Tiempo Real......................................................................................................................................................52
6.7.1. Diagrama de Flujo de Datos....................................................................................................................52
6.8. Diagrama de Flujo de la Aplicación..............................................................................................................53
7. Desarrollo.......................................................................................................................................55
7.1. Introducción.....................................................................................................................................................55
7.2. Históricos..........................................................................................................................................................55
7.2.1. Inicio de Sesión.........................................................................................................................................55
7.2.2. Resumen de Variables..............................................................................................................................57
7.2.3. LOGde Sesión............................................................................................................................................58
7.2.4. Carga de Históricos..................................................................................................................................59
7.2.5. Visualización de Históricos.....................................................................................................................61
7.3. Modelo...............................................................................................................................................................63
7.3.1. Entrenamiento del Modelo......................................................................................................................64
7.3.2. Carga del Modelo......................................................................................................................................66
7.3.3. Gestión de Modelos..................................................................................................................................67
7.4. Simulación........................................................................................................................................................70
7.4.1. Simular un Periodo...................................................................................................................................71
7.4.2. Carga de una Simulación.........................................................................................................................73
7.5. Resultados.........................................................................................................................................................73
7.6. Sistema de Decisión........................................................................................................................................77
7.7. Tiempo Real......................................................................................................................................................79
8. Pruebas...........................................................................................................................................81
8.1. Pruebas unitarias.............................................................................................................................................81
8.2. Prueba global del sistema..............................................................................................................................82
8.3. Resultados.........................................................................................................................................................82
VII
SISTEMA DE INVERSIÓN EN BOLSA A CORTO PLAZO.
Índice.
8.3.1. Enero 2008................................................................................................................................................82
8.3.2. Febrero 2008.............................................................................................................................................86
8.3.3. Marzo 2008................................................................................................................................................89
8.3.4. Comparativa..............................................................................................................................................92
9. Planificación del proyecto............................................................................................................96
9.1. Estructura de Descomposición del Trabajo (EDT)....................................................................................96
9.2. Diagrama PERT................................................................................................................................................99
9.3. Responsabilidades del Proyecto................................................................................................................102
10. Asignación Presupuestaria.........................................................................................................104
10.1. Asignación horas/hombre........................................................................................................................104
10.2. Tarifas de los Participantes......................................................................................................................105
10.3. Presupuesto Final.......................................................................................................................................105
10.4. Conclusión...................................................................................................................................................106
11. Conclusiones.................................................................................................................................108
12. Líneas de continuación...............................................................................................................110
12.1. Finalizar los Módulos de Visual Basicpara Visual Chart.....................................................................110
12.2. Optimizar Entrenamiento del Modelo....................................................................................................110
12.3. Incorporación de Nuevas Entradas.........................................................................................................111
12.4. Optimizar la Toma de Decisiones............................................................................................................111
12.5. Dinamizar las Empresas que Serán Predichas......................................................................................112
12.6.Contrastar con otros Modelos..................................................................................................................112
12.7. Limitar el Capital Invertido......................................................................................................................112
13. ANEXO A –Manual de Usuario....................................................................................................114
13.1. Datos.............................................................................................................................................................115
13.1.1. Cargar....................................................................................................................................................115
13.1.2. Ver..........................................................................................................................................................116
13.2. Modelo..........................................................................................................................................................118
13.2.1. Entrenar/Cargar..................................................................................................................................118
13.2.2. Gº de Modelos......................................................................................................................................120
13.3. Simular.........................................................................................................................................................122
13.3.1. Simular/Cargar....................................................................................................................................122
13.4. Ver Resultados............................................................................................................................................124
13.4.1. Resumen General.................................................................................................................................124
13.4.2. Elegir Empresa.....................................................................................................................................124
13.5. Otra información........................................................................................................................................127
14. ANEXO B –Variaciones de los Indicadores Respecto al Precio..............................................129
14.1. ADX (Movimiento Direccional)................................................................................................................129
14.2. MACD (Convergencia-Divergencia del Promedio Móvil).....................................................................130
14.3. OBV (Balance de Volúmenes)...................................................................................................................131
14.4. RSI (Índice Relativo de Fuerza)...............................................................................................................132
VIII
Description:¿Qué es 'Extreme Programming'? La programación extrema o 'Extreme Programming'(de ahora en adelante XP) es un enfoque de la ingeniería de software formulado por Kent Beck, autor del primer libro sobre la materia: 'Extreme Programming Explained: Embrace Change'. Es el más destacado de