SIAPAF

Luis Enrique Sánchez Crespo

Luis Enrique Sánchez Crespo

 


Índice

Plateamiento del problema y objetivos

Descripción del entorno de las herramientas

SIAPAF (Sistemas de Inteligencia Artificial para Aprendizaje Financiero).

Resultados experimentales.

Conclusiones

Manual de usuario

Información útil

Bibliografía sobre mercados financieros

 

Volver a página Investigación

 


Proyecto Informático

 

SIAPAF

 

Sistemas de Inteligencia Artificial para Aprendizaje Financiero

 

 

Realizado por:

Luis Enrique Sánchez Crespo

 

 

Dirigido por:

Armando Blanco Morón

Ignacio Requena Ramos

 

Calificado con Matricula de Honor

 

Escuela Técnica Superior de Ingeniería Informática.

Departamento de Ciencias de la Computación e Inteligencia Artificial.

Universidad de Granada

Granada, 1998

 

Ó Todos los derechos reservados

 

ÍNDICE

 

Planteamiento del problema y objetivos.

 

1.- Descripción del entorno de las herramientas.

1.1.- El uso del conocimiento y su importancia en la sociedad actual.

                        1.1.1.- Problemas en el uso de la información.

1.1.2.- Características que definen los sistemas de información actuales.

1.1.3.- La calidad en los sistemas de toma de decisiones y en el tratamiento de la información.

                        1.1.4.- Redes de decisiones.

                        1.1.5.- La calidad en el proceso de utilización del mercado.

                        1.1.6.- Obtención de la información de forma precisa.

                        1.1.7.- Tratamiento de la información como herramienta de competitividad.

                        1.1.8.- El telar del conocimiento.

                        1.1.9.- Mecanismo de investigación del mercado.

                        1.1.10.- Tecnología del uso de la investigación.

                        1.1.11.- Datos, información e inteligencia.

                        1.1.12.- ¿Cómo se sabe si se ha hecho la preg unta correcta?

                        1.1.13.- Los datos (relevancia y fiabilidad) y la sinergia.

                        1.1.14.- Desarrollo de análisis e interpretación de los datos.

                        1.1.15.- Conocimiento y sabiduría.

                        1.1.16.- El centro de preguntas.

                        1.1.17.- El aprendizaje.

                        1.1.18.- Los sistemas expertos.

            1.2.- Mecanismos de adquisición del conocimiento.

1.2.1.- Introducción a la adquisición del conocimiento por medio de expertos.

1.2.2.- Posibles formas de obtener el conocimiento.

1.3.- Introducción a las redes neuronales.

1.3.1.- Concepto de Neurona, Neurona Artificial, Red Neuronal, Entrenamiento.

1.3.2.- Pasos a seguir en el diseño de una Red Neuronal.

1.3.3.- Tipos de Redes Neuronales.

1.3.4.- El perceptrón multicapa.

1.4.- Aplicaciones de las redes Neuronales Artificiales.

1.4.1.- Introducción.

1.4.2.- Áreas de Aplicación de los Sistemas.

1.4.3.- Utilización de modelos Neuronales en áreas de Información Financiera.

1.4.4.- Ejemplos de aplicaciones de aplicaciones en casos reales.

1.4.5.- Resumen general y Conclusiones.

1.5.- Algoritmo de entrenamiento de la red: Backpropagation.

1.5.1.- Introducción.

1.5.2.- Algoritmo de aprendizaje.

 

2.- SIAPAF (Sistemas de Inteligencia Artificial para Aprendizaje Financiero).

2.1.- Especificaciones de la base de datos.

2.1.1.- Diseño del esquema Entidad-Interrelación.

2.1.2.- Modelo de datos relacional.

2.1.3.- Desarrollo de los campos de las tablas.

2.1.4.- Explicación detallada las tablas.

2.1.4.1.- Valores del mercado continúo.

2.1.4.2.- Operaciones del mercado continúo.

2.1.4.3.- Indices sectoriales.

2.1.4.4.- Indices generales.

2.1.4.5.- Indices macroeconomicos.

2.2.- Especificaciones de la red neuronal.

2.2.1.- Estructuras.

2.2.2.- Procesos mínimos.

2.3.- Especificaciones del Interface.

2.3.1.- Estructuras.

2.3.2.- Procesos mínimos.

 

3.- Resultados experimentales sobre algunos ejemplos.

 

4.- Conclusiones.

4.1.- Conclusiones.

4.2.- Futuras líneas de continuación.

4.2.1.- Mejoras en la base de datos.

4.2.2.- Mejoras en la red neuronal.

4.2.3.- Otras herramientas.

 

I.- Manual de usuario.

I.1.- Formulario principal.

I.2.- Acceso a la base de datos.

I.2.1.- Acceso a la base de datos en la zona de valores.

I.2.1.1.- Cotizaciones.

I.2.1.1.1.- Inserción.

I.2.1.2.- Operaciones.

I.2.1.3.- Derechos.

I.2.1.4.- Fechas.

I.2.2.- Acceso a la base de datos en la zona de índices.

I.2.2.1.- Acceso a los índices generales.

I.2.2.2.- Acceso a los índices sectoriales.

I.2.2.3.- Acceso a los índices macroeconomicos.

I.2.2.3.1.- Cotizaciones.

I.2.2.3.1.1.- Inserción.

I.3.- Uso de una red neuronal Backpropagatión.

I.3.1.- Configuración de la red neuronal Backpropagatión.

I.3.2.- Entrenamiento de la red neuronal Backpropagatión.

I.3.3.- Predicción de la red neuronal Backpropagatión.

I.3.4.- Mejor opción de un conjunto de valores o índices.

 

II.- Información útil.

II.1.- Direcciones de información bursátil.

II.2.- Direcciones Web sobre mercados financieros y redes neuronales.

II.2.1.- Direcciones Web sobre mercados financieros.

II.2.1.1.- Direcciones de Internet.

II.2.1.2.- Cotizaciones, Gráficos y Análisis.

II.2.1.3.- Las centrales de bolsa de los principales países.

II.2.1.4.- Los bancos y cajas más importantes de los principales países.

II.2.1.5.- Los periódicos más importantes de los principales países.

II.2.1.6.- Direcciones con gran número de datos.

II.2.1.7.- Direcciones con gran número de datos.

II.2.2.- Direcciones de páginas Web sobre redes neuronales.

II.2.2.1.- Información general.

II.2.2.2.- Programas de ordenador.

 

Bibliografía sobre mercados financieros y redes neuronales.

Planteamiento del problema y objetivos:

 

            Actualmente, toda la teoría de mercados financieros se encuentra basada en el estudio de la evolución de los índices y valores disponibles en estos mercados. Los índices son formulas matemáticas que han sido desarrolladas de forma minuciosa para cumplir un objetivo especificado (obtención de un valor indicativo del objetivo perseguido), y que en la mayor parte de los casos son obtenidos a partir de los valores de las empresas cotizadas en dichos mercados.

 

            El mercado de corros, que es el que se usaba inicialmente y que hoy tiende a desaparecer, era un mercado poco dinámico y en el que los analistas disponían de tiempo para realizar un estudio de la situación y en base a ello tomar decisiones.

 

            Con la aparición del mercado continuo que usaba un tratamiento informatizado de la situación, el volumen de datos manejados por sesión se multiplico por mil, con lo que los analistas ya no disponían del tiempo necesario para realizar los cálculos, y la capacidad de la mente humana quedo limitada en la toma de decisiones ante la incapacidad de poder analizar los datos de una forma que permitiera la correcta toma de decisiones.

 

            En un contexto tan caótico, en el que los expertos se ven incapacitados para usar los conocimientos que adquieren de forma correcta, ya que una vez analizados los datos estos se encuentran desfasados con respecto a la nueva situación, aparecen unas nuevas herramientas desarrolladas a partir de las ciencias de la computación y que dan una solución a esta situación.

 

 La idea básica de este nuevo conjunto de herramientas consiste en crear sistemas que sean capaces, por una parte de mantener toda la información necesaria para la correcta toma de decisiones y por otra parte aprender de los expertos la forma en que estos tomaban las decisiones, de esta forma y dado que la potencia de calculo de las computadoras actualmente es mucho mayor que el de las personas, las maquinas se encontrarán en una posición privilegiada con respecto a los expertos para la toma de decisiones.

 

Es decir, los problemas que han aparecido son debidos a la cantidad de datos que permiten manejar las computadoras, los cuales tienen que ser interpretados por expertos humanos y aplicados de nuevo sobre computadora, a lo largo de este proceso máquina - humano - máquina, se produce un cuello de botella debido a la limitada capacidad de calculo de la mente humana, luego la solución pasa por eliminar este cuello de botella y sustituirlo por un elemento que tenga la misma capacidad de calculo que los extremos del proceso.

 

El estudio de cual podría ser este elemento, nos lleva a la solución más sencilla, el elemento conocido con mayor capacidad de calculo son las computadoras, luego esta deberá ser la herramienta que sustituya a los expertos, pero está sustitución debe ir acompañada de otro tipo de herramientas, las necesarias para que las computadoras puedan  tomar las mismas decisiones que tomaría un experto si tuviera su capacidad de calculo, es decir, necesitan el conocimiento.

 

Después de este análisis vemos como la problemática actual en los mercados financieros queda reducida a un sencillo problema, debemos enseñar a las computadoras a adquirir conocimiento y a usarlo de forma correcta, y estos son precisamente los objetivos en los que se basa este proyecto.

 

Para poder llevar a cabo los objetivos, se necesita un sistema que permita tener los datos necesarios para que el sistema pueda aprender como un niño hasta obtener el conocimiento de un  experto, y por tanto la primera fase del proyecto implicaba el diseño y construcción de una base de datos.

 

Una vez que el sistema tiene los datos necesarios para aprender, nos falta desarrollar una herramienta que le permita aprender a predecir la evolución de una determinada variable a partir de los datos que tenemos en la base de datos.

 

La elección de esta herramienta es un proceso difícil, ya que no existen herramientas especificas para el problema planteado. La solución aparece de la mano de las ciencias de la computación, a través de las redes neuronales, que junto a los datos necesarios y la potencia de las computadoras se convierten en los elementos ideales para sustituir a los expertos, esto es posible gracias a la potencia de aprendizaje que tienen la redes neuronales, y que aplicando los parámetros adecuados a los datos adecuados, no solo aprenderá a tomar las decisiones de un experto, sino también a mejorarlas.

 

            Luego, este proyecto pretende desarrollar un sistema que permita usar las nuevas tecnologías de la información para poder predecir la evolución de ciertas variables relacionadas con los mercados financieros y el desarrollo de nuevas técnicas de control en los sistemas financieros que permitan, un mayor control sobre el sistema económico actual.

 

            Dado que la magnitud del proyecto es demasiado ambiciosa para un proyecto final de carrera, se ha considerado la conveniencia de dividirlo en fases, de forma que puedan ser unidas después en un sólo módulo funcional, que permita realizar los objetivos fijados. Para ello a lo largo de las fases del proyecto se desarrollarán herramientas que puedan funcionar de manera independiente, y que además permitan la mayor versatilidad y manejabilidad posible, de forma que puedan funcionar como módulos independientes con la posibilidad de poder conectarse entre sí, para formar un modelo de predicción complejo a partir de objetos mucho más sencillos.

 

            Los procedimientos y funciones que compongan el núcleo de las herramientas se construirán en un lenguaje con la máxima portabilidad (C++), de forma que el esfuerzo para llevarlo a otras estructuras (portabilidad) sea el mínimo posible, además, se tratará de desarrollar y explicar paso a paso tanto las operaciones que se implementen, como el funcionamiento de los algoritmos principales, para que, en caso de que no se pueda usar el código desarrollado en el sistema deseado, sea lo más fácil posible su implementación en el sistema al que se quiera portar.

 

            Para desarrollar el interface para las herramientas usaremos entornos visuales, ya que nos permiten construir objetos independientes en los que podemos definir los métodos y eventos de una forma sencilla.

 

            La viabilidad del proyecto, se sustenta en el hecho de que los mercados financieros se asientan sobre modelos matemáticos computables y, por tanto, computable, y que aunque algunos "gurús" hayan dado un significado esotérico a la predicción de mercados financieros, esta forma de ver los mercados no es la correcta. Por lo tanto, el sistema intenta aunar los métodos clásicos de funcionamiento de los mercados financieros con las herramientas más modernas de la inteligencia artificial, para poder llegar a desarrollar nuevos mecanismos o herramientas de control financiero.

 

            Por todo lo expuesto anteriormente, es fácil deducir que en el proyecto se han previsto los siguientes objetivos:

 

            1ª) fase: Desarrollo de una base de datos, que contenga las variables más importantes para la predicción de índices y valores.

 

            2ª) fase: Desarrollo de una red neuronal de tipo Backpropagation que usando la base de datos desarrollada en el punto anterior sea capaz de predecir con una desviación aceptable la evolución de una serie de valores o índices.

 

 

 

 


Descripción del entorno de las herramientas.

 

1.1- El uso del conocimiento y su importancia en la sociedad actual.

 

            Este punto pretende dar una sencilla visión de la importancia que esta tomando el uso y control de la información en los sistemas actuales, así como la manera de entender donde radica su verdadero poder y la forma de aprovechar la información disponible para sacar el máximo rendimiento. Este punto servirá también para justificar por qué se ha decidido empezar el proyecto con un mecanismo de tratamiento de la información e inferencia de nuevo conocimiento.

 

1.1.1.- Problemas en el uso de la información.

 

            Frecuentemente se usa la expresión ‘conocimiento es poder’, y los mercados financieros es uno de los campos en los que esta premisa toma mayor relevancia; lo que quiere decir básicamente esta frase, es que el conocimiento es un  recurso que nos permite tener un mayor control (o poder) sobre los sucesos que van a ocurrir.

 

            Resulta obvio que, el uso, no uso, mal uso y abuso de la información en la sociedad actual, marca lo que, probablemente, sea el proceso social y psicológico más importante de la sociedad moderna. Se ha llegado incluso a decir que se está viviendo una segunda revolución industrial, en la que el motor es la información y el éxito vendrá determinado por la habilidad en el manejo de esa fuerza y, por lo tanto, lo necesario hoy en día es la habilidad y destreza para procesar y emitir juicios en función de la información.

 

            El problema más importante en la sociedad actual radica en el hecho de que la toma de decisiones exige, cada vez, mayor rapidez y afecta a más gente, dinero, tierras y recursos que nunca. El primer efecto directo de esta aceleración en el tiempo es que queda reducido el tiempo disponible para analizar con precisión la información disponible. Esta aceleración produce, como consecuencia directa, que aquellos sistemas que no están preparados para soportar los nuevos requerimientos en el uso de la información, puedan llegar a usar información obsoleta e incorrecta.

 

            La conclusión clara que se puede sacar de este hecho, es que, en el mundo actual, todas las decisiones han de tomarse en el momento oportuno, con confianza y basándose en información precisa y ordenada. Pero, ¿cómo podemos conseguir estos objetivos? En los últimos años se ha producido una revolución en torno al tratamiento de la información para intentar obtener, en mayor o menor medida, los objetivos anteriores; esta revolución ha posible gracias al avance de las ciencias de la computación. (cuya principal misión es el tratamiento de la información a un nivel antes impensable).

 

            En los últimos años, la cada vez más rápida evolución en los cambios de la economía mundial, ha hecho que aquellas compañías que poseían el mejor tratamiento de la información hayan podido reaccionar a tiempo contra cambios bruscos, mientras que el resto han sucumbido (ver ‘La Voz del Mercado’, Introducción).

 

            En todo esto, no hay que olvidar una serie de importantes premisas:

 

            1.- ‘El hecho de tener información disponible no es una garantía de que se vaya a emplear para tomar buenas decisiones’. Es en este punto donde cobran mayor importancia las actuales herramientas informáticas, ya que, al haber millones de datos disponibles y disminuir el tiempo de forma inversamente proporcional al número de datos, nos encontramos ante el problema de encontrar la manera de analizarlos en la profundidad necesaria. Y es justo aquí donde los algoritmos de tratamiento de la información toman una relevancia sin igual y están claramente llamados a ser el arma más poderosa de la sociedad actual, de manera que, aquel que posea algoritmos capaces de tratar la información de forma más precisa y rápida, podrá prepararse mejor para los cambios que se aproximan.

 

            2.- ‘La información tiene una importancia vital en su empleo a la hora de la toma y reforzamiento de decisiones’.

 

            3.- ‘La ventaja competitiva no radica en quién posee la información, sino en aquellos que saben como emplearla’. Hoy en día, con herramientas como las autopistas de la información, millones de datos están al alcance de todas las personas, pero sólo unas pocas sacan verdadera rentabilidad  de ellos.

 

1.1.2.- Características que definen los sistemas de información actuales.

 

            Actualmente, hay una serie de características que definen el tratamiento de información en los mercados:

 

            1.- Las estrategias y acciones que tenían validez en el pasado, dejan de ser útiles al difuminarse las fronteras de los mercados nacionales, y tender éstos a una economía cada vez más globalizada.

 

            2.- Muchas veces se dispone de información que no es útil para el problema que se quiere afrontar y lo único que se consigue es perder el tiempo estudiando caminos que no llevan a la solución. La base principal de este problema radica en el hecho de que la información disponible está mal organizada.

 

            3.- El análisis de datos es una tarea meticulosa que, dado el volumen de datos que requieren los problemas actuales, ya no es posible afrontar de la manera tradicional y, por tanto, se deben buscar nuevas alternativas para el tratamiento de la información (mediante las herramientas proporcionadas por la inteligencia artificial).

 

            4.- El efecto dominó: es un efecto muy importante y que casi nunca se tiene en cuenta. Se puede definir del siguiente modo: ‘sistema defensivo de una empresa para aparentar ser más competitiva que otra, falsificando sus datos; de esta manera, si otra empresa contraataca de la misma forma, lo que se consigue es producir información errónea en cascada’. Tan sólo aquellas personas que estén dentro de las compañías sabrán que los datos emitidos no se corresponden con la realidad.

 

            5.- Actualmente, el periodo de tiempo durante el cual una decisión se considera apropiada (correcta) es cada vez más corto. La principal consecuencia de esto, es que cada vez hay una mayor incertidumbre a la hora de tomar las decisiones importantes y es, precisamente esta incertidumbre, el principal problema de los sistemas actuales de información y uno de los campos donde más se está investigando para mejorar la calidad del proceso de decisión mediante una correcta utilización de la información disponible sobre el mercado.

 

            6.- En los sistemas actuales, se requiere menor cantidad de información pero de mayor valor, es decir, hacer una criba previa a la información para dejar sólo aquella que tenga el contenido más importante, o lo que es lo mismo, que la información:

 

            6.1.- esté claramente colocada en un contexto de decisión.

            6.2.- esté organizada de forma que facilite la toma de decisiones.

            6.3.- pueda integrarse fácilmente con otros conocimientos.

 

            - Por último, una de las características a la que se ha dado menos importancia, injustamente, en los sistemas actuales, es la dependencia existente entre los procesos de calidad en la toma de decisiones y los procesos de calidad en la información sobre el mercado.

 

1.1.3.- La calidad en los sistemas de toma de decisiones y en el tratamiento de la información.

 

            A lo largo del análisis de sistemas, no sólo informáticos, sino en todos los campos: económicos, tecnológicos, .... se ha comprobado que la calidad no es algo que se pueda obtener a posteriori, sino que es un proceso que debe estar presente durante todo el desarrollo del ciclo de vida del producto. En informática es uno de los campos donde se está realizando una investigación exhaustiva en este sentido, a cargo de la ingeniería del software, y cualquier proyecto que se desarrolle con un poco de perspectivas para el futuro deberá ir acompañado de los pasos adecuados para poder asegurar la suficiente calidad.

 

            Actualmente, en los mercados financieros se presenta un problema a la hora de la toma de decisiones con suficiente calidad: la mayoría de los expertos usan técnicas nada fiables para el tratamiento de la información y están basadas más en la intuición personal que en los datos de que se dispone realmente. Esto es culpa, en parte, por la gran cantidad de datos de los que actualmente se dispone y que es imposible llegar a tratar.

 

1.1.4.- Redes de decisiones.

 

            Uno de los campos en los que más importancia está tomando el conocimiento es en el desarrollo de redes de decisiones, como una forma de especificar la interacción entre la calidad de la decisión y la calidad de la información.

 

            Una red de decisión consiste en hallar la interacción existente entre las diferentes soluciones (decisiones) que suelen tomarse ante determinadas situaciones. Ejemplo: una decisión de cómo afecta una caída en el índice Nikei junto a la decisión de cómo afecta una bajada del paro en España, pueden ayudar a inducir una decisión sobre cómo se va a ver afectado el mercado de renta variable español.

 

            Normalmente, el proceso de toma de decisión en este tipo de redes es largo y costoso y, en lo referente a la junta de decisión que realizará la toma de las decisiones, se pueden diferenciar las siguientes fases:

            1.- Aprobar la concepción del problema al que se quiere aplicar la decisión.

            2- Seleccionar las diferentes alternativas para su análisis.

            3.- Identificar la mejor alternativa.

            4.- Tomar una decisión y mostrar la solución.

 

            Estos pasos se están intentando automatizar mediante algoritmos, ya que supondría un gran ahorro de tiempo, y de recursos, el hecho que fuese un computador el que seleccionase entre las diferentes alternativas de manera ponderada.

 

1.1.5.- La calidad en el proceso de utilización del mercado.

 

            La calidad, en el proceso de obtención y tratamiento de la información, consta, básicamente, de dos componentes:

 

            1.- Dinámica organizativa, psicológica y sociológica, que afecta al empleo de la información: éste es un campo totalmente abierto y en el que se ha investigado muy poco, fundamentalmente, por que se considera que razonar y traducir los datos en una información útil es un proceso inherentemente humano y, por tanto, no computable. El hecho es que las nuevas herramientas informáticas han demostrado que no sólo ésto no es cierto, sino que, además, la informática se presenta como la opción ideal para este tipo de tratamiento de la información.

 

            2.- Recopilación y tratamiento de datos de formas técnicamente apropiadas: este segundo punto está muy desarrollado en la actualidad y tiene muy poco campo de estudio.

 

            Existen cinco pasos fundamentales que se deben dar para llegar a utilizar la información del mercado de una manera adecuada:

 

            1.- Evaluar las necesidades reales de información del mercado.

            2.- Calibrar el mercado.

            3.- Almacenar, recuperar y mostrar datos.

            4.- Analizar y describir los datos del mercado.

            5.- Obtener la calidad del proceso de información del mercado.

 

1.1.6.- Obtención de la información de forma precisa.

 

            Uno de los mayores problemas que hay que afrontar a la hora de obtener la información es que el punto de vista de quien la desarrolla y el de quien la obtiene no es el mismo, lo que puede producir la existencia de una falta de entendimiento entre las dos partes implicadas en el proceso de obtención de la información. Por lo tanto, se debe intentar llegar a un equilibrio en el entendimiento en lo referente a los puntos de vista, lo cual pondrá al investigador en la mejor posición para hacer las preguntas adecuadas al experto, y el experto estará en mejor posición para facilitar las respuestas adecuadas. Se suele ofrecer un mensaje a cada una de las partes implicadas en el proceso:

 

          1.- Para los expertos, que suministran la información: ‘Quienes responden a los cuestionarios nos proporcionan nuestros medios. Pero los que emplean la información nos proporcionan nuestra razón de ser’.

 

            2.- Para los investigadores, que buscan un conocimiento que les ayude en la búsqueda de la toma de decisiones más adecuadas: ‘No se te exige que hagas todo el trabajo para adquirir el conocimiento; no obstante, no se puede adquirir conocimiento sin hacer parte del trabajo’.

 

1.1.7.- Tratamiento de la información como herramienta de competitividad.

 

            El tratamiento efectivo de la información requiere de dos competencias:

 

            1.- Curiosidad competente: se trata de una curiosidad hacia los acontecimientos del mercado que sean de importancia actual y futura junto a la habilidad para satisfacer esa curiosidad con información oportuna, relevante, precisa y económica.

 

            2.- Sabiduría competente: tiene que ver con la habilidad de traducir la información en acción efectiva, ya que la mala información no puede usarse sabiamente, ni podemos compensar un mal juicio con buena información.. La incapacidad de usar bien la información es el talón de Aquiles en la mayoría de los procesos de toma de decisiones.

 

            El problema principal se puede enunciar como ‘debemos pero no lo hacemos’, es decir, actualmente, y cada día más, se requiere un proceso más detallado de análisis de la información, pero encontrarse cada vez con más datos hace que la tendencia sea justamente la contraria, o sea, la toma de decisiones es cada vez más intuitiva.

 

            Básicamente puede centrarse la necesidad de mejorar el uso de la información en una serie de cambios cada vez más notables que se dan en la sociedad actual:

 

            1.- Los nuevos sistemas de comunicaciones hacen que los datos estén disponibles al mismo tiempo para un número creciente de personas, lo que les hace poseedores de los mismos conocimientos y, por tanto, les iguala competitivamente a ese nivel.

 

            2.- Cada vez hay un mayor número de personas interesadas que desarrollan nueva información.

 

            3.- El tiempo disponible para tomar una decisión se está reduciendo de manera exponencial.

 

            4.- El tiempo de validez de la información también se está reduciendo, al ser cada vez más frecuentes y rápidos los cambios en los mercados.

 

            5.- La difuminación de los mercados y la globalización de los mismos hace cada vez más necesario un tratamiento adecuado de la información.

 

            En contra de estas razones, aparecen algunas dificultades en el uso de la información:

 

            1.- Normalmente se tiene en cuenta información actual, sin fijarse en la información que puede llegar a ser relevante mañana (‘Hoy es el mañana de ayer’), es decir, no se da a los datos futuros la importancia que realmente tienen.

 

            2.- La tecnología de la información ha supuesto un doble camino: por una parte, ha permitido poder contar con mayor información en menos tiempo; pero, por otra parte, ha supuesto un descuido en lo referente a determinar qué información es útil y cuál es despreciable.

 

            3.- La relación entre el suministrador de la información y el usuario que debe tratarla es muy dificil.

 

            Los problemas aparecen debido a que las decisiones a las que hay que enfrentarse normalmente tienen unas características nada deseables, como son:

 

            1.- No son rutinarias.

            2.- Tienen un alto grado de incertidumbre y riesgo.

            3.- Implican a grupos sociales diferentes.

            4.- Pueden ser importantes a largo plazo.

            5.- Son urgentes.

            6.- Pueden suponer la utilización de muchos recursos y de muchos tipos.

            7.- Muchas veces no se benefician de la información existente.

 

            Los supuestos que serían deseables para realizar una investigación que lleve a la toma de decisiones correctas serían:

 

            1.- Disponer de tiempo suficiente.

            2.- Evaluación de la necesidad de la información antes de la toma de decisión.

            3.- Existencia de buen entendimiento entre las partes implicadas (experto y programador).

            4.- Que toda la información que se posea favorezca una decisión concreta.

            5.- Entender la incertidumbre y el riesgo real de la decisión elegida.

 

            El problema radica en el hecho de que conseguir los supuestos anteriores es casi imposible en la realidad, y habrá que conformarse con una aproximación a ellos.

 

            Como conclusión a este punto, puede decirse que el reto más importante al que hay que enfrentarse es mejorar el uso de la información de que se dispone sobre los mercados, minimizando la resistencia de aquellos factores que dificultan su uso.

 

1.1.8.- El telar del conocimiento.

 

            El ‘telar del conocimiento’ es un concepto que pretende expresar la necesidad de tejer toda la información disponible de una diversidad de fuentes de forma que el telar nos lleve a una decisión sabia. Puede verse, más claramente, como la necesidad de reunir diversas fuentes de información sobre el mercado y asegurarse de que estén disponibles y se empleen como una condición para tomar decisiones más efectivas basadas en el mercado.

 

            Una pregunta que ayudará en la búsqueda del conocimiento es la siguiente: ¿cómo se salva la separación entre los hechos y la sabiduría?. Para responderla se debe entender dónde encaja la información (hechos) en el proceso que lleva a la decisión (sabiduría).

 

            Haeckel propuso una jerarquía para llegar de los datos a la sabiduría. Parte de la observación codificada (datos), al centrarse en el marco de decisión adecuado (contexto), produce información, al aplicar el juicio (inferencia) genera inteligencia, ganar en certidumbre (mayor certeza y aceptabilidad) lleva al conocimiento y aplicando la síntesis obtiene sabiduría. Con este proceso, se puede disminuir el volumen de datos mientras se incrementa su valor. La siguiente gráfica muestra el proceso jerárquico:

 

 

APEND_A

           

            La conclusión a la que se llega con este sistema es obvia: el valor de la información se incrementa de manera directamente proporcional al aumento de la estructura, la organización y el contexto en el que se encuentre y, por tanto, debe buscarse un dispositivo de interfaz que vincule a los seres humanos con la complejidad de la información.

 

            Por último, no debe olvidarse que las preguntas son una herramienta que permite adquirir un conjunto de actitudes para mejorar el pensamiento y la acción., creando un mejor fundamento para la toma de decisiones.

 

1.1.9.- Mecanismo de investigación del mercado.

 

            Como primer paso, se necesita valorar la necesidad de la información, usando para ello los siguientes componentes:

 

            1.- Análisis de decisión: se intentará lograr calidad en la toma de decisiones mediante la combinación de aspectos del análisis de sistemas y la teoría de decisión estadística; para su consecución se pueden distinguir las siguientes fases:

 

            1.1.- Estructuración de la decisión.

            1.2.- Identificación de la incertidumbre.

            1.3.- Unión de la información y la estructura de decisión para obtener una conclusión.

 

            2.- Valoración de las necesidades de la información, que estará complementada por otras fuentes de información secundaria.

 

            3.- Revisión de la información existente acerca del mercado.

 

            4.- Valoración de los signos del mercado.

 

            5.- Calibración del mercado: una de las actividades de investigación, que puede considerarse como fundamental, es la medición de las fuerzas reales que mueven el mercado. Las tareas principales para la consecución de este punto son:

 

            5.1.- Diseño del instrumento de estudio.

            5.2.- Encuesta de muestreo probabilístico: en caso de aquellos datos que dependan de la sicología de masas, ....

            5.3.- Datos no probabilísticos.

 

            Los pasos para la obtención de una información fiable se pueden desglosar en el siguiente esquema:

 

            1.- Almacenar, recuperar y mostrar datos: se pueden diferenciar los siguientes apartados: almacenar los datos, recuperar los datos, depurar los datos, presentación preliminar, mostar la información, preparar la documentación, entregar la documentación.

 

            2.- Analizar y describir los datos: el análisis descriptivo se puede dividir, a su vez, en las siguientes tareas:

 

            2.1.- Estadística descriptiva: técnicas que describen los datos que se han recopilado, incluyendo la preparación gráfica de los datos.

            2.2.- Reducción de datos: se usará, para ello, la técnica de análisis de factores que investiga la relación existente entre un gran número de factores.

            2.3.- Inferencia: inferir conocimiento a partir de datos.

            2.4.- Predicción: generación de información futura a partir de datos recopilados en el pasado. La predicción ha sido uno de los campos más estudiados y, de este estudio, han surgido técnicas interesantes como son: Análisis de conjuntos, la regresión (permite establecer una relación entre variables históricas y predecir futuras variables a partir de la relación existente entre los datos históricos),  técnica "Box-Jenkins" (método de predicción basado en modelos de series temporales; depende, de que se puedan captar estadísticamente las características de tendencias, cíclicas y otras características temporales), técnica de igualación (emplea una serie de datos históricos para predecir el valor de un suceso futuro de la serie, el problema de la igualación es que debe existir una pauta en la serie que se repetirá en el futuro).

 

            Durante todo el proceso de obtención y tratamiento de la información, hay una pregunta que siempre se debe responder: ¿los datos que se están recopilando son los adecuados para el problema en cuestión, dicha recopilación se está realizando en la forma adecuada y la aplicación de dichos datos es de la forma correcta?. La respuesta a esta pregunta debe ser siempre 'si', ya que, en caso contrario, alguna fase del proceso es incorrecta.

 

            Como resumen a este apartado, se puede decir que se ha presentado el marco necesario para la valoración de las necesidades de información sobre el mercado, así como el calibrado, almacenamiento, recuperación y muestreo de datos, el análisis y descripción de datos del mercado, y el incremento de la calidad del proceso de información.

 

1.1.10.- Tecnología del uso de la investigación.

 

            La tecnología para adquirir información y almacenar los datos está bastante desarrollada pero, en cambio, los mecanismo para hacer un uso eficiente de estos datos está poco desarrollado. Hay muy pocos procedimientos para aumentar la relevancia de los datos y convertirlos en decisiones válidas. Este hecho tiene una importancia capital, ya que la ventaja competitiva en la sociedad actual residirá más en aquellos que sepan usar la información que en los que la tengan.

 

            Pero qué es lo que hace tan diferente el almacenamiento de la información de su uso. Mientras que la tecnología de adquisición y tratamiento de datos está orientada a varios tipos de personas, la tecnología para el uso de información tiene que ver con el juicio, dado que la conversión de datos en  conocimiento es un proceso (de conducta) humano y, por tanto, para poder simularlo algoritmicamente, hay que olvidarse de los mecanismos y herramientas de programación clásicos que son demasiado rígidos, y desarrollar unos nuevos mecanismos que permitan simular mejor el pensamiento humano, que es menos rígido y más intuitivo.

 

            Como conclusión, la conversión de datos en información significativa, creíble y aplicable, es un proceso humano y, por ello, cualquier esfuerzo para mejorar el uso de información debe centrarse en la conducta o comportamiento humano. Algo que nunca hay que olvidar es que la calidad del pensamiento sobre una decisión, después de haberse recopilado los datos, está claramente determinada por la calidad del pensamiento antes de la recopilación de los datos.

 

1.1.11.- Datos, información e inteligencia.

 

            Lo primero que hay que hacer es distinguir entre datos, información e inteligencia:

 

            1.- Los datos son representaciones de la realidad que pueden tener o no significado, precisión o credibilidad.

 

            2.- La información la componen aquellos datos cuyo significado es claro.

 

            3.- Se produce inteligencia cuando se obtiene un sistema capaz de obtener una información innovadora, que el sistema desconocía anteriormente. Más claramente, se puede decir que existe inteligencia cuando a partir de una información obtenemos más información, sin que está nueva información se obtenga mediante un proceso trivial.

 

            Los marcos de referencia tienen tres componentes básicos:

 

            1.- Supuestos generales, que serán el conjunto de premisas que se den por sentadas.

 

            2.- Reglas de decisión, que serán los sistemas de reglas que se desarrollen para responder a las diferentes preguntas.

 

            3.- Expectativas, que serán aquellos sucesos que se espera que se produzcan a partir de las reglas de decisión y las herramientas que se les apliquen.

 

            Gracias a los marcos de referencia se consigue:

 

            1.- Orientación, que conlleva el hecho de centrarse en los factores más importantes, así como desestimar otros factores menos fundamentales.

 

            2.- Conceptualización de problemas, que ayuda a determinar cómo se perciben los problemas e incluso si no se perciben.

 

            3.- Determinación de posibles soluciones, ya que mediante los marcos de referencia se pueden determinar aquellas soluciones que pueden ser más aceptables.

 

            Para un buen entendimiento entre el usuario que suministra la información y el programador que va ha hacer uso de ella se deben tener en cuenta los siguientes aspectos:

 

            1.- Necesidad de comprender la idea del experto por parte del programador.

 

            2.- Comprender los usos y limitaciones de los datos y del análisis de datos y ser capaces de explicárselo al experto para que lo pueda entender, así como intentar buscar enfoques alternativos.

 

            3.- Hacer participe al experto en cada fase de uso de los datos  y la forma en que se van a tratar.

 

            4.- Asegurar que el conocimiento será amplio y correcto mediante el uso de todos los recursos disponibles (expertos, bibliografía, otras fuentes).

 

            5.- Intentar aprender a comunicarse en el leguaje del experto y desarrollar un entendimiento de las restricciones con las que opera el experto en su vida cotidiana.

 

            6.- Aceptar el hecho de que conseguir y usar adecuadamente la información requiere trabajo duro, constante, y en cada fase del proyecto.

 

            7.- Deberá hacerse un esfuerzo para aprender acerca de las dificultades y los aspectos generales de la recopilación de la información útil y adecuada.

 

            8.- Animar a los expertos que suministran la información a formar parte del equipo de usuarios. Esto no quiere decir que se deleguen en ellos los aspectos relacionados con la recopilación y el análisis de información.

 

            9.- Se debe planificar con tiempo las necesidades de información, ya que las peticiones de última hora producen que la información recopilada con carácter de urgencia sea imprecisa, inoportuna, irrelevante y difícil de utilizar de forma útil.

 

            Como conclusión, puede decirse que los marcos de referencia son lentes de prospección para describir, explicar, predecir y controlar eventos. Del mismo modo, contienen las pruebas de verdad que se usará para la evaluación de la precisión de los datos, su interpretación y aplicación.

 

1.1.12.- ¿Cómo se sabe si se ha hecho la pregunta correcta?

 

            Las formas más comunes de averiguar si la pregunta que se ha realizado es la correcta para obtener la información deseada son:

 

            1.- Esperar hasta después de haber recopilado y analizado la información.

 

            2.- Esperar a los resultados después de haber aplicado el sistema de decisión.

 

            El problema, en cualquiera de los dos casos, es que si la información no se ha obtenido en el momento adecuado, puede no valer de nada cuando se obtenga de la manera correcta.

 

            Otro problema que surge es el hecho de que, cuando las preguntas sean triviales, las respuestas serán triviales, pero cuando las preguntas puedan llegar a suponer un desafío a las creencias básicas del experto, pueden llevar respuestas erróneas por la dificultad de las respuestas. El transfondo básico de esta cuestión, es que hay que ver cuándo y dónde se traza la línea entre los supuestos que deben ponerse en duda y aquellos que no, dado los cientos de supuestos que intervienen en las decisiones ordinarias. En la realidad supuestos considerados obvios no son interesantes, aquellos que contienen un grado de sorpresa son más interesantes y son susceptibles de merecer la atención y aquellos que parecen absurdos, no reciben ninguna atención. La mayoría de la gente sólo entra en la región interesante.

 

            Como conclusión a este apartado, puede decirse que el definir el problema de forma adecuada y expresarlo correctamente como un conjunto de preguntas son posiblemente las tareas más importantes del proceso de investigación para la obtención de información. Además, hay que tener en cuenta de manera especial que pueden existir supuestos que, si fueran erróneos, podrían tener graves consecuencias para el proceso de obtención del conocimiento. El no hacer preguntas importantes y desafiantes a los expertos puede proporcionar una falsa impresión de conocimiento.

 

1.1.13.- Los datos (relevancia y fiabilidad) y la sinergia.

 

            Los datos son representaciones potenciales (pueden o no ser exactos) de la realidad. Al poner los datos en el contexto de decisión se generará información y, al aplicar la inferencia (el juicio) a la información, se generará una información innovadora. Un dato puede ser tomado como una estadística individual (la ganancia o pérdida de cuota de mercado en un periodo de tiempo determinado) o bien puede consistir en un detallado perfil psicológico de un segmento de la población más representativa de ese valor.

 

            El coste es una de las variables más importantes a tener en cuenta a la hora de la recopilación de los datos, ya que no se debe pagar por los datos más dinero del que se piense ganar con los mismos. Para obtener el mayor beneficio de la información, es importante comparar el coste relativo de obtener varios tipos de datos, para tener el menor coste.

 

            Cualquier análisis adicional de la información recopilada proporcionará una información útil y supondrá una disminución de los costes, que será de alrededor del 20% cada cinco años.

 

            Uno de los enfoques que más se está estudiando en los últimos años es la “sinergia”. La sinergia en los programas de investigación de mercado ocurre cuando dos o más proyectos pueden ser combinados o coordinados de tal manera que la producción de inteligencia sobre el mercado es mayor que la suma de sus contribuciones como proyectos aislados. Los indicadores más relevantes de la sinergia son:

 

            1.- Los enfoques relevantes ganados por cada proyecto que no se habrían dado de no haber sido coordinados los n proyectos.

 

            2.- El coste será menor.

 

            3.- Se tendrá la capacidad de aumentar el tamaño de la muestra.

 

            4.- Las técnicas de criba para detectar variables poco importantes son más efectivas.

 

            5.- Suponen una forma de construcción piramidal muy apropiada, ya que se puede formar una red con operaciones sencillas que proporcionen cálculos parciales que se puedan interconectar.

 

            Pero surge un problema, ya que, para poder aplicar la sinergia, se deben aplicar dos principios:

 

            1.- El de consistencia: n proyectos podrán coordinarse si las preocupaciones básicas de cada uno de ellos son consistentes con la misma cuestión básica, es decir, el fin que persiguen es el mismo.

 

            2.- El de complementariedad: n proyectos podrán coordinarse cuando sus preguntas y métodos son compatibles, es decir, pueden ser usados de forma conjunta. Otro tipo de complementariedad crea sinergia al producir mayor perspicacia acerca de la evolución del mercado, ....

 

            Por lo tanto, se puede ver la sinergia como: Sinergia = Consistencia + Complementariedad.

 

            Se pueden hacer dos preguntas acerca de la relevancia de los datos:

 

            1.- ¿Qué datos son relevantes para una decisión específica? Para responder a esta pregunta habrá que centrarse en definir los tipos y fuentes de los datos requeridos que puedan ser relevantes y poder disponer de ellos.

 

            2.- ¿Cuál es la relevancia especial de un conjunto dado de datos? Para dar respuesta a esta pregunta habrá que ver si los datos que se han recopilado son relevantes para el problema en cuestión (según dice la primera pregunta). Los datos pueden no ser relevantes para el problema si no se ha hecho la pregunta adecuada, si no se ha realizado al experto adecuado, si el momento no era el correcto o si la respuesta ha sido tratada de forma incorrecta.

 

            También conviene tener en cuenta otra cuestión acerca de la fiabilidad de los datos que se han adquirido. Cada una de las actividades básicas en el proceso de uso del conocimiento (dudas, datos, análisis, ...) tiene un valor único de fiabilidad que hay que controlar, es decir, el valor de los datos está limitado por la confianza que en ellos tenga la persona que los va a utilizar.

 

            Las conclusiones que se pueden sacar de este apartado se resumen en:

 

            1.- Los datos son representaciones de la realidad y pueden ser obtenidos en diversidad de formas, desde descripciones altamente cuantitativas de acontecimientos a impresiones intuitivas basadas en experiencias pasadas.

 

            2.- El coste de la adquisición de los datos varía en función del tipo de los datos, el tiempo al que se refieran y la facilidad con que puedan ser usados.

 

            3.- Es importante (al igual que en cualquier otro proceso informático) que se sigan unos estándares en la recopilación, proceso y presentación de los datos, y que todos los involucrados en su tratamiento y utilización conozcan que se siguen esos estándares, de tal manera que permitan centrarse más en el significado y aplicaciones que se puedan dar a los datos y menos en las pruebas sobre la fiabilidad de éstos.

 

1.1.14.- Desarrollo de análisis e interpretación de los datos.

 

            El análisis es el proceso de utilización de los datos obtenidos para llegar a interpretar las ideas. Los análisis se basan en diferentes tipos de datos. Un análisis efectivo de los datos depende, en gran medida, de la capacidad para realizar una recopilación de datos eficiente.

 

            En la actualidad, hay cuatro tipos básicos de análisis:

 

            1.- Análisis alertas: advierten sobre eventos importantes que acaban de ocurrir o que se producirán en un tiempo cercano.

 

            2.- Análisis corrientes: proporcionan un tipo de información básica, como subidas diarias de valores, evolución de la bolsa, ....

 

            3.- Análisis básicos: proporcionan información detallada sobre una cuestión, de forma que facilite el proceso de toma de decisiones.

 

            4.- Análisis estimativo: tratamiento de la información sobre acontecimientos futuros, como predicción de mercados.

 

            El mismo tipo de datos se puede usar con varios tipo de análisis.

 

            Mediante el análisis de los prejuicios en el comportamiento se puede obtener una percepción sobre la orientación que el experto tiene en la forma de entender los datos que pone a disposición del programador. Estos prejuicios se pueden dividir en dos tipos:

 

            1.- Evitables: son aquellos que se pueden medir, reducir y eliminar de una forma sencilla.. Suelen ser explícitos.

 

            2.- Inevitables: son debidos a factores sociológicos y sicológicos. Actualmente no existe ningún método efectivo para controlarlos.

 

            Dado que existen prejuicios inevitables, será, por lo tanto, imposible obtener una realidad totalmente objetiva. El mecanismo de reducir los efectos de estos prejuicios es obtener los datos desde diferentes perspectivas.

 

            Existen unos tipos de prejuicios cuya relevancia al aplicar un procedimiento para el uso correcto del conocimiento, es vital, éstos son:

 

            1.- Prejuicios en la evaluación de la información: se tiene tendencia a dar mayor crédito y relevancia a la información que comparte las siguientes características:

 

            1.1.- Concreción: se da más énfasis a la información concreta que a aquella información más abstracta (aunque pueda ser más fiable).

            1.2.- Recuperabilidad: el recuerdo del dato está influenciado por el juicio (que está influenciado por factores externos que lo hacen subjetivo).

            1.3.- Prominencia: se sobrevalora el significado de datos que son prominentes.

 

            2.- Prejuicios confirmadores de hipótesis: hay una tendencia a realizar las preguntas de forma que las respuestas ofrezcan una evidencia confirmatoria de lo que se quiere oír, es decir, las preguntas van guiadas y no son realizadas de forma objetiva.

 

            3.- Prejuicios de observador y de participante: la forma de ver las cosas desde los ojos del experto o de las personas encargadas de tratar la información no es objetiva.

 

            4.- Insensibilidad a los principios estadísticos: se suele generalizar a partir de muestras muy inferiores en tamaño y precisión a las que realmente se necesitan, aún sabiendo que en un sentido técnico es incorrecto hacerlo.

 

            5.- Juicio ex post facto: cuando sucede un hecho y el resultado no coincide con las expectativas, se tiende a buscar la causa mediante una explicación sencilla, rechazando las explicaciones complejas aunque estén más fundamentadas. En los mercados de valores, éste es uno de los mayores problemas ya que este tipo de pensamiento es común en la interpretación de las experiencias personales. Aún siendo la intuición, la experiencia y la opinión experta fuentes de conocimiento válidas e importantes, son susceptibles de causar la generalización a partir de unos pocos datos, apuntar a la explicación menos complicada (por ser la más intuitiva) y no buscar las causas de los acontecimientos subyacentes, aunque éstas sean más poderosas, ya que requieren un análisis más costoso y detallado.

 

            6.- Preferencias de información: las circunstancias bajo las cuales se toma una decisión pueden influir en el uso de la información. Dependiendo del riesgo, se pueden presentar dos situaciones diferentes:

 

            6.1.- No existir riesgo asociado a la acción ni a la alternativa: se suele ignorar tanto la información que apoya la decisión como la negativa.

            6.2.- Todas las opciones implican graves riesgos y se tiene la impresión de que ninguna de las opciones pueden ser beneficiosa: en este caso, se suele aplazar la toma de decisiones.

            6.3.- Situación idónea: es la situación más sencilla, pero que nunca va a llegar a producirse. En esta situación, el tomador de decisiones tendrá tiempo y recursos para evaluar las diferentes opciones, así como para buscar información tanto confirmatoria como contraria, produciendo una selección de los datos más fiables.

 

            Cuando, debido a una de las causas anteriormente descritas (explicaciones o análisis incorrectos) se opte por descartar la decisión, se estará ante lo que se denomina “falacia”. Las falacias más comunes que se pueden presentar son:

 

            1.- Distracción: se hace ver de una manera hábil la realidad que le interesa al ponente y no la situación real (esto puede verse todos los días en los telediarios). Los tipos básicos de distracción son:

 

            1.1.- Falso dilema: se presentan tan solo dos alternativas (sí o no) cuando el número de alternativas reales es mayor.

            1.2.- Pendiente resbaladiza: si se sigue un camino,  éste producirá otros acontecimientos que llevarán a una situación indeseable. Ej: al vender el Santander la banca Morgan, el miedo a que el Santander supiese algo, hizo que se produjera una venta masiva e injustificada de acciones.

            1.3.- Hombre de paja: se puede hacer creer que una empresa está en mejor situación económica que otra haciendo que la situación del otro parezca más débil.

            1.4.- Razonamiento falso: se pueden reexponer las premisas que se conocen desde un punto de vista particular, de forma que se obtengan ciertos apoyos engañosos que ayuden a sustentar la decisión.

 

            2.- Apelaciones a la emoción: son siempre impropias, ya que impulsan a tomar decisiones incorrectas. Existen dos tipos de estas apelaciones:

 

            2.1.- Apelación a la fuerza y a la compasión.

            2.2.- Utilización del lenguaje sesgado como un mecanismo para enmascarar la falta de claridad y fiabilidad de los datos.

 

            Las conclusiones a este apartado se pueden resumir en:

 

            1.- El análisis a partir de los datos es una cuestión muy importante cuando la cuestión o decisión que se ha de tomar no es rutinaria y los datos que se tienen no son claros ni bien estructurados.

 

            2.- Es importante en todas las situaciones de decisión explorar y poner en duda el pensamiento existente y ser sensible a la presencia de prejuicios en el análisis de datos.

 

            3.- Los prejuicios son inevitables y no necesariamente malos, si se saben utilizar de la forma adecuada. El ser sensibles a la naturaleza y presencia de los prejuicios ayuda a guardarse de sus efectos indeseables.

 

1.1.15.- Conocimiento y sabiduría.

 

            Existen dos principios que sirven de guía a la generación y selección de alternativas en las redes de decisiones:

 

            1.- Principio de consistencia: cada componente del plan debe ser consistente con el objetivo que persigue el plan. El mayor obstáculo que aparece para la aplicación de este principio es la ausencia de un objetivo bien definido.

 

            2.- Principio de complementariedad: en una red de decisiones, éstas deben reforzarse unas a otras positivamente. Este principio reduce el conjunto de acciones a aquellas que son más reforzadoras que las demás.

 

            Normalmente, hay que preocuparse más de las decisiones que se van a obtener que de usar de forma correcta la información para alcanzar decisiones correctas.

 

1.1.16.- El centro de preguntas.

 

            Por centro de preguntas hay que entender los sistemas usados por los expertos para la obtención de los datos relevantes para el proyecto. Al usar el centro de preguntas habrá que tener en cuenta:

 

            1.- Transmitir a los expertos el concepto esencial del centro de preguntas.

            2.- Demostrar su verdadera importancia.

            3.- Reducir las barreras existentes entre los suministradores del conocimiento (expertos) y los usuarios del conocimiento (programadores).

 

            Como conclusión puede decirse que la idea del centro de preguntas se basa en la necesidad de aprender como un medio de mejorar el pensamiento y la acción.

 

1.1.17.- El aprendizaje.

 

            El uso de los procesos explicados en los apartados anteriores da lugar al aprendizaje. Durante la fase de aprendizaje, se deberá aprender:

 

            1.- Lo que se necesita saber.

            2.- Los hechos relevantes.

            3.- Lo que significan esos hechos.

            4.- Qué hacer a partir de ese significado.

            5.- Las consecuencias de las decisiones.

            6.- Por qué ocurrieron determinados resultados y no otros.

            7.- Si se necesita cambiar la forma de pensamiento básico que se está usando.

 

            Puede definirse el aprendizaje como la creación de un entendimiento útil, o perspicacia, mediante el procesado de experiencia. Con esto se incluye la adquisición de nuevos entendimientos y maneras de pensar basadas en la transformación de experiencia en algo significativo y útil.

 

            Habrá que tener en cuenta dos factores en el proceso de aprendizaje:

 

            1.- El proceso de la experiencia.

            2.- La creación de entendimiento.

 

            En la actualidad se puede dividir el aprendizaje en tres niveles básicos, que son:

 

            1.- Explicativo: se aprende a un nivel descriptivo sencillo. Ej: estudios que siguen los cambios del mercado a lo largo del tiempo. Ayuda a crear una conciencia de las características del entorno. El aprendizaje explicativo puede ir desde una sencilla descripción de acontecimientos a una explicación de qué los produce y cómo interactuan estas causas y contribuyen a otros sucesos.

 

            2.- Predicción: se aprende a reducir la incertidumbre en torno a acontecimientos futuros. Está claro que cuanto mejor se puedan describir y explicar los factores qué afectan a las percepciones, menor será la incertidumbre en torno a dichas predicciones.

 

            3.- Control: se refiere a los intentos de alterar las percepciones al manipular los factores que influyen sobre estas percepciones. No hay que olvidar, que el ser capaz de explicar un suceso no significa necesariamente que pueda explicarse, predecirse o controlarse. Resulta claro que, cuanto mejor descrito esté un acontecimiento, mejor podrá explicarse, con mayor precisión podrá predecirse, y más fácilmente podrá controlarse. Éste es el aprendizaje más deseable, pero el que menos se da.

 

1.1.18.- Los sistemas expertos.

 

            Mientras que la tecnología para manipular datos e información está disponible desde los primeros días de la computación, la capacidad de generar inteligencia mediante ordenadores es una innovación más reciente que se ha desarrollado por medio de los sistemas expertos. El objetivo principal de los sistemas expertos consiste en tomar la inteligencia acumulada por los expertos y encerrarlas en cápsulas que puedan utilizar los no expertos para elevar el nivel de inteligencia efectiva sobre un tema concreto, con el consecuente ahorro en tiempo, recursos ....

 

            En el siguiente cuadro puede verse la valoración actual del estatus de tecnología informática en relación con la jerarquía descrita por Haeckel:

 

Nivel

Elementos manipulados

Estatus

Datos

Números, palabras

Disponible

Información

Enunciados

Disponible

Inteligencia

Normas

Disponible

Conocimiento

Bases de conocimiento

A corto plazo

Sabiduría

Bases de conocimiento combinadas

A largo plazo

 

            De una forma sencilla, se pueden ver los sistemas expertos como sistemas formados por dos componentes principales:

 

            1.- Base de conocimiento o de reglas: conjunto de enunciados condicionales conocidos comúnmente como reglas. Estas reglas son enunciados de inteligencia. Ej: “si se produce una caída de más del 3% con respecto al suelo de un valor en la misma sesión entonces dar una orden de venta de ese valor”.

 

            2.- Motor de inferencia: es el mecanismo básico de manipulación de la base de conocimiento. Su forma de trabajar será tomar las entradas del usuario y, a partir de la base de conocimiento, inferir una conclusión. A partir de la conclusión, se le dará al usuario un curso de acción; en caso de no poder llegar a una conclusión, se le informará al usuario de que la información facilitada no es suficiente para llegar a una conclusión.

 

            Al conocimiento, actualmente, se le da la consideración de ser a corto plazo, ya que la investigación sobre los sistemas expertos todavía está en proceso de desarrollo y, para problemas complejos, los motores de inferencia actuales pueden no ser eficientes.

 

            En cambio, a la sabiduría le debemos dar la consideración de ser a largo plazo, ya que se basa en la combinación de las bases de conocimiento individuales, aunque el rápido desarrollo de herramientas como las redes neuronales, o los sistemas difusos, pueden solucionar este problema.

 

            El centro de preguntas se presenta como un telar de conocimiento multidimensional, pero para tener éxito debe incorporar tres dimensiones:

 

            1.- La lógica de la toma de decisiones:  la lógica ha sido uno de los puntos fuertes de la informática desde su creación. La mayor aplicación de la lógica en los últimos años en el mundo de la informática ha sido en el desarrollo de bases de datos jerárquica y relacional.

 

            2.- Energía/colaboración: son los sistemas usados para la diseminación de la información. Estos sistemas (Internet, correo electrónico) han sufrido un enorme avance, lo que les hace ser actualmente una de las fuentes más importantes de obtención de información.

 

            3.- Imaginación/creatividad: las tecnologías que actualmente se ocupan de esto son:

 

            3.1.- Interfaz gráfico de usuario: la tendencia actual es evitar los interfaces en línea de comandos y usar interfaces visuales de tal forma que se da prioridad a la intuición humana, y los usuarios pueden pasar más tiempo haciendo lo que quieren hacer en lugar de estar averiguando cómo se hace.

            3.2.- Multiprogramación: son interesantes para aquellos sistemas que deban de utilizar datos de diferentes tipos de forma simultánea. La principal ventaja de los sistemas de multiprogramación es que mejoran el rendimiento del sistema.

            3.3.- Vinculación de hipertextos: son las nuevas formas de estructurar los documentos, ayudas, ..., de forma que sea más fácil acceder a aquellos datos que están relacionados con otros mediante vínculos de hipertextos.

 

            En este apartado se han visto algunas de las técnicas y herramientas que más se están utilizando actualmente para la incorporación de los datos, la información, la inteligencia, conocimiento, sabiduría, toma de decisiones, ..., y cuyo principal objetivo es hacer más fácil el uso de grandes cantidades de información y la toma de decisiones a la que obliga. La premisa principal es que se desarrollen en beneficio de los usuarios y que nunca se olvide que la oferta (avances tecnológicos) debe ser igual a la demanda (aquella información que proporcionarán esos avances) y, por tanto, no se pueden ignorar los avances y se deben desarrollar herramientas que permitan

 

1.2.- Mecanismos de adquisición del conocimiento.

 

            En este apartado veremos algunos de los mecanismos que existen para la obtención del conocimiento necesario para el correcto funcionamiento de los postulados del proyecto.

 

            Se debe recopilar la información del experto necesaria para conformar la base de conocimiento, así como las heurísticas para su tratamiento.

 

1.2.1.- Introducción a la adquisición del conocimiento por medio de expertos.

 

            Pretendemos encontrar reglas heurísticas, es decir, obtenidas de la experiencia, que nos den soluciones buenas a problemas complejos, aunque no podemos garantizar que nos den las soluciones óptimas.

 

            Para encontrar estas reglas heurísticas dependemos del conocimiento que hayan obtenido los expertos sobre una materia a lo largo de sus años de experiencia.

 

            Las ventajas de un sistema en que se almacena el conocimiento son múltiples, a continuación se enumeran las más importantes:

 

            1.- La preservación de ese conocimiento, ya que su adquisición es un proceso caro y de larga duración (una persona puede tardar más de 10 años en ser un experto en una materia).

 

            2.- Por razones de eficiencia, ya que si conseguimos que un ordenador almacene todo el conocimiento del experto, su tratamiento computacional será siempre más eficiente que el que le pueda dar el experto.

 

            3.- Por razones de fiabilidad: un ordenador está exento de fallos motivados por los sentimientos, impulsos ilógicos, cansancio físico, ....

 

            4.- Por razones de comunicación: los datos contenidos en un computador, suelen ser más fácilmente divulgables que aquellos que contienen las personas.

 

            5.- Razones de estructuración: la limitación de los lenguajes naturales con respectos a los lenguajes computacionales hace que los datos contenidos en un ordenados sean mucho más estructurados y ordenados que los que contiene una persona.

 

            6.- Disponibilidad: un sistema computacional está siempre disponible.

 

            7.- Por razones de dinero: un sistema no humano siempre será más barato que un experto en la materia.

 

            En contra de estas ventajas, están las siguientes cuestiones:

 

            1.- Hay materias difícilmente implementables mediante algoritmos, aún usando las técnicas más modernas. Solución: se ha de considerar que los últimos avances informáticos, tanto en hardware (aumentando la potencia computacional de los ordenadores) como en software (elaborando nuevas técnicas de programación que nos permitan atacar y resolver problemas complejos), han dejado suficientemente resuelto el problema, por lo menos en el caso de los mercados y finanzas.

 

            2.- Hay materias que dependen, en mayor o menor medida, de la intuición humana. Solución: en el caso de las finanzas, es totalmente desaconsejable, desde un punto de vista objetivo, el invertir basándose en la intuición más que en los hechos, ya que supone un aumento de riesgo innecesario. Dado que la intuición se debe tomar como la ausencia de conocimiento y, por tanto, de causa justificada para realizar la acción, no podemos crear un algoritmo que la trate, pero sí podemos crear un algoritmo paralelo, que nos permita aumentar o disminuir el riesgo en función de la exigencias del usuario.

 

            3.- Muchos campos no son científicamente exactos, o el número de variables de que dependen es computacionalmente intratable. Solución: el número de variables de que dependen las finanzas es enorme, lo cual es lógico, al ser éste el campo que rige una economía mundial, pero, aún así, es computacionalmente tratable y, dado que está basado en hechos puntuales, si se toman en cuenta todas las posible variables que le afecten, está claro que los resultados deberían ser exactos. Por desgracia, existe un problema adicional, que hasta hace poco tiempo no tendría solución, y que se expone a continuación:

 

            La variable más compleja de controlar en el mundo de las finanzas es aquella que no aparece creada por la mano del hombre, sino que es intrínseca al propio sistema, es decir, la masa. Las finanzas dependen en sí de todas las personas que engloban el sistema, ya que crean el sistema económico, por lo que pretender controlar los hechos o las acciones de cada persona por independiente es una idea descabellada, aparte de que sería imposible, ya que está el hecho de que el poder de una única persona (una persona normal, no un presidente, ...) en la economía global es insignificante, al contrario que ocurre con el poder que puede tener la masa; un claro ejemplo de este poder son los crash (psicosis irracional de una masa globalizada de gente). Por lo tanto, la solución sería desarrollar un modelo estadístico relacionado con la psicología de la masa, que intente detectar el nivel de riesgo de una situación en un momento determinado.

 

            4.- La comunicación con el experto puede suponer un esfuerzo insaciable en algunos casos. Solución: en el caso de las finanzas, hay muchos expertos en la materia, así como sociedades, que llevan años intentando crear un modelo de finanzas, lo cual facilita mucho esta labor, al haber un gran número de documentos sobre la materia.

 

1.2.2.- Posibles formas de obtener el conocimiento.

 

            Existen diversas formas de obtención del conocimiento para el desarrollo del sistema, que se van a exponer a continuación:

 

            1.- Manuales:

 

            1.1.- Realizando una entrevista al experto, que puede ser:

 

            1.1.1.- Estructurada: se desarrolla un guión sobre los temas a tratar y el modo en que se tratarán. El guión puede incluir preguntas claras y en forma de test, de forma que se obtenga la información de manera rápida. El problema puede surgir en el caso de que el tema sea complejo, ya que el desarrollo de los cuestionarios puede llevar mucho tiempo, por lo que sólo se desarrollarán los cuestionarios en aquellos casos en los que se requiera la intervención de varios expertos.

 

            1.1.2.- No estructurada: se realiza mediante diversas charlas con el experto/s en las que se intentará dar forma a las diversas cuestiones, obteniendo el mayor número de datos sobre ellas.

 

            1.2.- Mediante observación y documentación, que se podrá realizar por:

 

            1.2.1.- Observación directa: el ingeniero observa al experto en acción y va tomando notas de las partes que le interesan. El problema aparece cuando se intentan desarrollar materias de forma diferente a cómo las realizan los expertos, o se trata de desarrollar nuevos algoritmos sobre aspectos que no tienen su equivalente en la forma de trabajo clásica. Por ejemplo, la mayor parte de un sistema computacional de tratamiento de las finanzas no tiene un equivalente en la forma de trabajo actual, y tan solo pequeñas partes de él han sido implementadas mediante las técnicas modernas.

 

            1.2.2.- Observación retrospectiva: se utiliza toda la documentación de que se dispone sobre el tema de las finanzas: libros, revistas especializadas, programas desarrollados, etc.

 

            2.- Automáticas: harán la intervención del experto más cómoda y, en algunos casos, casi innecesaria.

 

 

1.3.- Introducción a las redes neuronales.

 

1.3.1.- Concepto de Neurona, Neurona Artificial, Red Neuronal, Entrenamiento.

 

            Neurona: El tamaño y la forma de las neuronas es variable, pero con las mismas subdivisiones que muestra la figura. El cuerpo de la neurona o Soma contiene el núcleo que se encarga de todas las actividades metabólicas de la neurona y recibe la información de otras neuronas vecinas a través de las conexiones sinápticas.

 

            Las dendritas, parten del soma y tienen ramificaciones. Se encargan de la recepción de señales de las otras células a través de conexiones llamadas sinápticas. Las dendritas son las conexiones de entrada de la neurona. Por su parte el axón es la salida de la neurona y se utiliza para enviar impulsos o señales a otras células nerviosas. Cuando el axón esta cerca de sus células destino se divide en muchas ramificaciones que forman sinapsis con el soma o axones de otras células. Esta unión puede ser inhibidora o excitadora según el transmisor que las libere.

 

            La transmisión de una señal de una célula a otra por medio de la sinapsis es un proceso químico. En el se liberan substancias transmisoras en el lado del emisor de la unión. El efecto es elevar o disminuir el potencial eléctrico dentro del cuerpo de la célula receptora. Si su potencial alcanza el umbral se envía un pulso o potencial de acción por el axón. Se dice, entonces, que la célula se ha disparado. Este pulso alcanza otras neuronas a través de la distribuciones de los axones. Una neurona se puede comparar con una caja negra compuesta por varias entradas y una salida.

 

 

            Neurona Artificial: Es una agrupación de neuronas que realiza la suma ponderada de las diferentes señales que recibe de otras unidades iguales y produzce en la salida un uno o un cero según el resultado de la suma con relación al umbral o nivel de disparo. La función de transferencia para la activación o disparo de la neurona puede ser de umbral lógico o de limitación dura o de función tipo s. W representa el peso o ponderación de la conexión a través de una entrada.

 

            En la siguiente figura se presenta el esquema típico de la neurona artificial:

 

           

El cuerpo de la neurona será a menudo representada por la suma ponderada de las entradas, Zj , seguida por una función lineal o no lineal, Yj = F( Zj). La eficiencia sináptica es representada por los "pesos de interconexión", wij. La función F(Zj) es llamada "función de activación", que usa los valores de entrada para determinar la actividad de la neurona.

 

            La neurona artificial es un dispositivo que responde a señales eléctricas. La respuesta la produce el circuito activo o función de transferencia que forma parte del cuerpo de la neurona. Las dendritas llevan las señales eléctricas al cuerpo de la misma. Estas señales provienen de sensores o son salidas de neuronas vecinas. Las señales por las dendritas pueden ser positivos o negativos; los positivos contribuyen a la excitación del cuerpo y los negativos contribuyen a inhibir la respuesta de la neurona.

 

            Los pesos de interconexión, representan la fuerza de interconexión entre las neuronas, y pueden ser positivos (excitatorios) o negativos (inhibitorios); además pueden ser fijos o adaptables. Las redes con pesos adaptables usan leyes de aprendizaje para ajustar los valores de la fuerza de interconexión. Si la red neuronal usa pesos fijos las tareas a ser ejecutadas deben estar bien definidas a priori.

 

            Por ultimo quedan por definir las funciones de activación, que se pueden ver de forma general en la siguiente figura:

 

 

 

            Red Neuronal: El sistema de neuronas biológico esta compuesto por neuronas de entrada (sensores) conectados a una compleja red de neuronas calculadoras (neuronas ocultas), las cuales, a su vez, están conectadas a las neuronas de salidas que controlan. La figura 6 muestra un esquema conceptual. En el cerebro hay una gigantesca red de neuronas calculadoras u ocultas que realizan la computación necesaria. De esta manera similar, una red neuronal artificial debe ser compuesta por sensores del tipo mecánico o eléctrico.

 

            Nosotros definiremos y construiremos las redes de neuronas artificiales a partir de las redes de neuronas biológicas como una red de neuronas consiste en varios de estos elementos (neuronas) trabajando juntos en la forma mencionada en el punto anterior. Usualmente estos elementos se organizan en grupos conocidos con el nombre de capas. Una red típica consiste en una sucesión de capas conectadas entre ellas en forma total o aleatoria. Estas redes poseen dos capas que tienen contacto con el exterior, que son la capa de entrada y la de salida. Las capas que no se conectan con el  exterior reciben el nombre de capas ocultas. En el siguiente esquema se puede ver el esquema típico:

 

 

            Vamos a ver cuales son las principales funciones de cada una de estas capas:

 

                        1.- Unidades de entrada: al igual que el caso de la red de una sola capa, estas unidades son las que reciben el patrón de entrada directamente.

 

                        2.- Unidades ocultas o escondidas: estas no reciben entradas directamente y no poseen realimentación directa. Ellas permiten tener una representación interna del patrón en cuestión.

 

                        3.- Unidades de salida: estas son las que entregan el resultado de la red.

 

            Operación: Las redes neuronales operan en dos fases: aprendizaje  y  evocación o recuerdo.

 

            El aprendizaje es el proceso en el cual se adaptan o modifican los pesos de las conexiones en respuesta a un estímulo que ha sido presentado en sus entradas y opcionalmente a su salida. El estímulo presentado a la salida corresponde a la salida deseada para una determinada entrada; esta salida deseada debe ser entregada por un "instructor".

 

            Existen dos tipos de aprendizaje:

 

                   1.- A. Supervisado: Se selecciona un número suficientemente grande de vectores de entrada con sus correspondientes vectores de salida. Cada vector de entrada se aplica a la red calculándose la salida, la que posteriormente se compara con la salida deseada, determinando el error. Dicho error es realimentado a través de la red , modificando los pesos de acuerdo a un algoritmo que lo minimice. Los vectores del conjunto de entrenamiento se aplican secuencialmente, calculando los errores y modificando los pesos hasta que el error del conjunto total de entrenamiento converja a un nivel aceptable. Será el que nosotros utilizaremos en todas las redes que desarrollemos.

 

                        2.- A. no supervisado: El aprendizaje no supervisado ocurre cuando la red es provista sólo de los valores de entrada, y la red ajusta la fuerza de interconexión basada solamente en  los valores de la entrada y la salida de la red en progresión. En otras palabras, el proceso de entrenamiento extrae las propiedades estadísticas del conjunto de entrenamiento y agrupa vectores familiares en clases. Puesto que no es posible determinar el patrón de salida específico generado por una clase de vectores en forma previa al entrenamiento, se requiere transformar la salida generada por la red  a una forma que sea comprensible.

 

            La evocación o recuerdo se refiere a cómo la red procesa los estímulos presentados  en sus entradas y genera una respuesta en su salida. A menudo la evocación o recuerdo es una parte del aprendizaje; esto sucede cuando la salida deseada debe ser comparada con la salida actual de la red para originar la señal de error.

 

            Entrenamiento:  Cuando el sistema humano de neuronas, captan un objeto, algunos de los sensores se activan y envían señales a las neuronas ocultas. Las neuronas que se disparan con la señal de entrada aumentan el grado de conexión de ellas. Si el mismo objeto se presenta una y otra vez, la interconexión de neuronas se refuerza y, por lo tanto, el conocimiento del objeto.

 

            Si se le presenta a la red anterior el objeto modificado la unión de las neuronas para el conocimiento de tal objeto, es débil. Las neuronas deben entrenarse para reconocer el objeto modificado en esta nueva presentación. Después de algunas sesiones de entrenamiento, el sistema neuronal es capaz de reconocer el objeto en todas sus formas. Si el objeto cambia nuevamente, la red de neuronas y el conocimiento se actualizan.

 

            Este entrenamiento, repetido para todos los valores de entrada y salida que se quiera, origina una

 representación interna del objeto en la red, que considera todas las irregularidades y generalidades del mismo. Una vez establecidos los pesos definitivos de interconexión, la neurona adquiere su forma tradicional.

 

1.3.2.- Pasos a seguir en el diseño de una Red Neuronal.

 

            1.- Conceptualización del modelo: formular la idea para el modelo, se deben conceptualizar las entradas y salidas que se van a utilizar. Decidiendo así que es lo que se va a predecir o determinar con el modelo.  Esta información es para estar  identificado con el  modelo  ya  que  se  puede  tratar de una sola salida  o de un conjunto de datos ( salidas múltiples ), después debemos decidir cuales son los factores que influyen en las salidas.

 

¿ Que información deberá usar la red neuronal para entrenar un problema dado y predecir una respuesta. ?

 

            Las entradas pueden ser muchas partes separadas de información o un solo conjunto de información que puede ser suministrada a través de varios nodos de entrada.

 

            2.- Obtención de los datos: después  de  conceptualizar el modelo, los datos de entrada deberán ser recopilados, siendo esta la tarea mas tediosa en el desarrollo del  modelo. Los recursos comunes obtención de datos son : Información de servicios en línea, CD Rom's, datos generados por computadoras, entradas manuales de datos.

 

            3.- Procesamiento y formateo de los datos: Una  vez  que la fuente de datos de entrenamiento  es identificada y los datos se encuentra en el estado adecuado, tendremos que determinar cuales son los que necesitan pre-procesamiento. 

 

            4.- Creación del modelo de entrenamiento: con  los  datos  de  entrenamiento  creados,  se  inicia  el proceso de creación del modelo o arquitectura de la red neuronal, que depende de los requerimientos y necesidades.  Lo normal es comenzar con una red sencilla que conste de una capa oculta de facil construcción y que facilite la validación de modelo de acuerdo al comportamiento durante su entrenamiento.

 

            5.- Entrenamiento de la red neuronal: mediante la variación de los parámetros de entrenamiento, se llega a ciertos valores que son los mas indicados para el buen funcionamiento  de  la  red,  tomando en cuenta también, los valores que nos muestre durante el entrenamiento, los cuales nos servirán como directivas para la mejora del algoritmo de entrenamiento.

 

            6.- Análisis de una red entrenada: cuando  el  entrenamiento a concluido (o esta cerca de concluir) se debe analizar el comportamiento con los valores de prueba.

 

1.3.3.- Tipos de Redes Neuronales.

 

            Existen numerosos tipos de redes neuronales, que pueden  ser clasificadas y diferenciadas de variadas formas. De éstas, las más clásicas se refieren a su estructura,  tipo de aprendizaje y operación, y a su aplicación.

 

            1.- Estructura: se concentra en las capas de la red, neuronas, conexiones y funciones de activación.

 

            2.- Tipo de aprendizaje y operación: algoritmo de aprendizaje + tipo de supervisión  + forma de operar de la red.

 

            3.- Aplicación: función que le asigne el diseñador a la red (predicción, clasificación, asociación, filtraje, conceptualización y optimización).

 

            En la siguiente tabla podemos ver los tipos de redes neuronales más importantes que existen en la actualidad:

 

No supervisadas-un sólo sentido

No supervisadas-realimentadas

a) Learning Matrix

b) Driver-Reinforcement Learning

c) Linear Associative Memory

d) Optimal Linear Associative Memory

e) Sparse Distributed Associative Memory

f) Fuzzy Associative Memory

g) Counterprogation a) Additive Grossberg

 

b) Shunting Grossberg

c) Binary Adaptive Resonance Theory

d) Analog Adaptive Resonance Theory

e) Discrete Hopfield

f) Continuous Hopfield

g) Discrete Bidirectional Associative Memory

h) Temporal Associative Memory

i) Adaptive Bidirectional Associative Memory

j) Kohonen Self-organizing Map

k) Competitive learning

 

Supervisadas-un sólo sentido

Supervisadas-realimentadas

a) Perceptron

b) Adaline, Madaline

c) Backpropagation

d) Cauchy Machine

e) Adaptive Heuristic Critic

f) Time Delay Neural Network

g) Associative Reward Penalty

h) Avalanche Matched Filter

i) Backpercolation

j) Artmap

k) Adaptive Logic Network

l) Cascade Correlation

m) Extended Kalman Filter

n) Learning Vector Quantization

o) Probabilistic Neural Network

p) General Regression Neural Network

 

a) Brain-State-in-a-Box

b) Fuzzy Congitive Map

c) Boltzmann Machine

d) Mean Field Annealing

e) Recurrent Cascade Correlation

f) Backpropagation through time

g) Real-time recurrent learning

h) Recurrent Extended Kalman Filter

 

            Del tipo de red que nosotros queremos construir podemos extrapolar algunas caracteristicas que nos permitan reducir el conjunto de redes neuronales a aplicar para solucionar el problema:

 

            1.- Conocemos el valor de salida de la red, luego la red será supervisada, lo que nos permite eliminar de la tabla anterior todos los tipos de redes no supervisadas. En el resto del proyecto nos centraremos tan solo en decidir que red de tipo supervisado es la que nos permite solucionar mejor el problema.

 

            2.- La aplicación para la que se usará la red, será la de predicción del valor de una variable.

            

            3.- Los sistemas reales que se han estudiado aplicados a mercados financieros usan todos el perceptron multicapa y tienden hacia redes de tipo backpropagation. Estos sistemas se resumiran más adelante.

            

            A continuación vamos a estudiar con detalle los dos tipos de red que a priori mejor pueden solucionar el problema, el perceptrón multicapa y la retroprogramación.

 

1.3.4.- El perceptrón multicapa.

 

            Descripción: Este sistema, es una combinación de diferentes unidades, de las cuales la primera capa (S) simplemente incluye los sensores del ambiente. Las señales producidas por los sensores son combinadas en la segunda capa de unidades llamadas "Elementos Asociativos" (A). Esta capa está conectada en forma total o aleatoria a la primera y opera decodificando los patrones de entrada de modo de detectar sus características específicas: una respuesta activa  se obtendrá si y sólo si se da la combinación binaria del valor de la señal de entrada.  La tercera capa,  de los elementos de respuesta (R), constituye el propio sistema de aprendizaje: las conexiones de A a R son realizadas a través de conexiones variables.

 

            La figura siguiente figura presenta el esquema básico de una red Perceptrón:

 

 

            Si se denota las señales producidas por los elementos A por Yi, los pesos de las respectivas conexiones de entrada adaptiva por Wi,k, y la salida de una unidad R por Ok, se asume que

 

                                                    0, si   Sk < .

                              Ok =                                                 

                                                    1, si   Sk .

 

donde    es el umbral de discriminación y

 

                                                  m

                                Sk =    Yi  Wi,k                                

                                                      i=1

     

            Algoritmo de aprendizaje: Asumiendo que un conjunto dado de señales de entrenamiento es {Yi,k}, por lo cual la señal Yi,k  producida por los elementos de A es en principio restringida a valores binarios, Yi,k  {0,1}. Si la respuesta binaria esperada es Tk , una de las reglas de entrenamiento sugeridas cambiará sólo aquellos pesos de entrada para los cuales  Yi,k = 1 (activa). Los valores Wi,k son incrementados o decrementados por un valor constante de acuerdo a la regla

                                   

                                    Wi,k+1 = Wi,k  + (Tk   -  O) Yi,k

 

Algunos autores sugieren utilizar simplemente =1 y el siguiente procedimiento:

 

                        1.- Aplicar un patrón de entrada y calcular la salida O.

                        2.- Si la salida es correcta volver a 1 sino

                                    2.1.- sino -> Si la salida es incorrecta, y es cero, sumar cada entrada a su peso correspondiente.

                                    2.2.- sino. Si la salida es incorrecta, y es uno, restar cada entrada a su peso correspondiente.

                        3.- Volver a 1.

       

            Entrenamiento: Las células asociativas (elementos A) son inicializadas con pesos fijos, cuyos valores pueden ser +1 ó -1. Su conexión con las células de respuesta (elementos R) es en forma aleatoria y dependerá del diseñador.

 

            El proceso de aprendizaje es supervisado en los elementos R y puede tomar diferentes formas. La red puede ser utilizada tanto para casos discretos binarios como para  continuos, pero en este último  no se entrará en detalle debido a que existe otra red similar que opera en mejor forma  y que se presentará a continuación.

                       

            El proceso de entrenamiento es prácticamente igual que en el caso del Adaline, pero utiliza el algoritmo de aprendizaje presentado recién.

 

 

1.4.- Aplicaciones de las redes Neuronales Artificiales.

 

            Este apartado nos permite ver como la aplicación de la redes neuronales en casos reales está dando grandes resultados, lo que sirve para apoyar el desarrollo del proyecto.

 

1.4.1.- Introducción.

 

            La computación programada, basada en reglas de decisión y algoritmos codificados en programas que se ejecutan sobre ordenadores digitales, ha dominado el procesamiento de la información en las últimas décadas. El avance de la Electrónica y las Ciencias de la Computación ha permitido que hoy en día podamos disponer sobre nuestra mesa de trabajo de ordenadores de gran potencia. Pese a ello, existen tareas que ni los grandes supercomputadores son capaces de resolver, o lo hacen de un modo poco eficiente, mientras que el cerebro lo viene haciendo desde hace millones de años con suma facilidad y eficiencia. El problema fundamental que hasta ahora se tenia era que había una falta de potencia en los computadores, este problema a quedado solventado en parte por el aumento de potencia actual, pero sigue habiendo problemas que no se resuelven, por lo que la conclusión a la que se llega es que lo que falta son algoritmos apropiados para resolver esos problemas y herramientas adecuadas.

 

            En este proceso del pensamiento científico surgen los sistemas neuronales artificiales, con la idea de tomar las características esenciales de la estructura neuronal del cerebro. Estos sistemas están compuestos por multitud de procesadores simples que operan sobre la base de reconocimiento de patrones, y que pueden adquirir, almacenar y utilizar conocimiento experimental, obtenido a partir de ejemplos. Esta forma de adquirir el conocimiento es una de sus características más destacables: no se programa de forma directa, como en los sistemas expertos, sino que se adquiere a partir de ejemplos, por ajuste de parámetros de las neuronas mediante un algoritmo de aprendizaje. En cuanto al modo interno de trabajo las redes neuronales recuerdan más a los modelos estadísticos multivariantes.

 

            Sistemas expertos y redes neuronales se asemejan en cuanto al objetivo de modelizar el conocimiento, pero son radicalmente opuestos en cuanto a cómo aspiran a conseguirlo. Como vemos, los sistemas expertos se acercarían más al razonamiento deductivo y las redes neuronales al inductivo. La gestión empresarial utiliza frecuentemente ambos esquemas de razonamiento, por lo que ambas técnicas tienen cabida. Además, ambos modelos son perfectamente compatibles, de forma que se pueden integrar en un único sistema, que se suele conocer como red experta. Probablemente este tipo de sistemas mixtos, si son capaces de recoger las ventajas de ambos modelos y tendrán un gran desarrollo en un futuro cercano. A lo largo de este proyecto se intentará desarrollar sistemas mixtos, mezclando los conceptos de bases de conocimiento, motor de inferencia, algoritmos de aprendizaje, redes neuronales.

 

Los elementos básicos de neurocomputación son las neuronas artificiales. Estas se agrupan en capas, constituyendo una red neuronal. Una o varias redes, más los interfaces con el entorno, conforman el sistema global. Un conjunto de capas constituyen una red neuronal, aunque también existen estructuras de una única capa. Una determinada red neuronal está confeccionada y entrenada para llevar a cabo una labor específica. Existen diferentes modelos de conexiones entre capas, en general se suelen distinguir dos básicos: las arquitecturas hacia adelante o feedforward y las realimentadas o feedback. En las arquitecturas feedforward, la información siempre se propaga hacia adelante. En las arquitecturas realimentadas, las señales pueden en ocasiones fluir hacia atrás a través de lazos de realimentación. Un sistema neuronal incluye una o varias redes neuronales, los interfaces de entrada y salida con el medio exterior, y puede incluir otros subsistemas no necesariamente de tipo neuronal. A modo de ejemplo, las redes expertas son simbiosis entre un sistema experto y una red neuronal, y se están mostrando como una de las soluciones más prometedora a la predicción de mercados financieros. Pueden ser:

 

                        1.- Interactivas: el experto interactuara con una computadora que le irá haciendo preguntas de respuestas sencillas (mediante opciones), ya que, al parecer, algunos tipos de personas se encuentran más a gusto interactuando con una máquina que charlando con una persona.

 

                        2.- Aprendizaje automático: no será necesaria la intervención del experto. Se intentará desarrollar una máquina que tenga un comportamiento adaptativo, es decir, sea capaz de adaptarse a diversas situaciones. La mayor parte del esfuerzo de la primera fase del proyecto irá guiada al desarrollo de un sistema de aprendizaje automático que, a partir de los datos obtenidos de los métodos anteriormente descritos, infiera nuevo conocimiento en forma de reglas que contengan toda la nueva información y puedan ser usadas con posterioridad en las siguientes fases.

 

                        3.- Aprendizaje por ejemplos: no será necesario la intervención del experto. El aprendizaje se realizará a través de una serie de datos almacenados en base de datos para que puedan ser enlazados con la herramientas. Tanto el tipo de datos elegidos como la forma de almacenamiento, determinaran el buen funcionamiento del sistema.

 

            No se puede escoger una única forma de obtener el conocimiento, ya que todas ellas serán necesarias para la consecución de los diferentes objetivos a lo largo de las fases. Además, las técnicas de obtención del conocimiento dependerán también del tipo de experto, y del tipo de conocimiento que se quiera extraer.

           

 

 

1.4.2.- Áreas de Aplicación de los Sistemas.

 

            Las redes neuronales tratan de resolver de forma eficiente problemas que pueden encuadrarse dentro de tres amplios grupos: optimización, reconocimiento y generalización. Estos tres tipos engloban un elevado número de situaciones, lo que hace que el campo de aplicación de las redes neuronales en la gestión empresarial sea muy amplio.

 

            En los problemas de optimización, se trata de determinar una solución que sea óptima. Generalmente se aplican redes neuronales realimentadas, como el modelo de Hopfield. En la gestión empresarial, son decisiones de optimización encontrar los niveles de tesorería, de existencias, de producción, construcción de carteras óptimas, etc. Los usaremos poco a lo largo de este proyecto.

 

             En los problemas de reconocimiento, se entrena una red neuronal con inputs como sonidos, números, letras y se procede a la fase de test presentando esos mismos patrones con ruido. Este es uno de los campos más fructíferos en el desarrollo de redes neuronales y casi todos los modelos: perceptrón, redes de Hopfield, mapas de Kohonen, etc, han sido aplicados con mayor o menor éxito.

 

            En los problemas de generalización, la red neuronal se entrena con unos inputs y el test se realiza con otros casos diferentes. Problemas típicos de generalización son los de clasificación y predicción. Será el mecanismo que usemos en el proyecto.

 

            Las redes neuronales son modelos matemáticos especializados que pueden aplicarse en dominios muy concretos. Las redes neuronales están mostrando su utilidad en muchos problemas reales. Los estudios empíricos muestran la eficiencia de las redes neuronales con datos basados en lógica difusa, patrones o rasgos ocultos para la mayoría de las técnicas incluida la capacidad humana, datos que exhiben no linealidad e información en la que se ha detectado caos.

 

Los llamados Executive Information Systems (EIS), o Sistemas Informativos para Ejecutivos dominan las decisiones menos estructuradas, con tareas como la planificación estratégica y de contabilidad directiva. Westland (1992) ha propuesto un modelo de red neuronal autoorganizada en estos sistemas informativos, que filtra la información relevante para cada ejecutivo ya que la sobrecarga informativa es uno de los principales problemas de estos sistemas al estar basados en correo electrónico. Finalmente, determinados modelos de redes neuronales podrían aplicarse en problemas de optimización.

 

            En este esquema descrito, hemos situado el análisis de la información financiera en las decisiones semiestructuradas, en las que no hay una teoría general que pueda ser aplicada paso a paso, pero tampoco el análisis contable encaja en las decisiones completamente intuitivas o no estructuradas. Aunque el análisis financiero no encaja perfectamente en las decisiones semiestructuras, si es el grupo con el que comparte más características.

 

            Los sistemas neuronales presentan ciertos inconvenientes. Uno importante es que habitualmente realizan un complejo procesamiento que supone millones de operaciones, por lo que no es posible seguir paso a paso el razonamiento que les ha llevado a extraer sus conclusiones. Sin embargo, en redes pequeñas, mediante simulación o por el estudio de los pesos sinápticos sí es posible saber, al menos, qué variables de las introducidas han sido relevantes para tomar la decisión. Falta todavía mucho por estudiar en el modo de operación de las redes neuronales. En muchas ocasiones si se pueden crear unos informes de salida, que digan que pesos suponen una carga para la red que no es justificable por su importancia, así como la parte más importante del procesamiento que se ha seguido, sobretodo a la hora de tomar decisiones importantes.

 

            Otro problema es que al ser una herramienta novedosa y en pleno desarrollo, no se trata de una disciplina con un cuerpo formal, coherente y establecido, por lo que el investigador se encuentra con muchos problemas a los que todavía no se ha encontrado solución. Debido a esto, cualquier desarrollo neuronal será en parte novedoso, por lo que se debe encontrar lo suficientemente comentado para que pueda ser analizado por otros diseñadores.

 

1.4.3.- Utilización de modelos Neuronales en áreas de Información Financiera.

 

            Los principales trabajos desarrollados con información financiera se agrupan en dos temas: análisis del fracaso empresarial y predicción en los mercados financieros. Ambos tipos de trabajos responden a dos de las principales tareas en las que se están aplicando las redes neuronales: clasificación y predicción, que como hemos visto anteriormente, son un caso particular de los problemas de generalización. En este proyecto nos centraremos en la predicción de mercados financieros, dejando a un lado el análisis del fracaso empresarial.

 

            En la mayoría de estos trabajos se obtienen resultados excelentes con las redes neuronales. Pero hay que ser prudentes. Muchos de los trabajos descritos no comparan las redes neuronales con modelos estadísticos o sistemas expertos. Cuando lo hacen, en ocasiones no hay muestra y test, y al utilizar perceptrón multicapa, dada la excelente capacidad para representar todo tipo de funciones de este modelo, se obtienen resultados extraordinarios, sin que haya garantías de que al realizar un test los resultados fueran igualmente buenos.

 

            Incluso cuando se posee muestra y test es posible que la selección del modelo estadístico no sea la más apropiada, ya que muchos modelos estadísticos parten de hipótesis y no son idóneos para todos los tipos de trabajo. No hay garantías de que se esté utilizando el mejor de los modelos estadísticos, como tampoco las hay de que se esté seleccionando la configuración de la red neuronal más apropiada en cuanto a número de neuronas en la capa oculta, funciones de transferencia, etc. Finalmente, tampoco hay garantías de que sólo se estén publicando los éxitos con redes neuronales y no los fracasos.

 

            Los libros "Neural Networks in Finance and Investing" de Trippi y Turban (1992) y "Neural Networks in the Capital Markets" de Refenes (1995) recogen una amplia selección de trabajos, algunos ya publicados con anterioridad en revistas o presentados en congresos y otros reimpresos.

 

            A continuación se muestran los trabajos que por su carácter innovador y por su calidad más han destacado:

 

1.- Estudios de Clasificación: en los problemas de clasificación se trata de asignar a cada caso su clase correspondiente, a partir de un conjunto de ejemplos: abarca problemas como el estudio del fracaso empresarial, la concesión de préstamos, la calificación de obligaciones, etc.

 

1.1.- El fracaso empresarial: los estudios de predicción de crisis empresariales son ya clásicos en la investigación empírica. En general se trata de seleccionar un conjunto de variables, generalmente ratios financieros y utilizar un modelo matemático que discrimine o detecte los rasgos que caracterizan a las empresas que tienen éxito de las que fracasan. Son muchos los modelos estadísticos propuestos y dadas las propiedades de los sistemas neuronales de actuar como clasificadores de información y reconocimiento de patrones, tempranamente se aplicaron a esta importante materia de investigación. No entraremos en más profundidad en este tema ya que no está relacionado con la fase del proyecto que se desarrolla actualmente.

 

1.2.- Evaluación del comportamiento de las acciones en el mercado de valores: en este tipo de estudios también se utilizan como variables los ratios financieros y se trata de evaluar a las empresas. Sin embargo la clasificación no es la anterior en empresas quebradas y solventes, sino que es el mercado de valores quien proporciona la variable independiente, teniendo en cuenta el comportamiento positivo o negativo de las rentabilidades obtenidas por las acciones. Un valor con muchas bajadas, no puede ser un buen valor.

 

            Yoon y Swales (1991) y Yoon, Swales y Margavio (1993) tratan de discriminar a las empresas en dos grupos, según sus acciones hayan tenido o no un buen comportamiento en los mercados financieros. Los datos incluyen información contable cuantitativa y cualitativa, pues examinan la carta que el presidente de la compañía envía a los accionistas. Comparan los resultados del análisis discriminante con los del perceptrón multicapa. El perceptrón sin capa oculta obtenía un 65% de acierto, resultado similar al del análisis discriminante. Al añadir una capa oculta, mejoran los resultados situándose al 76%. El añadir otra capa oculta no mejora significativamente la eficacia del modelo.

 

            Aaltonen y Ostermark (1993) comparan los tres modelos estadísticos más utilizados en la predicción del fracaso empresarial: análisis discriminante, lógit y particiones recursivas con el perceptrón multicapa. En este estudio la variable dependiente, es decir el calificar a la empresa positiva o negativamente, se deriva de los mercados financieros, según el valor estimado de la beta. La beta de un valor es una medida del riesgo sistemático, es decir atribuible al movimiento del mercado en su conjunto y se calcula mediante regresiones que relacionan los movimientos del título con los del índice general de precios del mercado. Las empresas son agrupadas a priori como de alto o bajo riesgo dependiendo de si el valor de su beta está por encima o por debajo de la media de la beta calculada para todas las empresas y todos los años. En los resultados se produce un empate, ya que todos los modelos fallan en el test en las mismas tres observaciones.

 

1.3.- Concesión de préstamos: metodológicamente son muy similares los trabajos de concesión de préstamos a los de predicción de la quiebra. El conceder o no un préstamo es también una decisión no estructurada y la diferencia radica en que la información disponible no se extrae de bases de datos comerciales o de los registros sino que es información que suministra el propio banco o entidad financiera que encarga el estudio. En este caso la información no se compone exclusivamente de ratios financieros, sino que también hay otro tipo de datos, como por ejemplo quién es el director de la compañía, si es un cliente nuevo, etc.

 

1.4.- Calificación de obligaciones: la calificación de obligaciones, bonos municipales, etc, es también un problema de clasificación. Las empresas e instituciones públicas emiten instrumentos financieros como bonos u obligaciones en busca de dinero para financiar sus inversiones. Pero, lógicamente, hay un riesgo de que las empresas no devuelvan este dinero y resulta interesante obtener ratings o calificaciones de estos bonos.

 

2.- Estudios de Predicción: la predicción ha sido una de las aplicaciones que más pronto despertaron el interés de los estudiosos de las redes neuronales. En este tema los resultados no son concluyentes por dos razones: cuando las predicciones las hacen científicos que provienen del campo de las redes neuronales descuidan muchos aspectos estadísticos y viceversa. Además, bajo el epígrafe predicción se engloban estudios muy diferentes: no todas las curvas son iguales en cuanto a forma y tamaño, presencia o no de efectos estacionales, de no linealidad, predicción a corto o largo plazo, etc. Chatfield (1994) comenta que las redes neuronales se están comportando bien en predicción a largo plazo con componentes no lineales, en cambio, no están claras las mejorías observadas en series cortas y estacionales, como son típicas en las predicciones de ventas. Lo cierto es que este autor, como la mayoría, recomienda no hacer caso de las exageraciones e invita a realizar trabajos serios que indiquen en qué tipos de estudios y bajo qué condiciones las redes neuronales son más apropiadas.

 

2.1.- Análisis Técnico: el análisis técnico pretende predecir las cotizaciones a partir de la evolución histórica de precios y volúmenes de negociación. El primer artículo sobre redes neuronales que manejan información financiera fue realizado por White (1988), quien estudió la predicción de los precios de las acciones con un modelo de red neuronal. El modelo predecía mejor que el modelo de series temporales que utilizaba, un modelo lineal autorregresivo. El perceptrón multicapa es utilizado como análisis técnico, sin incluir variables fundamentales.

 

            Posteriormente la predicción de la cotización de las acciones, del tipo de cambio y de otras variables económicas ha sido uno de los temas más atractivos para los investigadores, pudiendo referenciar gran cantidad de trabajos. Así, Kimoto, Asakawa, Yoda y Takeoka (1990), Kamijo y Tanigawa (1990), Ormerod y Walker (1990), Varfis y Versino (1990), Bergerson y Wunsch (1991), Sharda y Patil (1992), Refenes (1992), Hoptroff (1993) y un largo etcétera.

 

2.2.- Análisis Fundamental: el análisis fundamental trata de valorar los factores económicos más importantes del entorno y contempla la evolución económico-financiera de las empresas. Wong, Wang, Goh y Quek (1992) diseñan una red neuronal borrosa que combina diferentes herramientas de  Inteligencia Artificial para obtener una cartera óptima de acciones. Concretamente su modelo es una red neuronal fuzzy. Consta de tres módulos: el primero contiene treinta y dos reglas del tipo si-entonces proporcionadas por especialistas humanos, el segundo un procesador de reglas fuzzy y el tercero un perceptrón multicapa. El modelo utiliza información del mercado de valores, así como ratios financieros. En el artículo se realiza un test con ochocientas empresas, con el objetivo de predecir las rentabilidades de las acciones, obteniendo resultados satisfactorios.

 

            Refenes, Azema-Barac y Treleaven (1993) describen un modelo de construcción de carteras eficientes y colocación de activos en siete mercados financieros. Hay una serie de reglas establecidas que restringen las cantidades máximas a repartir en cada mercado. La red neuronal utiliza información de los mercados financieros, tipos de interés, precio del petróleo, del oro y una serie de parámetros que no dice el artículo por estar registrados. Los resultados, comparados con otras carteras son muy satisfactorios.

 

1.4.4.- Ejemplos de aplicaciones de aplicaciones en casos reales.

 

            Despues de un minucioso estudio, de las redes que sobre este tema se han desarrollado, se ha encontrado muy poca información sobre ellas, tanto en los aspectos de implementación, como en aspectos generales. Este apartado pretende resumir la información interesante que se ha conseguido:

 

            1.- Yoon, Swales y Margavio tratan de discriminar a las empresas en dos grupos, según sus acciones hayan tenido o no un buen comportamiento en los mercados financieros. Los datos incluyen información contable cuantitativa y cualitativa, pues examinan la carta que el presidente de la compañía envía a los accionistas. Comparan los resultados del análisis discriminante con los del perceptrón multicapa. El perceptrón sin capa oculta obtenía un 65% de acierto, resultado similar al del análisis discriminante. Al añadir una capa oculta, mejoran los resultados situándose al 76%. El añadir otra capa oculta no mejora significativamente la eficacia del modelo.

 

            2.- Aaltonen y Ostermark comparan los tres modelos estadísticos más utilizados en la predicción del fracaso empresarial: análisis discriminante, lógit y particiones recursivas con el perceptrón multicapa. En este estudio la variable dependiente, es decir el calificar a la empresa positiva o negativamente, se deriva de los mercados financieros, según el valor estimado de la beta. La beta de un valor es una medida del riesgo sistemático, es decir atribuible al movimiento del mercado en su conjunto y se calcula mediante regresiones que relacionan los movimientos del título con los del índice general de precios del mercado. Las empresas son agrupadas a priori como de alto o bajo riesgo dependiendo de si el valor de su beta está por encima o por debajo de la media de la beta calculada para todas las empresas y todos los años. En los resultados se produce un empate, ya que todos los modelos fallan en el test en las mismas tres observaciones.

 

            3.- Predicción del valor del índice S&P500 mediante un perceptrón multicapa con algoritmo backpropagation (BPN): se intenta predecir el valor del S&P500 dentro de 5 días, a partir del valor actual del índice y del de 5 días antes. Además la red utiliza otras cuatro variables (SK, SD, ADX, MACD), que se corresponden con indicadores bursátiles, de los cuales cabe destacar el ADX (Índice medio de movimiento direccional) y el MACD (Índice de Convergencia y Divergencia). (ver ‘Building Neuronal Networks’, capítulo 5).

 

Dada una tabla con 20 casos de prueba, la red neuronal construida tiene el siguiente aspecto:

 

CAP2_A

Y los resultados obtenidos se pueden apreciar en la siguiente gráfica:

 

 

CAP2_B

           

4.- Otro ejemplo, que muestra el tratamiento que una red neuronal realiza de una lista de variables financieras, es (ver ‘Neural Network in Finance and Investing’, capítulo 12):

 

            Sobre una lista de 3º variables financieras, la red que se construye es:

 

CAP2_C

           

5.- Garrido y LaTorre (1997) crean un modelo para predecir la evolución del Ibex35, para ello usan un modelo supervisado de perceptrón multicapa con algoritmo de tipo backpropagation y lógica difusa. El tipo de red desarrollada es de predicción y el problema a resolver es “determinar la rentabilidad de las acciones de una empresa estudiando ciertos factores que influyen en el comportamiento del índice bursátil de los mercados capitales”.

 

            Las variables más destacadas que se usaron son:

 

Linguísticas

Numéricas

PG: Política general

PE: Política económica

CBMC: clima bursátil en los medios de comunicación

IB: índice bursátil

PER: ultima cotiz. dividida entre rentabilidad del capital

C/CV: cotización sobre valor contable

IPC: índice de precios al consumo

TI: tasa de interés

P-O: Pay-out (dividendo por acción / beneficio neto por acción).

Variable a PREDECIR:

 

R: Rentabilidad = dividendo íntegro + valor medio derechos + diferencia de cotización / cotización anterior.

 

            En las siguientes gráficas se puede observar la relación no lineal de los datos entre la R y PER (1), C/CV (2), P-O (3):

 

 

            Los resultados obtenidos con la red se pueden ver en la siguiente gráfica:

 

 

            Conclusión: La arquitectura que se esta usando para el desarrollo de este tipo de aplicaciones es una red multicapa supervisada, denominada “perceptrón”, junto a un algoritmo llamado “retro-propagación” (“Back Propagation”) que minimiza el “error cuadrático medio” entre el valor real de salida y el deseado, por medio de un proceso iterativo.

 

1.4.5.- Resumen general y Conclusiones.

 

            Los sistemas expertos son la rama más conocida de la Inteligencia Artificial. La forma en que representan el conocimiento, habitualmente mediante símbolos, es apropiada cuando es posible extraer un conjunto de reglas y normas. En la vasta ciencia empresarial, existen subdominios en los que es fácil o al menos posible extraer una serie de reglas y otros en los que es menos factible. El análisis financiero es uno de ellos. No existen reglas con rango de norma, conviven recetas extraidas de la práctica empresarial con otras obtenidas mediante análisis empíricos. Es por lo tanto un reto elaborar un sistema experto de diagnóstico empresarial.

 

            Las redes neuronales artificiales son un paradigma computacional que trata de resolver tareas que la computación algorítmica tradicional e Inteligencia Artificial convencional no han resuelto de un modo suficientemente satisfactorio. Tareas tales como el reconocimiento de patrones, problemas de optimización o clasificación. En las redes neuronales artificiales el conocimiento no se programa de forma directa en la red sino que se adquiere por medio de una regla de aprendizaje por ajuste de parámetros mediante ejemplos. Como vemos es un método inductivo, que recuerda más a los modelos estadísticos que a los sistemas expertos, la otra gran rama de la Inteligencia Artificial. Diversas parcelas de la gestión empresarial utilizan frecuentemente el método inductivo, entre ellas el análisis financiero, por lo que se justifica conocer lo que las redes neuronales nos pueden ofrecer. Quizá una solución pragmática sea utilizar sistemas mixtos que incorporen un módulo de sistema experto con sus reglas junto a otros módulos estadísticos o neuronales.

 

            En cuanto a las áreas de trabajo posibles, dependen del tipo de decisión, estructurada o no y del nivel organizativo, según sea operativo, de gestión o estratégico. En general las redes neuronales pueden cubrir un hueco importante en las decisiones no estructuradas, debido a esa capacidad de encontrar relaciones complejas entre los patrones de entrada. No son tan apropiadas en tareas muy estructuradas, en las que creemos que es más recomendable utilizar programas informáticos convencionales o sistemas expertos.

 

            Los primeros trabajos con redes neuronales e información contable fueron realizados por ingenieros o en general personas ajenas a la economía. Ultimamente empiezan a ser habituales en los congresos y revistas especializadas de economía los estudios realizados con redes neuronales. En general estos trabajos tratan problemas de clasificación y predicción: el fracaso empresarial, el diseño de modelos de concesión de préstamos, de calificación de obligaciones, de elección del método contable, el análisis técnico y el análisis fundamental han sido los temas preferidos por los investigadores, y serán los temas en los que se centrará nuestro proyecto.

 

            Los resultados de estos estudios, aunque prometedores, por su naturaleza empírica no son concluyentes y casi todos ellos invitan a continuar realizando más estudios empíricos que muestren en qué problemas y bajo qué condiciones las redes neuronales pueden ser una solución más eficiente que los modelos utilizados habitualmente.

 

1.5.- Algoritmo de entrenamiento de la red: Backpropagation.

 

            En este punto vamos a ver el desarrollo detallado de la red neuronal de tipo backpropagatión, que se ha usado para el desarrollo de esta fase del proyecto, explicando las estructuras de datos utilizadas y los algoritmos desarrollados para el proyecto en lo referente a esta red.

 

1.5.1.- Introducción.

 

            Una red de perceptrones es capaz de entrenar sus unidades de salida para aprender a clasificar los patrones de entrada linealmente separables. Para el caso de patrones no linealmente separables el proceso se hace más complejo y sólo puede ser solucionado con redes multicapa. Sin embargo, si la salida posee error, existirá el problema de cómo determinar cual elemento de proceso o interconexión ajustar. Una red de retropropagación es capaz de resolver esto asignando a todos los elementos de proceso una cierta "responsabilidad" por la respuesta errónea. Esto se traduce en un error que es propagado desde la capa de salida a las neuronas de las capas previas de modo que éstas adapten sus pesos para minimizar dicho error y alcanzar el valor deseado.

           

            Técnicamente, retropropagación es una ley de aprendizaje específica. Este término es usualmente usado para referirse a una arquitectura de red jerárquica que usa el algoritmo de retropropagación para ajustar los pesos de interconexión de cada neurona de la red, basados en el error presente en la salida.

 

            Este tipo de redes usan para sus neuronas funciones no lineales y todos  sus pesos son adaptables. Dicha función no lineal debe ser continua, diferenciable, monotónicamente creciente y asintótica a un valor. En este trabajo utilizaremos específicamente dos  tipos de estas funciones: la función sigmoidal y la tangente hiperbólica.

 

            La estructura de esta red consta siempre de una capa de entrada, una de salida y al menos una capa oculta. Cada capa está totalmente conectada a la siguiente y no existe interconexión entre las neuronas de una misma capa. Los patrones de entrada y salida no tienen  que ser necesariamente valores binarios, éstos pueden tomar cualquier valor que sea capaz de representar la red. Muchas veces, cuando se utiliza una de las funciones de activación previamente mencionadas,  la salida es generalmente escalada a los valores máximos y mínimos que logran dichas funciones.

 

            Teóricamente  no está limitado el número de capas ocultas, pero típicamente no son más de dos. Existen trabajos en que se han utilizado hasta tres capas ocultas, de modo de solucionar problemas complejos de clasificación de patrones. El número de neuronas en esta capa dependerá del diseñador de la red. Demasiadas   neuronas en las capas ocultas harán que la red tenga dificultades al procesar nuevos tipos de patrones de entrada, es decir, hará generalizaciones. Pocas neuronas no permitirán a la red hacer suficientes representaciones internas de modo de generar  sus mapas de entrada y salida.

 

 

1.5.2.- Algoritmo de aprendizaje.

 

            Como se mencionó anteriormente, el proceso de ajuste de los pesos se lleva a cabo primero en la capa de salida y posteriormente en las capas internas o escondidas, procediendo desde la más cercana a la salida a la más cercana a la entrada. El ajuste se realiza en base al algoritmo del descenso del gradiente o regla delta generalizada.

 

Ajuste de los pesos  de la capa de salida

 

            Se considera a continuación el ajuste de un solo peso  desde la neurona 'p'  en la última  capa escondida j a la neurona q en la capa de salida, como se muestra a continuación en la figura:

 

            1.- La salida de la neurona q se resta de la salida deseada correspondiente, generando una señal de error que se multiplica por la derivada de la función no lineal evaluada para la neurona q.


                                      = f '(xq) (T - Yq)

 

                  donde xq es la entrada a la red.

 

            2.- Luego  se multiplica por la salida de la neurona p y este producto se multiplica por un coeficiente de entrenamiento (típicamente entre 0.01 y 1.0), y el resultado se suma al peso.

                 

                  De otra forma, teniendo en cuenta el tiempo discreto n, n={0,1,2,...} se tiene

 

                              Wp q, k (n+1) = Wp q, k (n) +  Yp, j

 

Ajuste de los pesos de las capas internas

 

            Puesto que no existen vectores de salida deseados para las neuronas de las capas internas no es posible aplicar el algoritmo anterior.

 

            Las capas internas se entrenan propagando el error hacia atrás, a través de la red, capa por capa ajustando los pesos de cada una de ellas. Se utilizan las mismas ecuaciones anteriores, calculando de otra forma. Se considera la  siguiente figura:

 

 

            El valor de correspondiente a la neurona p de la capa interna j se calcula de la siguiente forma:

 

                               p,j = f '(xp,j) q,k Wpq, k

                                                    q

           

            Con este valor de es posible aplicar las ecuaciones del entrenamiento de la capa de salida para las capas internas o escondidas.

 

            Entrenamiento: Lo esencial de este procedimiento es que los términos de error requeridos  para adaptar los pesos son retropropagados desde los nodos en la capa de salida hacia los nodos de las capas internas, de ahí que se le conozca como retropropagación.      

 

            La aplicación de la regla delta implica dos fases:

 

                        1.- Durante la primera fase la entrada es presentada y propagada hacia adelante a través de la red para computar el valor de salida O para cada unidad. Esta salida es luego comparada con el objetivo, resultando en una señal de error para cada unidad.

 

                        2.- La segunda fase involucra un paso hacia atrás en la red, similar al paso hacia adelante, durante el cual la señal de error es entregada a cada unidad en la red  realizándose los cambios apropiados en los pesos.

 

            Métodos para acelerar el entrenamiento

 

            1.- Método del momentum: consiste en sumar, al ajuste de los pesos, un término proporcional a la cantidad del cambio producida en el ajuste previo del misno.

 

                              Wpq,k (n+1) =  Wpq,k (n)  +   Yp,j

 

                              Wp q, k (n+1) = Wp q, k (n) +  Wpq,k (n+1)

 

            Un valor típico de  , llamado coeficiente de momentum, se ajusta comúnmente en 0.9.

 

            2.- Método del suavizamiento: similar al anterior, pero basado en un suavizamiento exponencial que ha demostrado ser superior en algunas aplicaciones.

 

                  Wpq,k (n+1) =  Wpq,k (n)  +  (1 - ) Yp,j

 

                  Wp q, k (n+1) = Wp q, k (n) +  Wpq,k (n+1)

 

                      es el coeficiente de suavizamiento en el rango de 0.0 a 1.0. Si es cero, el suavizamiento es mínimo; el ajuste de los pesos corresponde al nuevo  valor calculado. Si es 1.0 el nuevo ajuste se ignora, repitiéndose el ajuste previo.

 

            El factor nuevamente corresponde al coeficiente de entrenamiento, que ajusta el tamaño del cambio promedio de los pesos.

           

            3.- Método estocástico: al igual que en el caso de la red Adaline, el método resulta ser aplicable fácilmente en este tipo de red y con excelentes resultados.

 

                              Wp q, k (n+1) = Wp q, k (n) +  Yp, j / || Y j ||²

 

                  donde , al igual que en los casos anteriores queda determinado por:

 

                    = f '(xq) (T - Yq)   para el caso de las neuronas de la salida.

 

                   p,j = f '(xp,j) q,k Wpq, k   para las neuronas ocultas.

 

 

 

 


SIAPAF (Sistemas de Inteligencia Artificial para Aprendizaje Financiero).

 

En este capítulo se detalla las especificaciones del programa que se ha desarrollado para verificar las conclusiones divididas en tres partes: Base de datos, Red neuronal e Interface.

 

2.1.- Especificaciones de la base de datos.

 

Como se ha visto en el capítulo anterior, la información es el elemento indispensable para la obtención del conocimiento, por ello la mayor parte del esfuerzo de este proyecto se ha dirigido  a obtener una base de datos lo más amplia posible y con la estructuración más clara posible, que englobe a las variables más relevantes en la predicción de valores.

 

La base de datos se ha desarrollado con formato "Dbase para Windows" mediante el gestor de base de datos "DataBase Desktop", de forma que los datos sean fácilmente reutilizables por otros programas.

 

            La principal ventaja de este sistema, es que no necesitaremos conocer nada acerca de los formatos de las bases de datos existentes, ya que nos dará un acceso simple a múltiples formatos (Paradox, Dbase, Informix, Oracle, ...) de bases de datos tanto locales como en sistemas remotos, ni del funcionamiento interno del ODBC para conectar con otras bases de datos, ni tan siquiera de los protocolos de comunicación con un servidor remoto.

 

            El soporte de base de datos está basado en el motor de bases de datos de Borland (BDE) que es el traductor o la capa intermedia entre nuestras aplicaciones y las bases de datos a las que vamos a acceder. Los controles de bases de datos que usaremos en nuestros programas cuyas propiedades, eventos y métodos serán interpretados por el BDE. Al BDE no le importa el formato usado para implementar la Base de datos, ya que posteriormente se entenderá con el controlador correspondiente a dicho formato. Así, nos aseguramos que las operaciones que implementemos para acceder a un registro de la tabla o para la manipulación de datos valdrán independientemente de que formato de bases de datos se haya usado.

 

            El BDE esta compuesto por un conjunto de funciones (IDAPI), que enlazan la comunicación entre la aplicación y los controladores de la base de datos. El IDAPI es la parte accesible del BDE desde nuestra aplicación, independientemente del lenguaje que estemos usando.

 

            Las relaciones entre los diferentes componentes de las bases de datos se pueden ver en el siguiente esquema:

 

            Nuestra aplicación usará las funciones del IDAPI, a traves de los componentes de la base de datos. Nuestras llamadas al BDE son traducidas y enviadas al controlador adecuado, que accederá fisicamente a la base de datos.

 

            No debemos olvidar que cada vez que hagamos uso de un programa que utilice el BDE, se inicia la sesión, con lo que el sistema cargará información referente a la base de datos.

 

En los siguientes apartados de este capítulo se explicaran con detalle cada una de las partes que componen la base de datos del proyecto.


2.1.1.- Diseño del esquema Entidad-Interrelación.

 

A continuación vamos a mostrar el esquema Entidad-Interrelación que hemos desarrollado para afrontar los requisitos del sistema:

 

 

basedato

 

2.1.2.- Modelo de datos relacional.

 

            Se plantea, pues el paso a tablas a partir del diseño conceptual efectuado en el punto anterior. Para ello nos basaremos en las reglas conocidas del modelo de datos relacional. En principio podríamos tener una tabla para cada tipo de entidad y para cada tipo de relación. Sin embargo, podemos simplificar el número de tablas resultantes mediante propagación de clave. Las tablas que resultarían son las siguientes:

 

Valores (valor, actividad, nombre, ubicación)

 

Operaciones (tipo, nombre, definición)

 

Cvalores (precio, pre_ant, pre_max, pre_min, pre_ape, vol_med, vol_tot, fecha, dife, valor)

                                                                                                                        å valores

 

Cderechos (precio, pre_ant, pre_max, pre_min, pre_ape, vol_med, vol_tot, fecha, dife, valor)

                                                                                                                        å valores

 

Coperaciones (tipo, factor, fecha, valor)

                        å operaciones å valores

 

Indices_g (valor, nombre)

 

Cindices_g (precio, pre_ant, pre_max, pre_min, pre_ape, vol_med, vol_tot, fecha, dife, valor)

                                                                                                                        å indices_g

 

Indices_s (valor, nombre)

 

Cindices_s (precio, pre_ant, pre_max, pre_min, pre_ape, vol_med, vol_tot, fecha, dife, valor)

                                                                                                                        å indices_s

 

Indices_m (valor, nombre, sector)

 

Cindices_m (precio, valor)

                               å indices_m

 

 

 

2.1.3.- Desarrollo de los campos de las tablas.

 

            Visto el esquema, se observa la mayor complejidad de éste diseño, y por tanto consideramos que seria interesante aclarar paso a paso las diferentes partes del sistema, explicando la utilidad de las tablas y de las variables:

 

            - Tabla valores.dbf: Contiene los valores del mercado continuo.

 

Nombre Tabla:

Valores.dbf

Nombre

Tipo

Tamaño

Explicación

Valor

cadena

5

Código identificador del valor. Forma parte de la clave.

Nombre

cadena

12

Nombre del valor.

Actividad

cadena

30

Explicación de la función que desempeña el valor en su sector.

Ubicación

cadena

30

Es el lugar donde se encuentra su sede social.

 

            - Tabla cvalores.dbf: Su misión es contener los datos de las cotizaciónes diarias de cada valor.

 

Nombre Tabla:

cvalores.dbf

Nombre

Tipo

Tamaño

Explicación

Fecha

dato

 

Informa de la fecha de las cotizaciones.

Valor

cadena

5

Código identificador del valor. Forma parte de la clave. Es un referencia a la tabla ‘valores’.

Pre_ape

real

6:0

Precio de apertura del valor en la sesión.

Pre_ant

real

6:0

Precio de cierre del valor en la anterior sesión.

Precio

real

6:0

Precio de cierre del valor en la sesión.

Pre_max

real

6:0

Precio máximo del valor en la sesión

Pre_min

real

6:0

Precio mínimo del valor en la sesión.

Dife

real

6:2

Diferencia entre el precio de apertura y el de cierre.

Vol_tol

real

8:0

Volumen de contratación alcanzado por el valor en la sesión.

Vol_med

real

8:0

Volumen de contratación medio para un grupo de sesiones.

 

-   Tabla cderechos: Su misión es contener los valores de los días en que hay una ampliación de capital. Cotización de los derechos.

 

Nombre Tabla:

cderechos.dbf

Nombre

Tipo

Tamaño

Explicación

Fecha

dato

 

Informa de la fecha de las cotizaciones.

Valor

cadena

5

Código identificador del valor. Forma parte de la clave. Es un referencia a la tabla ‘valores’.

Pre_ape

real

6:0

Precio de apertura del valor en la sesión.

Pre_ant

real

6:0

Precio de cierre del valor en la anterior sesión.

Precio

real

6:0

Precio de cierre del valor en la sesión.

Pre_max

real

6:0

Precio máximo del valor en la sesión

Pre_min

real

6:0

Precio mínimo del valor en la sesión.

Dife

real

6:2

Diferencia entre el precio de apertura y el de cierre.

Vol_tol

real

8:0

Volumen de contratación alcanzado por el valor en la sesión.

Vol_med

real

8:0

Volumen de contratación medio para un grupo de sesiones.

 

            - Tabla operaciones: Nos permitirá conocer el tipo de operaciones que ha realizado el sistema.

 

Nombre Tabla:

operaciones.dbf

Nombre

Tipo

Tamaño

Explicación

Tipo

Cadena

5

Tipo de operación que se realiza sobre el valor. Ej: OPV, OPA, Split, Ampliación de capital.

Nombre

Cadena

30

Dependerá del tipo de operación. Ej: OPV -> Porcentaje de acciones que se emiten, Split -> Factor de división, OPA -> Incentivo de incremento sobre la cotización.

Definición

Texto

 

Explicación detallada de la operación.

 

            - Tabla coperaciones: Nos permitirá conocer el valor de las operaciones que han realizado los valores del mercado continuo.

 

Nombre Tabla:

coperaciones.dbf

Nombre

Tipo

Tamaño

Explicación

Fecha

Dato

 

Informa de la fecha en que se realizo la operación sobre el valor.

Valor

Cadena

5

Código identificador del valor. Forma parte de la clave. Es un referencia a la tabla ‘valores’.

Tipo

Cadena

5

Tipo de operación que se realiza sobre el valor. Ej: OPV, OPA, Split, ...

Factor

Real

6:2

Dependerá del tipo de operación. Ej: OPV -> Porcentaje de acciones que se emiten, Split -> Factor de división, OPA -> Incentivo de incremento sobre la cotización.

Definición

Texto

 

Explicación detallada de la operación.

 

            - Tabla indices_g: nos permite llevar el control sobre los diferentes tipos de índices generales.

 

Nombre Tabla:

indices_g.dbf

Nombre

Tipo

Tamaño

Explicación

Valor

Cadena

5

Código identificador del índice general. Forma parte de la clave.

Nombre

Cadena

30

Nombre del índice general.

 

-   Tabla cindices_g: Su misión es contener los datos de las cotizaciones diarias de cada índice general.

 

Nombre Tabla:

cindices.dbf

Nombre

Tipo

Tamaño

Explicación

Fecha

dato

 

Informa de la fecha de las cotizaciones.

Valor

cadena

5

Código identificador del valor. Forma parte de la clave. Es un referencia a la tabla ‘valores’.

Pre_ape

real

6:0

Precio de apertura del valor en la sesión.

Pre_ant

real

6:0

Precio de cierre del valor en la anterior sesión.

Precio

real

6:0

Precio de cierre del valor en la sesión.

Pre_max

real

6:0

Precio máximo del valor en la sesión

Pre_min

real

6:0

Precio mínimo del valor en la sesión.

Dife

real

6:2

Diferencia entre el precio de apertura y el de cierre.

Vol_tol

real

8:0

Volumen de contratación alcanzado por el valor en la sesión.

Vol_med

real

8:0

Volumen de contratación medio para un grupo de sesiones.

 

            - Tabla indices_s: nos permite llevar el control sobre los diferentes tipos de índices sectorial.

 

Nombre Tabla:

indices_s.dbf

Nombre

Tipo

Tamaño

Explicación

Valor

Cadena

5

Código identificador del índice general. Forma parte de la clave.

Nombre

Cadena

30

Nombre del índice general.

 

-   Tabla cindices_s: Su misión es contener los datos de las cotizaciones diarias de cada índice sectorial.

 

Nombre Tabla:

cindices_s.dbf

Nombre

Tipo

Tamaño

Explicación

Fecha

Dato

 

Informa de la fecha de las cotizaciones.

Valor

Cadena

5

Código identificador del valor. Forma parte de la clave. Es un referencia a la tabla ‘valores’.

Pre_ape

Real

6:0

Precio de apertura del valor en la sesión.

Pre_ant

Real

6:0

Precio de cierre del valor en la anterior sesión.

Precio

Real

6:0

Precio de cierre del valor en la sesión.

Pre_max

Real

6:0

Precio máximo del valor en la sesión

Pre_min

Real

6:0

Precio mínimo del valor en la sesión.

Dife

Real

6:2

Diferencia entre el precio de apertura y el de cierre.

Vol_tol

Real

8:0

Volumen de contratación alcanzado por el valor en la sesión.

Vol_med

Real

8:0

Volumen de contratación medio para un grupo de sesiones.

 

            - Tabla indices_m: nos permite llevar el control sobre los diferentes tipos de índices macroeconomicos.

 

Nombre Tabla:

indices_s.dbf

Nombre

Tipo

Tamaño

Explicación

Valor

Cadena

5

Código identificador del índice general. Forma parte de la clave.

Nombre

Cadena

40

Nombre del índice macroeconomico.

Sector

Cadena

50

Sub-grupo al que pertenece la variable.

 

-   Tabla cindices_m: Su misión es contener los datos de las cotizaciones diarias de cada índice macroeconomicos.

 

Nombre Tabla:

cindices_s.dbf

Nombre

Tipo

Tamaño

Explicación

Valor

Cadena

5

Código identificador del valor. Forma parte de la clave.

Precio

Real

12:3

Precio de las variable macroeconomica.

 

2.1.4.- Explicación detallada las tablas.

 

2.1.4.1.- Valores del mercado continuo.

 

            Está zona de la base de datos aglutina las tablas de valores.dbf, cvalores.dbf, cderechos.dbf e indirectamente coperaciones.dbf.

 

            El mercado de valores continuo es un mercado informatizado en el que cotizan los principales factores admitidos en bolsa que permite la compraventa en tiempo real.

 

            La base de datos actual engloba los datos diarios de las empresas de este mercado desde el 1 de enero del 1996 hasta la fecha actual.

 

 

            La lista de las empresas que se encuentran en la base de datos es la siguiente:

 


ABG        Abengoa                  ACE         Acesa                       ACR         Aceralia                   ACS         Acs                          ACX                Acerinox                  ADZ        Adolfo Dguez         

AEA        Azuc.Ebro Ag          AFR         Aforasa                    AGI         El Aguila                  AGR        Agroman                  AGS                Ag.Barcelona           AGS.N     Ag.Barcel.N.

ALB         Corp. Alba               ALD        Aldeasa                    ALI          B.Alicante                AMP        Amper                     ANA                Acciona                   AND        B.Andalucia

ANY        Grupo Anaya           ARA        Aragonesas              ARG        Argentaria                ASA         Tavex.Algod.           ATL                B.Atlántico               AUM       Aumar

AZC         Ast.Zinc                   AZK        Azkoyen                  AZU        Azucarera E.            BAM        Bami C.y T              BAY                Bayer A.G.               BBV         B.Bilbao-Viz

BBV.N     B.Bilb.Viz N            BCH         B.Cent.Hisp.            BDL         Baron de Ley           BES         Inbesos                    BKT                Bankinter                 BMA        Befesa

BTO         Banesto                    BVA        B.Valencia               BYB         Bo.y Bebidas           CAF         Aux.Ferroca.            CAN                Hidrocantab.            CAR         Carburos

CAS         B.Castilla                 CBK         B.Commerzban        CBL         B.Cto.Balear             CEP         Cepsa                       CFR                Cofir                        CGI          Ge.Inversión

CIT          Citroen Hisp            CPF          Campofrio               CPL         C.Portland                CRI          Cristalería                CTE                Continente               CTF         Cortefiel

CTG         Gas Natural              CUN        C.V.N.E.                  DGI         Dogi                         DIN         Dinamia                   DMT                Dimetal                    DRC         Dragados

DRC.P      Dragados P.             EBA         Ebro Agric.              ECR         Ercros                      ELE         Endesa                     ENC                Ence                        ENH        Enher B

EPC         Eppic                       ERZ         El.R.Zaragoz            ESF          B. Esfinge                EUR         Europistas               EXT                B. Exterior               FAE         Faes

FCC         Fcc                           FEC         Fecsa                       FFR          Fosforera                 FIL          Filo                          FIL.P                Filo B                       FNZ         Finanzauto

FTO         B.Fomento               FTX         Fastibex                   FYM        Fin.Minera               GAL        B.Galicia                  GCO                Catalana Occ            GES         Gas y elec.

GHS         Picking Pack            GIN         Gines Navarr           GPP         Picking Pack            GSW        Global Steel             GUI                B.Guipuzcoa            GUI.P      B.Guipuz. A

HES         Est.Subterr.              HHU        Huarte                      HRR         B. Herrero                HSB         Hisalba                    IBE                Iberdrola                  IBG          Iberpapel

IBP          Iberpistas                 IDO         Indo Interna             IZB          Inm.Zabalbur           KOI         Koipe                       LAI                Const. Lain              LCB         Corp.Banesto

LFG         Lafarge                    LGT         Lingotes E.              MAP        Cor.Mapfre              MAP.N    Mapfre nuev.           MCM                Miquel Costa           MCM.N   Miquel.Mz97

MCM.S    Miq. Costa S            MDF        Gr.Felguera              MDF.B     D.Felguera B            MIA         Melia Inv.A.            MID                Marco Iberic            MPV        Mapfre Vida

MVC        Inm.Metrovac          NAN        Sal.Nansa                 NEA        Nico.Correa             NMQ       N.Montaña               OBR                Obrascon                 OCI          OCP

OMS        Omsa                       PAC         Europac                   PAP         Papelera Esp            PAS         B.Pastor                   PAT                Paternina                  PIN          Prima Inmob.

PMD        Bp Oil.Esp.              POP         B.Popular                 PRY         Pryca                       PSG         Prosegur                  PUL                Puleva Indu.            PVA         Pescanova

RAD        Radiotronica            RDM        Reno Midici             REP         Repsol                     RIO          B.Riojanas               SAN                B.Santander             SAN.B     B.Santad.din

SAR         Sarrio                       SED         La Seda B. B            SEV         Sevillana                  SEV.N     Sevillana N.             SIM                B.Simeón                 SNC         Sniace Or.

SNC.N     Sniace Ene98           SOL         Sol-Melia                 SOS         SOS Arana               STG         Sotogrande               SUP                Superdiplo               TAB         Tabacalera

TEF         Telefónica                TFI          Ta.Fibras B.             TPZ         Tele pizza                TUB         Tubacex                   TUB.J      Tubacex J.               TUB.N     Tubacex N.             

TUD        Tudor                      UBS         Urb.Transp.             UFE         Agf U.Fenix             UND        Uniland Cem.           UNF                Un.Fenosa               UNI         Uniasa-Pulev

UPL         Unipapel                  URA        Uralita                      URB         Urbis                       VAL        Vallehermoso          VAS                B.Vasconia              VCP         Valen.C.Por.

VDR        Valderrivas              VGO        E.Viesgo                  VID         Vidrala                     VIS          Viscofan                  VIT                B.Vitoria                  VLE         Vilesa

VWG       Volkswagen             WAR01    Wr.Arg.Ibx.C           ZNC         Esp.Zinc                  ZOT         Zardoya Otis            ZRG                B.Zaragozano


 

            Asociada a la tabla de valores se encuentran la tabla de derechos, que contiene los valores de aquellas empresas que hicieron ampliaciones de capital en algún momento entre el 1 de enero del 1996 y el día de hoy.

 

            Cuando se va a producir una ampliación de capital, las acciones que había antes pasan a ser acciones viejas, mientras que las que se emiten ahora serán nuevas. Pero desde que se informa de la ampliación de capital, hasta que esta es realizada, entran a cotización unos derechos, que permitirán a los titulares de las acciones suscribir un porcentaje de las nuevas acciones, en base al número de derechos que posean. Pero está persona tiene también la opción de transmitir estos derechos, por lo que sufren las mismas variaciones que otro valor del mercado continuo, arrastrando con sus resultados al valor al que está asociado.

 

2.1.4.2.- Operaciones del mercado continuo.

 

            Este apartado englobará a las tablas de operaciones.dbf y coperaciones.dbf, en las que se incorporaran las operaciones más típicas y de mayor relevancia del mercado continuo.

 

            En la versión actual solo se ha podido incluir los splits, pero en la próxima versión se incorporaran las OPV's, OPA´s y Ampliaciones de capital.

 

            A continuación, vamos a dar una breve explicación de en que se basan cada una de estas operaciones, dando mayor relevancia a los splits, por ser esta la que incorpora la base de datos en su versión actual.

 

            Split: técnicamente hablando consiste en el fraccionamiento o reducción-división del valor de las acciones. Su principal utilidad es la de difundir más la propiedad bursátil permitiendo una mayor liquidez en sus valores, cuyas cotizaciones se rebajan al rebajarse el valor nominal y de cotización de las acciones.

 

            La verdadera importancia de esta operación, no radica en la división, sino los efectos psicológicos que produce en la gente. Mientras que un valor de cotización a un precio elevado atrae muy poco al pequeño inversor, un valor a un precio bajo si es un plato que atrae a las masas.

 

            Un ejemplo claro de esto, se puede ver en el Split por un factor de 50 realizado por el banco Castillo. Antes del Splits, su volumen de contratación diario no superaba las 3 acciones, despues la media ronda las 3000-4000 acciones, que divididas entre el factor del Split nos da aproximadamente 60 acciones antiguas, es decir, con una operación tan sencilla, consiguieron multiplicar su liquidez  por 20.

 

            Es por ello, que un Splits, no puede ser tomado tan solo como la operación matemática de división, sino que se debería desarrollar una formula heurística, que permitiera sumarle a este valor matemático, otro valor obtenido a partir de herramientas de control y predicción de variables basadas en la psicología de masas.

 

Ampliación de capital: Operación financiera consistente en modificar el capital social de una empresa aumentando su cuantía nominal. Puede realizarse recabando nuevas aportaciones de los socios, vendiendo títulos o acciones en el mercado de valores, incrementando la cuenta de capital con los saldos de las cuentas de reservas o de regularización de activo, o bien, canjeando obligaciones por acciones.

 

Las ampliaciones de capital, a través de la emisión de nuevas acciones y de su venta en la Bolsa, son una de las formas de financiación de las sociedades, al tiempo que constituyen una de las maneras de canalizar en las economías de mercado el ahorro privado hacia la inversión. Siempre los accionistas de la sociedad tienen derecho preferente a suscribir las nuevas acciones y además este derecho se puede también negociar en la Bolsa.

 

OPA (Oferta Pública de Adquisición): Es una oferta de compra de acciones de forma pública e indiscriminada, con ánimo de adquirir una participación mayoritaria en una sociedad. El precio suele ser superior al del mercado para favorecer la aceptación totalmente voluntaria, que debe fijarse en un plazo establecido con anterioridad.

 

OPV (Oferta Pública de Venta): Es una oferta de venta de acciones realizadas públicamente, con ánimo de vender una participación significativa de una sociedad. Se utiliza frecuentemente para privatizar empresas públicas o para sacar empresas familiares a bolsa. La OPV puede realizarse por subasta o por aceptación de un precio fijo, en cuyo caso suele haber prorrateo o fijación de un límite por inversor.

 

2.1.4.3.- Indices sectoriales:

 

            Este apartado engloba a las tablas de indices_s.dbf e cindices_s.dbf, y aglutinan a los indices que representan a cada sector industrial o de servicios del mercado español, es decir, dividen a las empresas según su actividad en nueve sectores, y a traves de una formula financiera, calculan el índice de cada  conjunto, la principal importancia de estos índices radica en el hecho de que los mercados financieros, son mercados sectoriales por definición, es decir, en condiciones normales (salvo hechos relevantes que afecten a un valor concreto) su un banco sube la subida será generalizada en todo el sector bancario, y además la subida de algunos sectores es una medida de predicción de que otros sectores que se ven influenciados por los primeros también subirán.

 

            En general y aunque sus utilidades son múltiples, la principal utilidad es la de ayuda en la formación de carteras,. ya que sectores que se muestran débiles,  suelen desaconsejar la inclusión de las empresas del mismo en la cartera de inversión.

 

            Actualmente los índices sectoriales de la bolsa española son:

 


MAALI    Alimentación.          MABAN Bancos.    MACOM  Comunicación.         MACTR   Construcción.                MAELE   Electricidad.            

MAINV    Inversión.                MAVAR  Varios.     MAQUI   Química.                  MASID    Siderometalurgia.

 


 

2.1.4.4.- Indices generales:

 

            La cantidad de índices bursátiles que existen en el mundo es enorme, dado que un índice no es más que un número calculado a partir de una ecuación financiera que representa el nivel de algún mercado o de alguna variable financiera.

 

            Cada país suele tener un grupo de índices que le permita conocer a diario el estado de sus mercados, pero estos índices en la mayoría de los casos no comparten las mismas reglas de formación o composición, es por ello que es imposible generalizar o especificar más la función de los índices, sin entrar a detallar cada uno de ellos.

 

      A continuación, se muestra una lista con los índices que se han incorporado a la base de datos del proyecto, pero se dará una breve explicación solo de los más importantes.

 


BO           BOGOTA IG            BV           BOVESPA               CA           CARACAS IG          DF           DAX FLOOR                DI            DAX XETRA

ET            EUROTRACK 10     EX           EUROTRACK 20     HK           HANG SENG           IB            IBEX 35                  IC            Ibex comple.

IF             IBEX FINANC.        IT            MIBTEL                  IU            IBEX UTILIT.         IV            IBEX INDUST.                LA           FTSE-ACT 350

LE            FTSE-100                LI            LIMA IG                 LM          FTSE-MID 250        LS            FTSE-SMALLC.                MA          MADRID IGBM

NIBEX     NIBEX 65                NC           DJ COMPOSITE      NT           DJ TRANSPORT      NY           DOW JONES                PB            CAC40 PARIS

QC           NASDAQ COMP.    QQ           NASDAQ 100          SA           SANTIAGO IGP      SG           SINGAPUR ST                SM           SWISS MARKET

SP            S&P 500                  SX           SWISS PERFO.        SY           SYDNEY A.OR.      TK           NIKKEI                   TW          TSE-WEIGHTED

 


 

            Vamos a ver brevemente los más importantes:

 

- Bovespa: Es el índice general de brasil. Es una cartera de valores hipotéticamente recomprada cada cuatro meses desde el 2 de enero de 1968 y cuyos componentes representan cerca del 80% del total contratado en acciones en la Bolsa de Sao Paulo en los doce meses precedentes.

           

El índice está basado en la media ponderada de la contratación y la base es del 2 de Enero de 1993 y fue ajustada a un valor de 0,000000001.

 

- Nasdaq Composite: Estados Unidos. Media aritmética ponderada de la capitalización de 1005 valores.

 

                        - S&P 500: Estados Unidos. Media aritmética ponderada de la capitalización de 500 empresas del sector industrial, 20 transporte, 40 de finanzas y 40 de varios y 100 empresas con opciones en CBOE, ajustando el índice si se producen dividendos o ampliaciones.

 

            Información detallada sobre todos los índices de la base de datos, así como de otros existentes en los mercados internacionales, se puede encontrar en "Curso de Bolsa y mercados financieros" del Instituto Español de Analistas Financieros, en el Capítulo15 - Los índices bursátiles. 

 

2.1.4.5.- Indices macroeconomicos.

 

            Las variables macroeconomicas son los índices que nos indican la tendencia de determinados aspectos de la economía, como la tendencia inflaccionista, etc.

 

            Algunas variables macroeconomicas que se usan en el sector español son: Encuesta de Población Activa (EPA - Trimestral), Encuesta Continua de Presupuestos Familiares (ECPF - Trimestral), Contabilidad Nacional Trimestral (CNTR - Trimestral), Índices de Precios de Consumo (IPC - Mensual), Índices de Precios de Consumo Armonizados. España (IPCAE - Mensual), Indice de Precios de Consumo Armonizado. UE (IPCAU - Mensual), Encuesta del Coste de la Mano de Obra (ECMO - Cuatrienal), Encuesta de Salarios (ES - Trimestral), Encuesta Industrial Anual de Productos (EIAP - Anual), Índices de Producción Industrial (IPI - Mensual), Índices de Precios Industriales (IPRI - Mensual), Índices de Comercio al por Menor (ICM - Mensual), Estadística de Efectos de Comercio Devueltos Impagados (EI - Mensual), Estadística de Hipotecas (H - Mensual), Estadística de Suspensiones de Pago y Declaraciones de Quiebra (SQ - Mensual), Estadística de Sociedades Mercantiles (SM - Mensual).

 

            Pero, a la hora de realizar la base de datos se ha hecho una criba, de aquellas dejando solo las variables que a través de la experiencia se han mostrado como las más influyentes, estas son:

 

IPCDB     Indice de precio al consumo                    IPC - Indice general  base 1992

IPCVM    Indice de precio al consumo                    IPC - Tasa de la media anual. base 1992

IPCVA     Indice de precio al consumo                    IPC - Variacion en el año. base 1992

IPCMA    Indice de precio al consumo                    IPC - Media anual. base 1992

IPCTM     Indice de precio al consumo                    IPC - Tasa mensual. base 1992

IPCTA     Indice de precio al consumo                    IPC - Tasa anual. base 1992

IPIDB      Indice de producción Industrial                               IPI - Indice general

PAEPN    Encuesta de población activa                   PAE - Parados nacional

PAEON    Encuesta de población activa                   PAE - Ocupados nacional

PAEIN     Encuesta de población activa                   PAE - Inactivos nacional

PAEAN    Encuesta de población activa                   PAE - Activos nacional

IPRDB     Indice de precios industriales                  IPR - Indice general. base 1990

IPRVA     Indice de precios industriales                  IPR - Variación en el año. base 1990

IPRVM    Indice de precios industriales                  IPR - Tasa de la media anual. base 1990

IPRMA    Indice de precios industriales                  IPR - Media anual. base 1990

IPRTA     Indice de precios industriales                  IPR - Tasa anual. base 1990

IPRTM     Indice de precios industriales                  IPR - Tasa mensual. base 1990

IPIVA      Indice de producción Industrial                               IPI - Variación de la media en lo que va de año

IPIVM     Indice de producción Industrial                               IPI - Tasa de la media anual

IPIMA     Indice de producción Industrial                               IPI - Media anual

IPITA      Indice de producción Industrial                               IPI - Tasa anual

TIPCP      Tipos de interes preferencial                    TIP - Tipo de interes preferencial a corto plazo

DEMLP   Deuda del estado                                     DE - Deuda del estado a medio y largo plazo

MVVEN  Mercado de valores                                 MV - Volumen negociado en bolsa (renta variable)

 

            Vamos a dar una breve explicación de cada una de estás variables:

 

-   IPC: El Indice de Precios de Consumo es una medida estadística de la evolución del conjunto de precios de los bienes y servicios que consume la población residente en viviendas familiares en España.

 

En el Sistema de Índices de Precios de Consumo Base 1992, la media aritmética simple de los índices mensuales de dicho año calculados según este Sistema se ha hecho igual a 100.

 

- IPI: El Indice de Producción Industrial es un indicador coyuntural que mide la evolución mensual de la actividad productiva de las ramas industriales, excluida la construcción, contenidas en la Clasificación Nacional de Actividades.

 

     Económicas 1993 (CNAE-93). Mide, por tanto, la evolución conjunta de la cantidad y de la calidad, eliminando la influencia de los precios.

 

     Para su obtención se realiza una encuesta continua de periodicidad mensual que investiga todos los meses más de 9.000 establecimientos.

 

- PAE: Se recogen series enlazadas desde el tercer trimestre de 1976 hasta el momento actual, utilizando la nueva metodología de la encuesta de 1987. Las series, presentadas a nivel nacional, autonómico y provincial, recogen datos de población total, activos, ocupados, parados, inactivos, parados que buscan el primer empleo, ocupados subempleados, asalariados, no asalariados y población contada aparte, clasificadas según los siguientes criterios (siempre que tenga sentido): ramas de actividad, edad, sexo, nivel de estudios, relación con la persona principal del hogar, estado civil, ocupación, tipo de inactividad, situación profesional y tiempo de búsqueda de empleo. Tienen periodicidad trimestral.

 

-                      IPR: El Indice de Precios Industriales es un indicador coyuntural que mide la evolución mensual de los precios de los productos industriales fabricados y vendidos en el mercado interior, en el primer paso de su comercialización, es decir, de los precios de venta a salida de fábrica obtenidos por los establecimientos industriales en las transacciones que estos efectúan, excluyendo los gastos de transporte y comercialización y el IVA facturado. Para su obtención se realiza una encuesta continua de periodicidad mensual, que investiga todos los meses más de 6.000 establecimientos industriales. La cobertura del índice se extiende a todos los sectores industriales excluida la construcción. Por tanto investiga la energía, la minería y las manufacturas.

 

-                      DE: Es el conjunto de valores de renta fija emitidos por el Estado y que son objeto de negociación en los mercados oficiales.

 

- VN: Comprende los importes netos facturados por la empresa por la prestación de servicios y las ventas netas de bienes y productos que son objeto del tráfico de empresa. Incluye todos los impuestos que gravan los bienes o los servicios facturados con excepción del IVA repercutido a los clientes. Se deducen las devoluciones de ventas, así como los rappels sobre las ventas. No se deducen los descuentos de caja ni los descuentos sobre ventas por pronto pago. La cifra de negocio no comprende la venta de activos fijos ni las subvenciones de explotación.

 

2.2.- Especificaciones de la red neuronal.

 

            Ahora debemos desarrollar los módulos o rutinas, en un lenguaje portable (no hemos decantando por C++), que puedan emular el comportamiento de dichas redes.

 

            En este punto vamos a exponer un conjunto de rutinas que hemos reunido y que proveen las herramientas necesarias para la creación y utilización de las redes neuronales. Básicamente, éstas están enfocadas a entregar soluciones independientes al tipo de red y algoritmo que se utilice. Estas rutinas nos facilitarán el trabajo de creación de la red, pero seguiremos teniendo que hacer el diseño del algoritmo de aprendizaje y de operación de la red.

 

2.2.1.- Estructuras.

 

            La idea es partir creando una estructura simple  que sea capaz de contener los elementos que puedan emular su comportamiento. Para la creación de la estructura de datos que contenga los pesos y salidas de la red, se utilizará como modelo el esquema de la neurona propuesto por M.S. McCulloch y W.A.Pitts.

 

            De este modelo, se deduce que la estructura básica de la se dividirá en dos partes:

 

                        1.- Definiremos las capas de la red.

                        2.- Definiremos la red.

 

            Capas de la red:

 

                        1.- Neuronas: número de neuronas de la capa.

                        2.- Axones: Número de neuronas de salida.

                        3.- Delta: Valor de delta.

                        4.- Pesos: Matriz de pesos de conexión de las Neuronas.

                        5.- Pesos salvados: La mejor matriz de pesos que hemos encontrado hasta el momento.

6.- Dpesos: Los pesos que usaremos para el Momentum.

 

            La red:

 

1.- Capa: Lista de Capas ocultas de la red neuronal.

2.- Capa de Entrada.

                        3.- Capa de Salida.

4.- Error: Error total acumulado en la red.

 

            Luego la definición de la red quedaría como:

 

typedef struct {                    

        INT              Neuronas;    

        REAL*        Axones;

        REAL*        Error;     

        REAL*        Delta;     

        REAL**      Pesos;   

        REAL**      Pesos_Salvados;

        REAL**      dPesos; 

} CAPA;

                               

typedef struct {    

        CAPA**     Capa;

        CAPA*       Capa_de_Entrada;

        CAPA*       Capa_de_Salida; 

        REAL         Error;

 } RED;

               

RED Red_Neuronal;

 

            Además de estas estructuras, han sido necesarias las siguientes variables:

 

            1.- Numero elementos capa de salida: Nos vale para informar al sistema de cuantas neuronas tendrá  la capa de salida.

 

2.- Numero elementos capa de entrada: Nos vale para informar al sistema de cuantas neuronas tendrá  la capa de entrada.

 

3.- Numero valores disponibles: es el número de valores que tendrá la red para las entradas.

 

4.- Valor de comienzo del entrenamiento: Es el valor por el que comienza la red para el entrenamiento.

 

5.- Valor de finalización del entrenamiento: Es el valor hasta el cual llega el entrenamiento.

 

6.- Numero de valores de entrenamiento: Es el número de valores que usará la red para el entrenamiento.

 

7.- Valor de comienzo del Test: Es el valor por el que comienza la red para realizar el test.

 

8.- Valor de finalización del Test: Es el valor limite que puede usar la red para el test.

 

9.- Valor de comienzo de la evaluación: Es el valor por el que comienza la red para la predicción.

 

10.- Valor de finalización de la evaluación: Es el valor hasta donde puede usar la red para la predicción.

 

            11.- Valores obtenidos entrenamiento: Vector de los valores obtenidos de la salida de la red durante el entrenamiento.

 

12.- Valores entrenamiento: Vector de valores de entrada a la red durante el entrenamiento.

 

13.- Valores obtenidos predicción: Vector de valores obtenidos de la salida de la red durante la predicción.

 

14.- Valores predicción: Vector de valores de entrada a la red en la predicción.

 

            15.- Error entrenamiento: Es la suma de los errores de la salida de ese paso para el entrenamiento.

 

            16.- Error medio entrenamiento: Es el error durante el entrenamiento dividido entre el error cuadratico medio de los errores (diferencia entre la salida obtenida y la esperada) producidos a lo largo de ese paso en el entrenamiento.

 

            17.- Error mínimo entrenamiento: Es el menor error de entrenamiento que se ha encontrado a lo largo de todos los pasos.

 

            18.- Error test: Es la suma de los errores de la salida de ese paso para el test.

 

            19.- Error medio test: Es el error durante el entrenamiento dividido entre el error cuadratico medio de los errores (diferencia entre la salida obtenida y la esperada) producidos a lo largo de ese paso en el test.

 

            20.- Error mínimo test: Es el menor error de test que se ha encontrado a lo largo de todos los pasos.

 

21.- El error obtenido supera al mínimo error en (%): Si el error que hemos obtenido en el ultimo test es mayor en un % que el error mínimo que teníamos hasta el momento paramos el entrenamiento de la red neuronal.

 

22.- El numero de pasos es mayor de: Si el número de veces que se ha entrenado la red supera el limite establecido paramos.

 

23.- El error mínimo es menor de: Si el error mínimo del test es menor que el que establecemos paramos.

 

24.- Numero de capas: es el número de capas que tendrá la red.

 

2.2.2.- Procesos mínimos.

 

            Especificaciones de las rutinas: Antes de pasar a analizar el conjunto de rutinas, vamos a revisar cuales serán los requerimientos a satisfacer. Para esto, se partirá de la base que dichas rutinas deben ser lo suficientemente flexibles como para trabajar en cualquier aplicación, independiente del tipo de algoritmo de aprendizaje y operación que se utilice. Con este fin, pretendemos analizar el sistema de una red neuronal y así determinar en forma precisa cuales son los elementos que deben  ser proporcionados y cuales quedarán a cargo del diseñador.

 

            Se considerará el sistema de una red neuronal, incluyendo sus etapas de aprendizaje y operación normal, como una estructura de flujo de datos cuyo elemento principal lo constituirán los pesos. Lo interesante de esta representación es que se puede visualizar en forma clara cuales son los elementos que intervienen en forma externa a la red y aquellos que son variables según  la aplicación.

 

 

            Según está  figura,  la estructuración de la red se manifiesta mediante un flujo de datos entre lo que es el sistema propiamente tal y su entorno. 

 

            El entorno lo constituyen, básicamente, tres elementos: los datos sensoriales representado por las entradas que excitan la red, las actuaciones de la red que corresponderían a las salidas  del sistema y  todos los valores que son necesarios para la realización del aprendizaje determinados por los parámetros de entrenamiento y los valores deseados en las salidas de la red. Estos elementos deberán ser provistos a la red  por el diseñador.

 

            Analizando en forma más detallada la red o sistema, se encuentra que dentro de ella existen ciertas estructuras y procesos bien definidos en  los cuales se debe basar  la construcción de las rutinas.

 

           

            Como se aprecia en la figura superior, existen básicamente tres procesos y dos estructuras dentro de  una red neuronal. Estas dos estructuras, los pesos y las salidas, tendrán un rol de suma importancia dentro de la red y habrá que preocuparse en forma especial de crearlas de la forma más robusta posible. Dentro de los procesos, existen dos que son invariantes según la aplicación: la lectura y escritura de pesos, y el cómputo de la activación. El tercer proceso, la adaptación de los pesos, dependerá completamente del tipo de aplicación que usemos.

 

            A continuación se muestran el conjunto de rutinas que harán los procesos básicos dentro de una red, de modo que el  trabajo del diseñador sea más simple.

 

            Vamos a ver los principales “Procesos del sistema”:

 

            1.- Procedimiento principal de la red: ejecuta la red neuronal de tipo baclpropagation.

 

1.- Inicializa generador de números aleatorios.

2.- Genera Red Neuronal.

3.- Pesos aleatorios.

4.- Inicializamos los datos.

 

5.- Hacer

5.1.- Entrenamiento de la red.

5.2.- Test de la red.

5.3.- Si (Error durante el entrenamiento < Error mínimo durante el entrenamiento)

5.3.1.- Error mínimo durante el entrenamiento = Error durante el entrenamiento.

 

5.4.- Si (Error durante el test < Error mínimo durante el test)

5.4.1.- Error mínimo durante el test = Error durante el test.

5.4.2.- Guardar los pesos.

6.- Hasta que se cumplan condiciones de parada.

7.- Restablecer los pesos.

8.- Test de la red.

 

            2.- Entrenamiento de la red:

 

1.- Para (Cont1=0 hasta Cont1< Número de repeticiones)

1.1.- Para (Cont2=0 hasta Cont2 < Numero de valores de entrenamiento)

1.2.- Generar valores aleatorios para el entrenamiento de la red.

1.3.- Simulación de la red con los valores de entrenamiento.

 

            3.- Test de la red:

 

1.- Para  (Cont1 = Valor de comienzo del entrenam. hasta Cont1 <= Valor de finalizacion del entrenamiento)

1.1.- Simulación de la red con los valores de entrenamiento.

1.2.- Actualizamos el vector de valores obtenidos en el entrenamiento.

1.3.- Actualizar el Error durante el entrenamiento.

 

2.- Para  (Cont1 = Valor de comienzo del test hasta Cont1 <= Valor de finalizacion del test)

1.1.- Simulación de la red con los valores de entrenamiento.

1.2.- Actualizamos el vector de valores obtenidos en el entrenamiento, para los valores del test.

1.3.- Actualizar el Error durante el test.

 

            4.- Predicción de la red:

 

1.- Para  (Cont1 = Numero elementos capa de entrada hasta  Cont1 <= Valor de finalización de la evaluación)

1.1.- Simulación de la red con los valores obtenidos en la predicción.

1.2.- Actualizamos el vector de valores obtenidos en la predicción.

 

 

            5.- Simulación de la red:

 

1.- Introduce datos en capa de entrada.

2.- Propagación de la red.

3.- Obtener datos de capa de salida.

4.- Calculo del error de salida.

5.- Si (Entrenamiento)

5.1.- RetroPropagación de la red.

5.2.- Ajuste de los pesos de la red.

 

            6.- Ajuste de los pesos de la red:

 

1.- Para (Cont1=1 hasta Cont1 < Numero de capas)

1.1.- Ajuste de los pesos de la capa.

 

            7.- Ajuste de los pesos de la capa:

 

1.- Para (Cont1=1 hasta Cont1 <= Neuronas de la Capa superior)

1.1.- Para (Cont2=0 hasta Cont2 <= Neuronas de la Capa inferior)

1.1.1.- Axones = El axón de la capa inferior.

1.1.2.- Error = El error de la capa superior.

1.1.3.- dPesos = El peso de la capa superior.

1.1.4.- Sumatorio (El peso de la capa superior += Eta*Error * Axones+ Alpha * dPesos)

1.1.5.- Los pesos delta de la capa superior = Eta * Error * Axones.

 

            8.- Retroprogamación de la red: propagamos el error por las capas.

 

1.- Para (Cont1 = Numero de capas -1 hasta  Cont1 > 1)

1.1.- RetroPropagación de la capa.

 

            9.- Retroprogamación de la capa: las capa actualiza los pesos en base al error que le hemos propagado.

 

1.- Para (Cont1 =1 hasta Cont1 <= Las neuronas de la capa inferior)

1.1.- Salida = el axon de la capa inferior.

1.2.- Para (Cont2 =1 hasta Cont2 <= las neuronas de la capa superior)

1.2.1.- Sumatorio (Error += Peso de la capa superior * Error de la capa superior)

1.3.- Suma ponderada = El delta de la capa inferior.

1.4.- Delta de la capa inferior = Función de activación (Red Neuronal, Suma ponderada) * Error.

1.5.- El error de la capa inferior  = Ganancia * Salida * (1- Salida) * Error.

 

            10.- Calculamos el error de la salida:

 

1.- Para (Cont1 =1 hasta Cont1 <= Número de neuronas de la capa de salida)

1.1.- Salida obtenida = El axon de la capa de salida.

1.2.- Error = Salida deseada - Salida obtenida.

1.3.- Error de la capa de salida = Ganancia * Salida * (1- Salida) * Error.

1.4.- Suma ponderada =  La delta de la capa de salida.

1.5.- Delta de la capa de salida = Función de activación (Red Neuronal, Suma ponderada) * Error.

1.6.- Calculamos el error cuadratico medio

 

            11.- Propagación de la red: Para cada capa de la red generaremos los axones.

 

1.- Para (Cont1 =0 hasta Cont1 < Numero de capas -1)

1.1.- Propagación  de la capa.

 

            12.- Propagación de la capa: generamos las salidas de la capa.

 

1.- Para (Cont1 =1 hasta Cont1 <= Las neuronas de la capa superior)

1.1.- Suma ponderada = Cuerpo de la neurona (Capa superior, Capa inferior).

1.2.- Delta de la capa superior = Suma ponderada.

1.3.- Axon de la capa superior = Función de activación (Red Neuronal, Suma ponderada).

 

            13.- Cuerpo de la neurona: sumatorio de los pesos de la capa superior, multiplicados por los de la capa inferior.

 

1.- Para (Cont1 =0 hasta Cont1 <= Las neuronas de la capa inferior)

1.1.- Sumatorio (Suma += Pesos de la capa superior * Axon de la capa inferior).

2.- Retornar la Suma.

 

            14.- Restablecer los pesos: Restablecemos los pesos que teníamos guardados, para poder ejecutar la red.

 

1.- Para (Cont1 =1 hasta Cont1 < Numero de capas)

1.1.- Para (Cont2 =1 hasta Cont2 <= Número de neuronas de esa capa)

1.1.1.- Para (Cont3 =0 hasta Cont3 <= Número de neuronas de la capa anterior)

1.1.1.1.- Peso de la capa = Peso salvado de la capa.

 

            15.- Guardar los pesos: Guardamos los pesos de la red.

 

1.- Para (Cont1 =1 hasta Cont1 < Numero de capas)

1.1.- Para (Cont2 =1 hasta Cont2 <= Número de neuronas de esa capa)

1.1.1.- Para (Cont3 =0 hasta Cont3 <= Número de neuronas de la capa anterior)

1.1.1.1.- Peso salvado de la capa = Peso de la capa.

 

            16.- Obtener datos de capa de salida: Obtenemos un vector con los axones de salida de la red

 

1.- Para (Cont1 =1 hasta Cont1 <= Número de neuronas de la capa de salida)

1.1.- Axon = Axon de la capa de salida.

 

            17.- Introduce datos en capa de entrada: Introducimos en la capa de entrada los Numero elementos capa de entrada -1 primero valores.

 

1.- Para (Cont1 =1 hasta Cont1 <= Número de neuronas de la capa de entrada)

1.1.- El axon de la capa de entrada = Entrada.

 

            18.- Genera red neuronal: Asigna memoria para la red neuronal.

 

1.- Reservamos espacio para todos los elementos de la red.

2.- Para (Cont1 =0 hasta Cont1 < Numero de capas)

2.1.- Reservamos memoria para la capa.

2.2.- Reservamos memoria para cada elemento de la capa.

2.3.- Reservamos memoria para los pesos a partir de la segunda capa.

3.- Le decimos a la red cuales serán las capas de entrada y las de salida.

 

            19.- Inicializamos los datos: normalizamos los datos e inicializamos los errores.

 

1.- Obtener Máximo-mínimo normalizado.

2.- Normaliza Valores.

 

                3.- Para (Cont1 = Valor de comienzo del entrenam. hasta Cont1 <= Valor de finalizacion del entrenamiento)

3.1.- Para (Cont2=0 hasta Cont2 < Numero elementos capa de salida)

3.1.1.- Salida = Valor entrenamiento.

3.1.2.- Error = Media - Salida.

3.1.3.- Sumatorio (Error medio durante el entrenam. += Error cuadratico medio (Error)).

 

4.- Para (Cont1 = Valor de comienzo del Test hasta  Cont1 <= Valor de finalizacion del Test)

4.1.- Para (Cont2=0 hasta Cont2 < Numero elementos capa de salida)

4.1.1.- 'Salida = Valor test.

4.1.2.- Error = Media - Salida.

4.1.3.- Sumatorio (Error medio durante el test += Error cuadratico medio (Error)).

 

            A parte de estos procedimientos básicos, existen otras muchas operaciones en el sistema, que se incorporarán en uno de los apéndices. De estas cabe destacar aquí las funciones de transferencia.

 

            Las funciones de transferencias que se implementarán en el sistema son:

 

0

Función Lineal

f(x) = x

1

Función Umbral

f(x) = 0  si x<0 ó f(x) = 1 si x 0

2

Función signo

f(x) = -1 si x<0 ó f(x) = 1 si x 0

3

Función sigmoidal

f(x) = 1 / ( 1 + exp(-x) )

4

Tangente hiperbólica

f(x) = (1 - exp (-2x)) / (1 + exp(-2x))

 

            Para utilizar otro tipo de función se puede calcular el valor de la activación, ya sea creando y agregando la función a la rutina o generando su propia rutina que realice este proceso.

 

2.3.- Especificaciones del Interface.

 

            En este punto, vamos a ver con detalle aquellas estructuras y operaciones que ha sido necesario desarrolla para generar un interface que enlazará de forma adecuada los datos de la base de datos con el algoritmo de la red neuronal, y mostrará de forma precisa los resultados.

 

2.3.1.- Estructuras.

 

            Para enlazar los datos de la base de datos con el algoritmo de la red neuronal se usan las estructuras comentadas en los puntos anteriores, por lo que en este punto solo se dirá como se enlazan.

 

            La forma de enlazarlas consistirá en acceder a las tablas correspondientes de donde queremos sacar los datos, e ir insertando estos datos en los vectores de entrenamiento o predicción según sea el caso de forma, que la red solo deberá ir poniendo los datos de ese vector en sus entradas.

 

            Paralelos a los vectores de entrenamiento y predicción, habrá otros vectores que contendrán los datos de entrenamiento y predicción obtenidos por la red, de forma que a la salida podamos comparar los reales o los que ha obtenido la red, solo recorriendo los vectores.

 

2.3.2.- Procesos mínimos.

 

            A continuación se muestran el conjunto de rutinas que harán los procesos básicos para el interface, de modo que el  trabajo del diseñador sea más simple.

 

            Vamos a ver los principales “Procesos del sistema”:

 

            1.- Inicializa generador de números aleatorios: genera la semilla del generador de números aleatorios.

 

            2.- Generador de valores aleatorios: genera valores aleatorios enteros entre dos limites (superior, inferior).

 

            3.- Generador de pesos aleatorios: genera valores aleatorios reales entre dos limites (superior, inferior)

 

            4.- Error cuadratico medio: calcula el error cuadratico medio.

 

            5.- Gráfica error entrenamiento: muestra por pantalla el valor del error durante el entrenamiento de forma visual (mediante una barra) y de forma textual.

 

            6.- Gráfica error medio durante el entrenamiento: muestra por pantalla el valor del error medio durante el entrenamiento de forma visual (mediante una barra) y de forma textual.

 

            7.- Gráfica error mínimo durante el entrenamiento: muestra por pantalla el valor del error mínimo durante el entrenamiento de forma visual (mediante una barra) y de forma textual.

 

            8.- Gráfica error test: muestra por pantalla el valor del error durante el test de forma visual (mediante una barra) y de forma textual.

 

            9.- Gráfica error medio durante el test: muestra por pantalla el valor del error medio durante el test de forma visual (mediante una barra) y de forma textual.

 

            10.- Gráfica error mínimo durante el test: muestra por pantalla el valor del error mínimo durante el test de forma visual (mediante una barra) y de forma textual.

 

            11.- Gráfica error salida: Mostramos los valores que predice la red en el entrenamiento y los reales, de forma que podamos ver visualmente como va aprendiendo la red.

 

1.- Si (Numero valores disponibles - Numero elementos capa de entrada > Número valores)

1.1.- Factor =  ( Nª valores disponibles - Numero elementos capa de entrada) / Número valores.

2.- Sino

2.1.- Número valores = Numero valores disponibles - Numero elementos capa de entrada.

2.2.- Factor =1.

3.- Inicializa los valores de la gráfica.

4.- Muestra los valores de los vectores a traves de la gráfica.

 

12.- Mostrar pasos: mostramos el número de paso del aprendizaje.

 

            13.- Inicializa reloj: usamos el reloj del sistema para guardar la hora de incio del entrenamiento, y despues ponemos el reloj del entrenamiento a cero.

 

            14.- Actualiza reloj: el tiempo usado durante el entrenamiento es la hora actual menos la hora a la que comenzó el entrenamiento.

 

            15.- Gráfica predicción: nos permite mostrar los valores de predicción de la red tanto los que ha obtenido  la red como los reales en caso de existir estos.

 

1.- Si (Número valores predicción > Número valores)

1.1.- Factor =  (Número valores predicción) / Número valores.

2.- sino

2.1.- Número valores = Número valores predicción.

2.2.- Factor =1.

3.- Inicializa los valores de la gráfica.

4.- Muestra los valores de los vectores a traves de la gráfica.

 

            16.- Tanto por ciento: calcula el tanto por ciento de incremento o decremento entre un valor inicial y otro final. Controlando que el valor inicial sea mayor que cero.

 

            17.- Beneficio de la predicción: calculamos el tanto por ciento de beneficio que pronostica la red y el real y los mostramos.

 

            18.- Obtener máximo y mínimo normalizado: obtenemos el valor máximo y mínimo del vector para poder normalizar los valores del vector.

 

1.- Mínimo = MAXIMO REAL.

2- Máximo = MINIMO REAL.

3- Para (Valor =0, hasta Valor < Numero valores disponibles)

3.1.- Mínimo = MINIMO(Mínimo, Valores).

3.2.- Máximo = MAXIMO(Máximo, Valores).

           

            19.- Busca número elementos en tabla: según la tabla buscara los datos que hay comprendidos entre la fecha de inicio del entrenamiento y la de final del mismo. Esta función nos dará el número de elementos entre los dos valores.

 

1.- Mientras no sea el final de la tabla

1.1.- Si (código coincide) y (Fecha columna >= Fecha inicio entren.) y (Fecha columna <= Fecha final entren.)

1.1.1.- Número valores ++.

1.2.- Próximo registro.

 

            20.- Inserta en vector elementos de Tabla: dadas las fechas de comienzo y final del entrenamiento, así como el número de valores que hay entre esas fechas, vamos insertando los valores en el vector de entrenamiento.

 

1.- Mientras (no sea el final de la tabla) o (no se hayan leído todos los valores) hacer

1.1.- Si (código coincide) y (Fecha columna >= Fecha inicio entren.) y (Fecha columna <= Fecha final entren.)

1.1.1.- Según el valor de la columna, insertar el valor adecuado en el vector.

1.1.2.- Contador ++.

1.2.- Próximo registro.

 

            21.- Busca en Tabla: según la tabla llenamos el vector de datos.

 

1.- Seleccionamos la tabla y la columna y el código.

2.- Buscamos en la base de datos (tabla, código, fechas) el número de elementos

3.- Asignamos memoria para ese numero de elementos

4.- Insertamos en la lista de valores entrenamiento los elementos.

 

            22.- Configura capa entrada: nos permite enlazar los datos seleccionados por el usuario y que se encuentran en la base de datos con el vector de datos que usará la red.

 

1.- Para (Cont1 =0 hasta Cont1<=Numero valores entrada -1) hacer

1.1.- Según la tabla seleccionada llamar al procedimiento "Buscar en tabla" adecuado.

 

            23.- Configura red: Cogemos los parámetros necesarios para configurar la red.

 

1.- Obtener tipo de red, función y valor.

2.- Obtener  número de capas.

3.- Obtener paramentros Alpha, Eta, Ganancia.

4.- Obtener parámetros de parada.

5.- Obtener número de valores de entrenamiento y de prueba.

6.- Obtener fecha de entrenamiento.

7.- Obtener memoria para el vector de elementos de las capas

8.- Preguntar por el número de elementos de cada capa.

9.- Configuramos la capa de entrada de la red

10.- Configuramos los valores que usaremos para el entrenamiento, test y evaluación

11.- Configuramos los valores de comienzo y finalización del entrenamiento y del test.                                         

 

            24.- Busca valor limite en Tabla: Buscamos en la base de datos (tabla, código, fechas) el nº de elemento que coincide con la fecha final o en caso de no existir el ultimo elemento. Devolverá el número de valor limite.

 

1.- Mientras no sea el final de la tabla

1.1.- Si (código coincide) y (Fecha columna <= Fecha final entren.)

1.1.1.- Número valores ++.

 

1.2.- Fecha columna = Fecha final y Parar.

1.3.- Próximo registro.

 

            25.- Inserta en vector elementos de Tabla: dadas las fechas de final y el número de valores limite de la predicción, así como el número de valores que hay entre esas fechas, vamos insertando los valores en el vector de predicción.

 

                1.- Nos posicionamos en el registro limite - número de elementos de la capa de entrada.

2.- Mientras (no sea el final de la tabla) y (no se hayan leído todos los valores) hacer

2.1.- Si (código coincide)

2.1.1.- Según el valor de la columna, insertar el valor adecuado en el vector.

2.1.2.- Contador1 ++.

2.2.- Contador2 ++.

2.3.- Próximo registro.

 

            26.- Busca para la predicción en la tabla: según la tabla llenamos el vector de datos.

 

1.- Buscamos en la base de datos (tabla, código, fechas) el nº de elemento que coincide con la fecha final o en caso de no existir el ultimo elemento

2.- Insertamos en la lista de Valores predicción y valores obtenidos predicción los elementos.

 

            27.- Obtener datos inicio predicción: obtendremos los "numero elementos capa entrada" anteriores a fecha inicio predicción e insertamos en valores predicción los "Número valores predicción" desde Fecha inicio predicción.

 

1.- Según la tabla llamamos a la función de búsqueda adecuada.

 

            28.- Configuración de la predicción:

 

1.- Configuramos la fecha inicio predicción, número valores predicción y los valores de comienzo de la evaluación.

2.- Asigna memoria valores predicción.

3.- Obtendremos los "Número elementos capa entrada" anteriores a Fecha inicio predicción e insertamos en valores predicción los "Número valores predicción" desde Fecha inicio predicción.

4.- Obtener datos inicio predicción.

5.- Obtener de la base de datos los Número valores entrada e insertarlos en el vector de predicción.

6.- Ir añadiendo las predicciones al vector.

7.- Normaliza Valores.

8.- Obtener máximo y mínimo normalizado.

9.- Predicción de la red.

10.- Gráfica predicción.

11.- Beneficio de la predicción.

 

            29.- Guardar configuración red: guardamos los datos de la configuración de la red en un archivo.

 

1.- Abrir el fichero.

2.- Obtener tipo de red, función y valor.

3.- Obtener  número de capas.

4.- Obtener parámetros Alpha, Eta, Ganancia.

5.- Obtener parámetros de parada.

6.- Obtener número de valores de entrenamiento y de prueba.

7.- Obtener fecha de entrenamiento.

8.- Obtener memoria para el vector de elementos de las capas

9.- Preguntar por el número de elementos de cada capa.

10.- Configuramos la capa de entrada de la red

11.- Configuramos los valores que usaremos para el entrenamiento, test y evaluación

12.- Configuramos los valores de comienzo y finalización del entrenamiento y del test.                                         

13.- Cerramos el fichero.

 

            30.- Cargar configuración red: cargamos los datos que hemos guardado en el punto anterior.

 

1.- Abrir el fichero.

2.- Sacar los datos.

3.- Cerrar el fichero.

 

            31.- Guardar pesos salvados:  guardamos los pesos definitivos de la red después del entrenamiento.

 

            32.- Restablecer los pesos: Restablecemos los pesos que teníamos guardados, para poder ejecutar la red.

 

1.- Para (Cont1 =1 hasta Cont1 < Numero de capas)

1.1.- Para (Cont2 =1 hasta Cont2 <= Número de neuronas de esa capa)

1.1.1.- Para (Cont3 =0 hasta Cont3 <= Número de neuronas de la capa anterior)

1.1.1.1.- restaurar (Peso de la capa = Peso salvado de la capa).

 

            33.- Guardar los pesos: Guardamos los pesos de la red.

 

1.- Para (Cont1 =1 hasta Cont1 < Numero de capas)

1.1.- Para (Cont2 =1 hasta Cont2 <= Número de neuronas de esa capa)

1.1.1.- Para (Cont3 =0 hasta Cont3 <= Número de neuronas de la capa anterior)

1.1.1.1.- Guardar (Peso salvado de la capa) .

 

            34.- Guardar aprendizaje de la red: guardamos los datos de la red después del entrenamiento.

 

1.- Abrir archivo.

2.- Guardar los datos del entrenamiento.

3.- Cerrar el archivo.

 

            35.- Cargar aprendizaje de la red: cargamos los datos de la red con lo aprendido durante el entrenamiento.

 

1.- Abrir archivo.

2.- Cargar los datos del entrenamiento.

3.- Cerrar el archivo.

 

            36.- Guardar los resultados de la red:

 

1.- Abrir archivo.

2.- Guarda los datos del entrenamiento.

3.- Guarda los datos de beneficio.

4.- Guardamos las medidas del error: Nos sirven para calcular la relación beneficio riesgo.

5.- Guardamos las variables para la predicción de valores

6.- Guardamos los valores de salida de la red normalizados.

7.- Cerramos el archivo.

 

            37.- Calcula formula: calculamos el factor como el beneficio calculado dividido por el error del entrenamiento.

 

            38.- Cargar los resultados de la red: cargamos los datos que obtuvimos en la predicción de la red para ordenar en la lista de empresas.

 

1.- Abrir archivo.

2.- Cargar los datos del entrenamiento.

3.- Cargar los datos de beneficio.

4.- Cargamos las medidas del error: Nos sirven para calcular la relación beneficio riesgo.

5.- Cargamos las variables para la predicción de valores

6.- Cargamos los valores de salida de la red normalizados.

7.- Cerramos el archivo.

 

            39.- Ordena vector: ordenamos los vectores usando el método de la burbuja, por el campo del factor.

 

1.- Para (i=1 hasta i < Número elementos)

1.1.- Para (j= Número elementos -1 hasta j >= i)

1.1.1.- Si (Beneficio (j-1) > Beneficio (j))

1.1.1.1.- Aux = valor(j).

1.1.1.2.- Valores(j-1) = Valores (j).

1.1.1.3.- Valor (j) = Aux.

 

            40.- Añadir archivo a lista: añadimos el nombre del archivo al formulario.

 

            41.- Mostrar resultados: mostramos los datos de los vectores ordenados. El que predice la red y el real.

 

            42.- Genera Listas: proporcionamos memoria a las listas para los valores.

 

            43.- Inicializa formulario de archivos: eliminamos los datos que hay en este formulario para que no se mezclen con los del siguiente ejemplo.

 

            44.- Inicializa formulario resultados: eliminamos los datos que hay en este formulario para que no se mezclen con los del siguiente ejemplo.

 

            45.- Llena el vector de datos: introducimos los datos de varias predicciones y los ordenamos para poderlos comparar con los reales.

 

1.- Inicializa formulario resultados.

2.- Obtenemos el numero elementos.

3.- Genera Listas.

4.- Para (Cont1 =0 hasta Cont1 < Número elementos) hacer

4.1.- Cargar resultados red.

5.- Ordenar Vector.

6.- Inicializa formulario archivos.

7.- Mostrar resultados.

 

            Aunque se han implementado otras operaciones para el interface, no merece la pena el comentarlas.

 

 

 

 


Resultados experimentales sobre algunos ejemplos.

 

            En este capítulo, se van a mostrar unos ejemplos sencillos de algunos de los análisis que se pueden realizar con el programa, pero esto no implica que la potencia del programa quede limitada a estos casos. Dado que existen infinidad de casos de prueba que se pueden realizar, queda en manos del usuario es sacarle el máximo partido posible al programa.

 

Ejemplo1:

 

            En este primer ejemplo pretendemos analizar, la diferencia que existe entre dejar a la red poco tiempo de entrenamiento o dejarle un periodo intermedio.

 

            Para ello usaremos los siguientes datos:

 


Numero_de_capas

3

Alpha

0.500000

Eta

0.050000

Ganancia

1.000000

Error_mayor_que_Eminimo

25

Precision_maxima_error

0.000500

NValores_entrenamiento

80

NValores_pruebas

20

Fecha_inicio_entrenamiento

1/12/90

Fecha_final_entrenamiento

31/12/93

Numero_Elementos_por_capa

30

30

1

Numero_elementos_capa_de_entrada

30

Numero_elementos_capa_de_salida

1

Numero_valores_disponibles

758

Numero_de_valores_de_entrenamiento

576

Valor_de_comienzo_del_entrenamiento

30

Valor_de_finalizacion_del_entrenamiento

606

Valor_de_comienzo_del_Test

607

Valor_de_finalizacion_del_Test

757

Tabla

cvalores.dbf

Columna

PRECIO

Valor

TAB


 

            En el primer caso usaremos:

 

Numero_pasos_mayor

1

 

            Obteniendo los siguientes resultados:

 


Media

0.432086

Error_durante_el_entrenamiento

1.527728

Error_medio_durante_el_entrenamiento

20.081167

Error_minimo_durante_el_entrenamiento

1.527728

Error_durante_el_test

0.087454

Error_medio_durante_el_test

3.057158

Error_minimo_durante_el_test

0.087454

Tiempo_usado_durante_entrenamiento

0:00:37


TAB-E

 

En el segundo caso usaremos:

 

Numero_pasos_mayor

40

            Obteniendo los siguientes resultados:

 


Media

0.432086

Error_durante_el_entrenamiento

0.381597

Error_medio_durante_el_entrenamiento

20.081167

Error_minimo_durante_el_entrenamiento

0.371469

Error_durante_el_test

0.026808

Error_medio_durante_el_test

3.057158

Error_minimo_durante_el_test

0.026808

Tiempo_usado_durante_entrenamiento

0:16:17


 

TAB1-E

Conclusiones:

 

            Para un entrenamiento intermedio la red ha conseguido una mejora tanto en test como en entrenamiento del orden de 4 veces superior. Es decir, los resultados compensan el tiempo utilizado.

 

            Si hubiésemos usado un número de pasos mayor, cada vez el error disminuye más despacio con lo que cada vez es peor la relación entre el error y el tiempo usado para el entrenamiento.

 

Ejemplo2:

 

            En este ejemplo veremos como en igualdad de condiciones entre índice y un valor que forma parte de ese índice este último tiene mayor error que el anterior.

 

            Para ello usaremos los siguientes datos para el valor:

 


Numero_de_capas

3

Alpha

0.500000

Eta

0.050000

Ganancia

1.000000

Error_mayor_que_Eminimo

25

Numero_pasos_mayor

5

Precision_maxima_error

0.000500

NValores_entrenamiento

80

NValores_pruebas

20

Fecha_inicio_entrenamiento

1/12/90

Fecha_final_entrenamiento

31/12/93

Numero_Elementos_por_capa

30

30

1

Numero_elementos_capa_de_entrada

30

Numero_elementos_capa_de_salida

1

Numero_valores_disponibles

757

Numero_de_valores_de_entrenamiento

575

Valor_de_comienzo_del_entrenamiento

30

Valor_de_finalizacion_del_entrenamiento

605

Valor_de_comienzo_del_Test

606

Valor_de_finalizacion_del_Test

756

Tabla

cvalores.dbf

Columna

PRECIO

Valor

SAN


 

Esos mismos datos los usaremos para su índice sectorial "Maban", y se obtienen los siguientes resultados:

 

            Para el banco Santander:

 


Media

0.460043

Error_durante_el_entrenamiento

0.472569

Error_medio_durante_el_entrenamiento

7.903672

Error_minimo_durante_el_entrenamiento

0.472569

SAN-E

Error_durante_el_test

0.774405

Error_medio_durante_el_test

10.661639

Error_minimo_durante_el_test

0.774405

Pasos

6

Tiempo_usado_durante_entrenamiento

0:02:13


 

            Para el índice sectorial bancario:

 


Media

0.486923

Error_durante_el_entrenamiento

0.568427

Error_medio_durante_el_entrenamiento

9.369392

Error_minimo_durante_el_entrenamiento

0.568427

Error_durante_el_test

0.385225

Error_medio_durante_el_test

5.310468

Error_minimo_durante_el_test

0.385225

Pasos

6

Tiempo_usado_durante_entrenamiento

0:01:49


 

MABAN-E

            Conclusiones:

 

                        Como se puede comprobar el error en el banco es un 100% mayor que en su índice, debido a que al representar los índices medias de los bancos, consigue eliminar los efectos de las operaciones individuales que afectan a un valor del índice.

 

Ejemplo3:

 

En este ejemplo analizaremos el efecto que puede tener en el aprendizaje cambiar el coeficiente de entrenamiento.

 

Para los siguientes datos:

 


Numero_de_capas

3

Eta

0.050000

Ganancia

1.000000

Error_mayor_que_Eminimo

25

Numero_pasos_mayor

1

Precision_maxima_error

0.000500

NValores_entrenamiento

80

NValores_pruebas

20

Fecha_inicio_entrenamiento

1/12/90

Fecha_final_entrenamiento

31/12/93

Numero_Elementos_por_capa

30

30

1

Numero_elementos_capa_de_entrada

30

Numero_elementos_capa_de_salida

1

Numero_valores_disponibles

755

Numero_de_valores_de_entrenamiento

574

Valor_de_comienzo_del_entrenamiento

30

Valor_de_finalizacion_del_entrenamiento

604

Valor_de_comienzo_del_Test

605

Valor_de_finalizacion_del_Test

754

Tabla

cindices_s.dbf

Columna

PRECIO

Valor

MAALI


 

            En el primer caso el coeficiente de entrenamiento es:

 

Alpha

0.900000

 

            Y los resultados del entrenamiento son:

 


Media

0.536916

Error_durante_el_entrenamiento

1.244369

Error_medio_durante_el_entrenamiento

33.487894

Error_minimo_durante_el_entrenamiento

1.244369

Error_durante_el_test

0.143338

Error_medio_durante_el_test

5.659397

Error_minimo_durante_el_test

0.143338

Pasos

2

Tiempo_usado_durante_entrenamiento

0:01:38

 


MAALI-E

            En el segundo caso el coeficiente de entrenamiento es:

 

Alpha

0.100000

 

                        Y los resultados del entrenamiento son:

 


Media

0.536916

Error_durante_el_entrenamiento

1.686018

Error_medio_durante_el_entrenamiento

33.487894

Error_minimo_durante_el_entrenamiento

1.686018

Error_durante_el_test

0.136983

Error_medio_durante_el_test

5.659397

Error_minimo_durante_el_test

0.136983

Pasos

2

Tiempo_usado_durante_entrenamiento

0:01:26


 

 

 

MAALI1-E

            Conclusiones:

 

            Cuanto menor es el coeficiente de entrenamiento, aumenta el error de entrenamiento, aunque el sistema entrena más deprisa.

 

Ejemplo4:

 

En este ejemplo analizaremos sobre un valor con que variable (precio apertura, cierre, ...) se obtiene un mejor resultado.

 

            Los datos de configuración que se han utilizado son:

 


Numero_de_capas

3

Alpha

0.500000

Eta

0.050000

Ganancia

1.000000

Error_mayor_que_Eminimo

25

Numero_pasos_mayor

50

Precision_maxima_error

0.000500

NValores_entrenamiento

80

NValores_pruebas

20

Fecha_inicio_entrenamiento

2/01/98

Fecha_final_entrenamiento

30/09/98

Numero_Elementos_por_capa

30

30

1

Numero_elementos_capa_de_entrada

30

Numero_elementos_capa_de_salida

1

Numero_valores_disponibles

187

Numero_de_valores_de_entrenamiento

119

Valor_de_comienzo_del_entrenamiento

30

Valor_de_finalizacion_del_entrenamiento

149

Valor_de_comienzo_del_Test

150

Valor_de_finalizacion_del_Test

186

Configura_capa_entrada

Tabla

cvalores.dbf

Valor

IBE


 

            Si la columna que usamos es el “precio”, los datos del entrenamiento son:

 


Media

0.502270

Error_durante_el_entrenamiento

0.238411

Error_medio_durante_el_entrenamiento

1.186657

Error_minimo_durante_el_entrenamiento

0.238411

Error_durante_el_test

0.113028

Error_medio_durante_el_test

0.181438

Error_minimo_durante_el_test

0.113028

Pasos

51

Tiempo_usado_durante_entrenamiento

0:04:25


ibe-e

            Si la columna que usamos es el “volumen”, los datos del entrenamiento son:

 


Media

0.155721

Error_durante_el_entrenamiento

0.945394

Error_medio_durante_el_entrenamiento

1.679926

Error_minimo_durante_el_entrenamiento

0.702167

Error_durante_el_test

0.252970

Error_medio_durante_el_test

0.320991

Error_minimo_durante_el_test

0.252970

Pasos

51

Tiempo_usado_durante_entrenamiento

0:04:22


 

ibe1-e

            Si la columna que usamos es el “precio máximo”, los datos del entrenamiento son:

 


Media

0.471249

Error_durante_el_entrenamiento

0.210355

Error_medio_durante_el_entrenamiento

1.036872

Error_minimo_durante_el_entrenamiento

0.210355

Error_durante_el_test

0.079568

Error_medio_durante_el_test

0.128653

ibe2-e

Error_minimo_durante_el_test

0.079568

Pasos

51

Tiempo_usado_durante_entrenamiento

0:04:24


 

 

Si la columna que usamos es el “precio mínimo”, los datos del entrenamiento son:

 


Media

0.566882

Error_durante_el_entrenamiento

0.266330

Error_medio_durante_el_entrenamiento

1.366679

Error_minimo_durante_el_entrenamiento

0.242320

Error_durante_el_test

0.237746

Error_medio_durante_el_test

0.296399

Error_minimo_durante_el_test

0.237746

Pasos

51

Tiempo_usado_durante_entrenamiento

0:04:25


ibe3-e

Si la columna que usamos es el “precio apertura”, los datos del entrenamiento son:

 


Media

0.765717

Error_durante_el_entrenamiento

1.072756

Error_medio_durante_el_entrenamiento

2.581875

Error_minimo_durante_el_entrenamiento

0.931671

Error_durante_el_test

0.355627

Error_medio_durante_el_test

4.509267

Error_minimo_durante_el_test

0.355627

Pasos

51

Tiempo_usado_durante_entrenamiento

0:04:26


 

ibe4-e

            Si la columna que usamos es el “volumen medio”, los datos del entrenamiento son:

 


Media

0.161014

Error_durante_el_entrenamiento

0.183950

Error_medio_durante_el_entrenamiento

0.544619

Error_minimo_durante_el_entrenamiento

0.077628

Error_durante_el_test

0.012877

Error_medio_durante_el_test

0.015498

Error_minimo_durante_el_test

0.012877

Pasos

51

Tiempo_usado_durante_entrenamiento

0:04:25


ibe6-e

            Si la columna que usamos es la “diferencia”, los datos del entrenamiento son:

 


Media

0.448880

Error_durante_el_entrenamiento

1.877889

Error_medio_durante_el_entrenamiento

2.197681

Error_minimo_durante_el_entrenamiento

1.726750

Error_durante_el_test

0.627076

Error_medio_durante_el_test

0.624114

Error_minimo_durante_el_test

0.627076

Pasos

51

Tiempo_usado_durante_entrenamiento

0:04:25


 

 

ibe7-e

Conclusiones:

 

            Los precios máximos y mínimos de una sesión tienen mucha mayor precisión a la hora del entrenamiento que los precios de apertura y cierre o que la diferencia.

            El volumen tiene un error alto, debido a que se encuentra con picos muy altos, que hacen el entrenamiento de la red difícil, por ello al usar el volumen medio y suavizar los picos, el entrenamiento sufre una gran mejora.

Ejemplo5:


En este ejemplo analizaremos el efecto del split sobre el entrenamiento de la red,

para esto cogeremos un valor sobre el que se ha realizado un split, y luego entrenaremos ese mismo valor como sino se hubiera realizado el split.

 


Los datos de configuración son:

 


Numero_de_capas

3

Alpha

0.500000

Eta

0.050000

Ganancia

1.000000

Error_mayor_que_Eminimo

25

Numero_pasos_mayor

50

Precision_maxima_error

0.000500

NValores_entrenamiento

80

NValores_pruebas

20

Fecha_inicio_entrenamiento

2/01/98

Fecha_final_entrenamiento

30/09/98

Numero_Elementos_por_capa

30

30

1

Numero_elementos_capa_de_entrada

30

Numero_elementos_capa_de_salida

1

Numero_valores_disponibles

187

Numero_de_valores_de_entrenamiento

119

Valor_de_comienzo_del_entrenamiento

30

Valor_de_finalizacion_del_entrenamiento

149

Valor_de_comienzo_del_Test

150

Valor_de_finalizacion_del_Test

186

Valor_de_comienzo_de_la_evaluacion

0

Valor_de_finalizacion_de_la_evaluacion

0

Configura_capa_entrada

Tabla

cvalores.dbf

Columna

PRECIO

Valor

TAB


 

            Si realizamos el split los datos obtenidos en el entrenamiento son:

 


Media

0.281344

Error_durante_el_entrenamiento

0.393593

Error_medio_durante_el_entrenamiento

8.438457

Error_minimo_durante_el_entrenamiento

0.392160

Error_durante_el_test

0.001464

Error_medio_durante_el_test

1.248045

Error_minimo_durante_el_test

0.001464

Pasos

51

Tiempo_usado_durante_entrenamiento

0:04:30


 

tab

           

Mientras que sino se realiza el split:

 


Media

0.512296

Error_durante_el_entrenamiento

0.230893

Error_medio_durante_el_entrenamiento

2.149267

Error_minimo_durante_el_entrenamiento

0.218067

Error_durante_el_test

0.109315

Error_medio_durante_el_test

0.186119

Error_minimo_durante_el_test

0.109315

Pasos

51

Tiempo_usado_durante_entrenamiento

0:04:22


 

tab1

Conclusiones:

 

            Sin el split los errores de entrenamiento bajan en torno al 100%, luego para que la red aprenda adecuadamente, es necesario contabilizar estos splits.

 

 

 

 


Conclusiones y futuras líneas de actuación.

 

            En este capítulo, se hará un exposición de las conclusiones obtenidas a partir de los ejemplos realizados sobre la base de datos y al final del capítulo se hará una breve exposición de algunas de las futuras mejoras que se pueden hacer al proyecto para aumentar su potencia de predicción.

 

4.1- Conclusiones.

 

            A partir del análisis de los ejemplos del "capítulo 3" se han sacado las siguientes conclusiones:

 

            1.- La predicción de los índices es mucho más exacta que la de las variables, esto es debido, a que los índices son medias de valores, con lo que los efectos de operaciones concretas sobre un valor del conjunto queda diluido entre el resto de valores, mientras que el valor se ve afectado de forma directa por esa variación sin que exista ningún factor de corrección que le permita reaccionar frente a ese hecho.

 

            2.- Dentro de los índices los que menos error presentan son los índices macro-económicos, debido básicamente a que sufren un proceso de contención y direccionamiento a través de los organismos económicos ya que son las variables que representan  la buena marcha de la economía de un país. Por lo tanto cuanto mayor error se encuentre en la predicción de este tipo de índices (macro-económicos) más inestabilidad existirá en el país al que pertenezca y por tanto más riesgo en la toma de decisiones por parte del sistema.

 

            3.- Según un estudio detallado de los errores de predicción de los índices y los valores, se ha llegado a la conclusión, de que el error que se produce en los índices se debe sobre todo a factores de índole general (socio-políticos), ya que afectan a todas las empresas que conforman el índice y por tanto la red no es capaz de eliminar el error, mientras que el error de los valores se debe a la mezcla de factores socio-politicos y operaciones que afectan a la estructura y organización interna de la empresa. A partir de esta conclusión es fácil deducir que uno de los mecanismos para reducir el error de los valores, será cuantificar a partir de los índices el efecto de los cambios socio-políticos, con lo que el error restante será debido a los cambios internos de la empresa, y la eliminación del error dependerá de un análisis detallado de estos cambios.

 

            Como resumen a las conclusiones anteriores podemos decir:

 

1.- Que se han alcanzado los objetivos que se perseguían, al realizar un sistema que puede predecir la evolución de las cotizaciones de valores del mercado continuo e índices generales con un error aceptable.

 

2.- Que el sistema que se ha obtenido como resultado, posee una gran potencia al permitir introducir desde teclado y en tiempo de ejecución la mayoría de los parámetros que determinan la red, así como un gran número de variables financieras, lo que permite un número de posibilidades casi infinito.

 

3.- Que las conclusiones obtenidas anteriormente, son un número mínimo de las conclusiones que se pueden llegar a obtener del sistema, pero dada la potencia que actualmente tiene y la riqueza de combinaciones que puede llegar a generar, el análisis detallado de las conclusiones que se pueden extrapolar del mismo implicaría materia de investigación para varios proyectos final de carrera, debido a esto se ha optado por exponer en este apartado solo las conclusiones más generales, sin entrar en casos que requerirían un estudio más detallados y que podrían suponer a su vez proyectos independientes.

 

4.2.- Futuras líneas de continuación.

 

            En este punto se hace una breve exposición de las futuras mejoras que se pueden realizar sobre el proyecto, de forma que se aumente el grado de eficiencia del sistema actual y permita la predicción de nuevas variables más complejas.

 

4.2.1.- Mejoras en la base de datos.

 

A partir de las conclusiones anteriormente expuestas, se deduce que el primer paso para seguir realizando el proceso de investigación es añadir nueva información a la base de datos, y esta información se puede dividir en los siguientes grupos:

 

            1.- Política General: hechos relevantes acontecidos en la política nacional e internacional.

 

2.- Política Económica: hechos relevantes acontecidos en la economía nacional e internacional.

 

3.- Clima bursátil en los medios de comunicación.

 

4.- Hechos destacados de las empresas cotizadas: Adquisiciones o transmisiones de participaciones, transformación, fusión, escisión y disolución, aumentos y reducciones del capital social, aumentos o reducciones de autocartera, cambios del Consejo y de otros Organos de Gobierno, acuerdos previos exclusión de negociación, anuncio Convocatorias y Acuerdos de Juntas, situaciones concúrsales, suspensiones de pagos, modificaciones de los Estatutos Sociales, alegaciones ante la CNMV, comunicaciones Condiciones o Resultados Conversión, acuerdos especiales de limitación de derechos, anuncio de pagos de cupones y dividendos, cambios interés emisiones tipo variable/indicadas, otras  comunicaciones y otros hechos significativos.

 

5.- Datos relevantes de las empresas: cifra de negocio, beneficio antes de impuestos, beneficio después de impuestos, fondos propios, Cash Flow, reservas, dividendos, número medio de empleados, número de acciones, ultimo precio del período, capitalización, nominal.

 

4.2.2.- Mejoras en la red neuronal.

 

            La primera mejora que se puede hacer a la red neuronal del sistema, es permitir la varios tipos de valores en las neuronas de entrada y en las de salida, con lo que se podrá usar toda la potencia de la base de datos.

 

            Además se deberán estudiar otros tipos de redes neuronales que tienen mayor potencia y ver la forma de añadir aspectos relevantes de otras redes a la red del sistema, para aumentar su eficiencia en las predicciones.

 

4.2.3.- Otras herramientas.

 

            Otras herramientas que serie interesante desarrollar con vistas a para poder usar sus resultados en el sistema que se desarrollado, serian:

 

1.- Sistema de obtención de conocimiento, mediante la obtención de reglas.

 

2.- Estudio de los efectos de los periodos temporales en la evolución de las acciones.

 

3.- Desarrollo de librerías de formulas financieras (Ej: indicadores, osciladores, ...) para poder aplicarlas a los datos de la base de datos, obteniendo nuevos datos de entrada para la neuronas.

 

4.- Estudio y desarrollo de algoritmos para los métodos de análisis técnico y análisis fundamental: analizar la forma de pensamiento que indujo a desarrollar esos sistemas y ver cómo pueden ser mejorados mediante variaciones progresivas, es decir, primero se entenderá su funcionamiento para desarrollar el sistema y, después, se irán buscando mejoras o relaciones que permitan sustentar el sistema sobre datos reales. El estudio debe basarse sobre todo en los mecanismos más conocidos como son: gráficos de puntos, gráficos lineales, gráficos de barras, gráficos de volumen de contratación, estudio de indicadores y osciladores, figuras gráficas.

 

 

 


Bibliografía sobre mercados financieros y redes neuronales.

 

            En este apéndice se muestra una extensa lista de los libros más relevantes de bolsa y sobre redes neuronales, separando entre los que se han usado y los que se aconsejan.

 

Bibliografía utilizada

 

Bibliografía utilizada sobre mercados financieros.

 

 

Mercados financieros

 

“Guía del sistema financiero español”. Analistas financieros internacionales. CECA. 1994.

“Diccionario económico, financiero y bursátil”. Cano Rico, J. R. Tecnos. 1994.

“Nuevos instrumentos financieros”. Costa Ran; Font Vilalta. ESIC. 1990.

“Ingeniería financiera”. Díez de Castro; Macareñas. McGraw-Hill. 1994.

“Sistema financiero español”. Gil, G. Banco de España. 1984.

“Curso de bolsa y mercados financieros”. Instituto de analistas financieros. Ariel economía. 1996.

“Manual práctico de los mercados financieros”.

Instituto superior de técnicas y prácticas bancarias. Cinco Días. 1997.

“La información en la sociedad anónima y el mercado de valores”. Valenzuela Garach. Cívitas. 1993.

 

 

Bolsas de valores

 

“La bolsa. Funcionamiento y técnicas para invertir”. Amat, O. Deusto. 1987.

“La manipulación de las cotizaciones en bolsa”. Arroyo. ICAI. 1978.

“La bolsa y sus operaciones”. Cachón Blanco. Dykinson. 1988.

“Problemas actuales de la bolsa”. Núñez Lagos. Ariel. 1977.

 

 

Análisis de los mercados financieros

 

“Operaciones financieras”. Arranz García. Instituto de estudios financieros. 1985.

“Métodos de valoración de empresas”. Caballer, V. Pirámide. 1996.

“Diccionario de cálculo mercantil”. Codera Martín. Pirámide. 1987.

“Análisis técnico bursátil”. Amat, O.; Puig, X. Gestión 2000. 1990.

“Análisis técnico explicado”. Pring, M. J. Gesmovasa. 1989.

 

 

Revistas técnicas especializadas, diarios de información económico-financiera y revistas de difusión y divulgación de economía y finanzas

 

“Cinco días”. Director: Fernando González Urbaneja. Gran Vía, 32, 2 planta, 28013, Madrid.

“Expansión”. Director: Jesús Martínez Vázquez. Recoletos, 1, 28001, Madrid.

“Actualidad económica”. Directora: Ana Pereda. Recoletos, 1, 28001, Madrid.

 

Bibliografia utilizada sobre mercados redes neuronales.

 

 

Redes Neuronales y Lógica difusa

 

"Neural Networks in Finance and Investing". Robert R.Trippi, Efraim Turban. Probus Publishing Company.

"Fuzzy Logic For Business, Finance, and Management". George Bojadziev, Maria Bojadziev. World Scientific.

"Fuzzy Logic and NeuroFuzzy Applications in Business and Finance". Constantin von Altrock. Prencite Hall PRT.

"Building Neural Networks". David M.Skapura. ACM Press.

 

Bibliografía recomendada.

 

Bibliografia recomendada sobre mercados financieros.

 

 

Mercados financieros

 

“Derecho del mercado financiero”. Alonso Ureba; Martínez Simancas; García Villaverde.

Departamento de derecho mercantil de la Universidad Complutense de Madrid. 1994.

“Guía del sistema financiero español”. Analistas financieros internacionales. CECA. 1994.

“Operaciones financieras”. Arranz García. Instituto de estudios financieros. 1985.

“El mercado español de capitales en un contexto internacional”. Berges.

Ministerio de Economía y Hacienda. 1984.

“Diccionario económico y financiero”. Bernard; Colli; Lewandowski.

Asociación para el progreso de la dirección. 1981.

“Manual BISF del asesor financiero”. BISF.

Mercaban y área editorial Expansión. 1992.

“Manual práctico de contratación mercantil”. Cano Rico, J. R. Tecnos. 1993.

“Diccionario económico, financiero y bursátil”. Cano Rico, J. R. Tecnos. 1994.

“Compilación de legislación de mercados financieros y bolsas de valores”. Cano Rico, J. R. BOE. 1996.

“Nuevos instrumentos financieros”. Costa Ran; Font Vilalta. ESIC. 1990.

“Ingeniería financiera”. Díez de Castro; Macareñas. McGraw-Hill. 1994.

“Las anotaciones en cuenta. Un nuevo medio de representación de los derechos”. Espina, D. Cívitas. 1992.

“Sistema financiero español”. Gil, G. Banco de España. 1984.

“Créditos y préstamos internacionales”. Gómez-Rey. Del foro. 1982.

“Curso de bolsa y mercados financieros”. Instituto de analistas financieros. Ariel economía. 1996.

“Nuevos productos financieros”. Instituto de estudios económicos. Servicio de estudios del IEE. 1986.

“Manual práctico de operaciones bancarias”.

Instituto superior de técnicas y prácticas bancarias. Cinco Días. 1996.

“Manual práctico de los mercados financieros”.

Instituto superior de técnicas y prácticas bancarias. Cinco Días. 1997.

“Manual del inversor”. Inversión. Inversor ediciones. 1995.

“Nuevos mercados financieros”. López Arcas. Deusto. 1994.

“Sistema financiero español”. López Roa. Nueva generación. 1981.

“El inversor y los mercados financieros”. Martín; Ruiz. Ariel. 1991.

“El inversor y el patrimonio financiero”. Martín Marín; Ruiz Martínez. Ariel economía. 1992.

“Finanzas internacionales. Activos financieros y no financieros”. Mascareñas; De la Orden; Costa;

Font. Pirámide. 1997.

“Activos y mercados financieros. Las acciones”. Mascareñas Pérez Íñigo; Cachón Blanco. Pirámide. 1997.

“Negocios jurídicos sobre acciones no cotizadas en bolsa”. M. Gómez; M. Rodríguez. Dykinson. 1993.

“El mercado de valores. Organización y funcionamiento”. Nieto Carol. Cívitas. 1993.

“Mercados financieros internacionales”. Ontiveros; Berges; Valero; Manzano. Espasa-Calpe. 1993.

“Manual de sistema financiero español”. Parejo Gámir; C. García; R. Sáiz; Calvo Bernardino. Ariel. 1994.

“Los mercados financieros organizados en España”. Pellicer. Banco de España. 1992.

“Instrumentos financieros al servicio de la empresa”. Pregel; Suñol; Nueno. Deusto. 1991.

“Fiscalidad financiera y bursátil”. Ramírez Medina. CISS. 1993.

“Diccionario de los nuevos negocios financieros”. S.Soufi. I.S. de técnicas y prácticas bancarias. 1994.

“Guía práctica del inversor”. Serra Mallol; Cano & Piquer. Punto Editorial. 1988.

“Diccionario de economía y administración”. Suárez Suárez. McGraw-Hill. 1992.

“Diccionario de economía y finanzas”. Tamames; Gallego. Alianza, 1994.

“El contrato de gestión de carteras de inversión”. T.Hermida. C. documentación bancaria y bursátil. 1995.

“Estudios sobre el sistema financiero”. Torrero. Espasa-Calpe. 1989.

“La gestión de tesorería y los mercados monetarios en la banca”. Valentí Sabaté. Eada Gestión. 1990.

“La información en la sociedad anónima y el mercado de valores”. Valenzuela Garach. Cívitas. 1993.

“Diccionario multilíngüe de economía y empresa”. Verbum. 1994.

“Estudios de derecho bancario y bursátil. Homenaje a Evelio Verdera y Tuells”. La ley. 1994.

“Negocios sobre derechos no incorporados a títulos-valores y sobre relaciones jurídicas especiales”. Cívitas. 1992.

“Nuevas entidades, figuras contractuales y garantías en el mercado financiero”. Cívitas. 1990.

“Las privatizaciones de empresas”. Verges, J. Gestión 2000. 1993.

 

 

Bolsas de valores

 

“La bolsa en España y en el mundo occidental”. Aguirre, J. A. Instituto de estudios fiscales. 1976.

“La bolsa. Funcionamiento y técnicas para invertir”. Amat, O. Deusto. 1987.

“La bolsa española: marco institucional”. Ariño Ortiz; Sala Arquer.

Centro de documentación bancaria y bursátil. 1987.

“La manipulación de las cotizaciones en bolsa”. Arroyo. ICAI. 1978.

“La bolsa en el mundo”. Bartolomé Laborda. Deusto. 1980.

“La bolsa y su entorno”. Bartolomé Laborda. Deusto. 1977.

“Comportamiento bursátil de los bancos españoles”. Berges; Soria. Cívitas. 1992.

“Derecho del mercado de valores”. Cachón Blanco. Dykinson. 1992.

“La bolsa y sus operaciones”. Cachón Blanco. Dykinson. 1988.

“Escritos sobre la bolsa de valores”. Cachón Blanco. Actualidad editorial. 1990.

“Escrito jurídico y bursátil de los valores negociables en bolsa”. C. Blanco. Actualidad editorial. 1990.

“Las bolsas de valores en España”. Cachón Blanco. Gesmadrid. 1990.

“Cien preguntas sobre la bolsa de valores”. Cachón Blanco. Dykinson. 1992.

“Los contratos de dirección, colocación, aseguramiento y asesoramiento de emisiones y ofertas públicas de venta de valores”. Cachón Blanco. Dykinson. 1996.

“Mediación, fe pública y derecho bursátil”. Cano Rico, J. R. Tecnos. 1982.

“Compilación de legislación de mercados financieros y bolsas de valores”. Cano Rico, J. R. BOE. 1996.

“Manual de la inversión en bolsa”. Cano Rico, J. R. Inversor ediciones. 1996.

“Manual de contratación mercantil”. Cano Rico, J. R. Tecnos. 1993.

“Código de las leyes de agentes mediadores, bolsa y mercado de valores”. Cano Rico, J. R. Tecnos. 1982.

“Diccionario económico, financiero y bursátil”. Cano Rico, J. R. Tecnos. 1994.

“Nueva legislación del mercado de valores”. Comisión nacional del mercado de valores. CNMV. 1993.

“Cómo funciona la bolsa”. Duplat. Paraninfo. 1987.

“Las operaciones bursátiles a crédito en las bolsas españolas”. Endemaño Aróstegui. Marcial Pons. 1993.

“Inversión en bolsas extranjeras”. Espinós de Motta. Litos. 1995.

“Cómo invertir en la nueva bolsa”. Fabregat & Bermejo. Área editorial. 1990.

“La bolsa: su técnica y organización. Cómo operar en el mercado de valores”. Fernández Amatriain. Deusto. 1972.

“La introducción de empresas a bolsa”. Fondevila Roca. Bolsa de Barcelona. 1987.

“Las operaciones bursátiles a plazo. Principios y técnicas”. Fondevila Roca. Bolsa de Barcelona. 1977.

“La comisión nacional del mercado de valores”. Fuertes López. Lex nova. 1994.

“La opa obligatoria”. García de Enterría. Cívitas. 1996.

“Diccionario de bolsa”. Garmendía Miangolarra. Pirámide. 1971.

“Curso de bolsa y mercados financieros”. Instituto español de analistas financieros. Ariel Economía. 1996.

“Los mercados de valores en la CEE. Derecho comunitario y adaptación al derecho español”. Izquierdo, M. Cívitas. 1992.

“Derecho público del mercado de valores”. Jiménez Blanco. Centro de estudios Ramón Areces. 1991.

“La bolsa en Europa”. López Arcas. Deusto. 1991.

“Cómo invertir en bolsa”. Mora, F.; Romero, M. Ediciones B. 1991.

“El sistema de crédito en las operaciones bursátiles de contado”. Muñiz Rodríguez,

P. Quiles Artes Gráficas. 1996.

“El mercado de valores. Organización y funcionamiento”. Nieto Carol. Cívitas. 1993.

“Problemas actuales de la bolsa”. Núñez Lagos. Ariel. 1977.

“El uso ilegal de la información privilegiada en las ofertas públicas de adquisición de acciones”.

Prat Rodrigo. Deusto. 1990.

“Los contratos bursátiles”. Ruiz Cabrero. Centro de documentación bancaria y bursátil. 1987.

“El crédito al comprador y vendedor en operaciones bursátiles de contrato”. Ruiz Cabrero.

Bolsa de Barcelona. 1987.

“Cómo invertir en bolsa”. Sobremazas, J. Paraninfo. 1991.

“El mercado español de valores: análisis económico”. Solé Vilallonga. Fórum Universidad Empresa. 1978.

“El comportamiento de la bolsa española en el período 1960-1979. Teoría y evidencia”. Suárez Guinjoán. Bolsa de Barcelona. 1982.

“Estudio sobre el mercado de valores”. Terceiro, J. Ecinex. 1988.

“Coloquio de derecho bursátil”. Instituto de estudios bancarios y bursátiles. 1970.

“Contratos sobre acciones”. Consejo general de los colegios de corredores-Cívitas. 1994.

“Curso práctico de bolsa”. Inversor ediciones. 1996.

“La bolsa. Introducción al sistema bursátil”. Weber, M. Ariel. 1993.

“La oferta pública de adquisición”. Zurita y Sáinz Navarrete. Bolsa de Madrid. 1980.

 

 

Análisis de los mercados financieros

 

“Análisis de balances (integración e interpretación)”. Álvarez López. Donostiarra. 1974.

“Contabilidad y finanzas para no financieros”. Amat, O. Deusto. 1987.

“Análisis económico-financiero”. Amat, O. ELTF. 1984.

“Las fusiones y la valoración de empresas”. Angenieux, G. ICE. 1976.

“Operaciones financieras”. Arranz García. Instituto de estudios financieros. 1985.

“Matemáticas financieras”. Ayres, F. Jr. McGraw-Hill. 1967.

“Cómo valorar una empresa”. Barnay; Calba. Francisco Casanovas. 1977.

“Comportamiento bursátil de los bancos españoles”. Berges; Soria. Cívitas. 1992.

“Matemática de las operaciones financieras”. Bonilla; Ivars. AC. 1994.

“Métodos de valoración de empresas”. Caballer, V. Pirámide. 1996.

“Diccionario de cálculo mercantil”. Codera Martín. Pirámide. 1987.

“Diccionario de contabilidad”. Codera Martín. Pirámide. 1990.

“Diccionario de informes financieros”. Coopers & Lybrand. Expansión. 1990.

“Matemática financiera”. Delgado; Palomero. Palomero. 1984.

“Opciones y valoración de instrumentos financieros”. Fernández, P. Deusto. 1991.

“Cómo interpretar un balance”. Fernández Elejaga; Navarro Viota. Deusto. 1980.

“Diccionario de auditoría”. Fernández Peña. Semsa Distribuciones. 1989.

“El diagnóstico financiero de la empresa”. Fondevila Roca. Ariel. 1985.

“Análisis y gestión de carteras de valores”. Francis; Archer. ICE. 1977.

“Matemática de las operaciones financieras”. Gil Peláez. AC. 1991.

“Valoración de acciones en la bolsa española”. Gómez Bezares; Madariaga; Santibáñez.

Desclée de Brouwer. 1994.

“Enfoque práctico de las operaciones de la matemática financiera”. González Catalá. Tébar Flores. 1983.

“Análisis de las operaciones financieras, bancarias y bursátiles”. González Catalá. Ciencias sociales. 1995.

“La empresa española y su financiación”. Gutiérrez, F.; Fernández, E. Banco de España. 1985.

“Curso práctico de análisis fundamental”. Inversión. Inversor Ediciones S. L. 1997.

“Valoración de la empresa”. Jaensch, G. Ariel. 1974.

“Los activos de renta fija. Valoración y principios de gestión”. Lamothe, P.; Prieto, F. B. de Madrid. 1991.

“Acciones y derechos de suscripción”. Larriba, A. Instituto de planificación contable. 1982.

“Cobertura de riesgos de interés y de cambio”. López Domínguez. ISTP. 1995.

“La gestión financiera”. Loring, J. Deusto. 1994.

“El inversor y el patrimonio financiero”. Martín Marín; Ruiz Martínez. Ariel Economía. 1992.

“La operativa de los mercados financieros: casos prácticos”. Martín; Martín; Oliver; De la Torre.

Ariel Economía. 1995.

“Análisis de estados contables: comentarios y ejercicios”. Martínez García. Pirámide. 1996.

“Inversiones y riesgos financieros”. Mauleón, Y. Espasa Calpe. 1991.

“Análisis y gestión del riesgo de interés”. Meneu; Navarro; Barreira. Ariel. 1992.

“Matemática financiera”. Miquel Peris. Del autor. 1984.

“La rentabilidad como criterio de inversión”. Nieto del Alba, U. Bolsa de Madrid. 1973.

“Manual para la evaluación de inversiones”. ORPI. Barcelona. 1993.

“Valoración de empresas”. Pourbaix, C. Ibérico-europea de ediciones. 1971.

“Los métodos americanos de valoración de empresas”. Riebold, G. ICE. 1977.

“Introducción a la financiación empresarial y al análisis bursátil”. Romero, C. Alianza. 1989.

“Análisis de valores mobiliarios”. Rosenfeld, F. Hispano europea. 1967.

“La viabilidad financiera de la empresa”. Ruiz Martínez. Hispano europea. 1990.

“Manual práctico de valoración de empresas”. Santandreu Martínez. EADA Gestión. 1990.

“Manual de análisis fundamental”. Santodomingo, A. Inversor ediciones. 1995.

“Decisiones óptimas de inversión y financiación de la empresa”. Suárez, A. Pirámide. 1987.

“Economía financiera de la empresa”. Suárez, A. Pirámide. 1981.

“Curso de matemática financiera”. Vázquez. Pirámide. 1996.

“Matemática de la financiación e inversión”. Villalón, J. G. Pirámide. 1997.

“Manual para la aplicación de ratios de gestión”. Westwick, C. A. Deusto. 1986.

“La modelización de la volatilidad del mercado bursátil español”. Alonso, F.

Banco de España, documentos de trabajo n1 9507.

“La remuneración de la volatilidad en el mercado español de renta variable”. Alonso, F.; Restoy, F.

Banco de España, documentos de trabajo n1 9508.

“Análisis técnico bursátil”. Amat, O.; Puig, X. Gestión 2000. 1990.

“La teoría del ‘random walk’ y su contrastación en el mercado bursátil español”. Casanovas Ramón, M. Bolsa de Barcelona. 1978.

“Enciclopedia mundial de los indicadores técnicos del mercado”. Colby, R. W.; Meyers, T. A. Gesmovasa.

“Análisis técnico del mercado de valores español”. De Andrade, R. Gaceta de los negocios. 1993.

“El principio de la onda de Elliot: la clave para obtener beneficios en bolsa”. Frost & Pretcher. Gesmovasa.

“Valoración de acciones en la bolsa española”. Gómez Bezares; Madariaga; Santibáñez.

Desclée de Brouwer. 1994.

“Mercados financieros y gestión de carteras de valores”. Jacquillat, B.; Solnik, B. Tecnibán. 1975.

“Un paseo aleatorio por Wall Street”. Maikiel, B. G. Alianza editorial. 1997.

“Innovación y volatilidad en los mercados financieros”. Miller. Madrid. 1994.

“Análisis técnico de los mercados de futuros”. Murphy, J. J. Gesmovasa. 1990.

“Análisis técnico explicado”. Pring, M. J. Gesmovasa. 1989.

“Teoría de cartera y del mercado de capitales”. Sharpe, W. F. Deusto. 1976.

“Cómo pueden proporcionarle dinero los gráficos”. Stewart, T. H. Gesmovasa. 1988.

“Psicología del mercado bursátil”. Tvede, L. Deusto. 1993.

“Nuevos conceptos sobre sistemas técnicos de operación en bolsa”. Welles Wilder, Jr. Gesmovasa. 1988.

 

 

Revistas técnicas especializadas, diarios de información económico-financiera y revistas de difusión y divulgación de economía y finanzas

 

“Actualidad financiera”. La ley

Actualidad. Monterrey, 1, carretera de la Coruña, km. 17,200, 28230, Las Rozas (Madrid).

“Análisis financiero”. Instituto español de analistas financieros.

 Paseo de la Habana, 12, 11 derecha, 28036, Madrid.

“Boletín económico”. Banco de España, sección de publicaciones. Alcalá, 50, 28014, Madrid.

“Boletín estadístico”. Banco de España, sección de publicaciones. Alcalá, 50, 28014, Madrid.

“Central de anotaciones en cuenta”. Banco de España, sección de publicaciones.

Alcalá, 50, 28014, Madrid.

“Cuadernos de derecho y comercio”. Consejo general de los colegios oficiales de corredores de comercio. Núñez de Balboa, 11, 28001, Madrid.

“Información comercial española. Revista de economía”. Ministerio de economía y hacienda.

Paseo de la Castellana, 162, planta 16, 28046, Madrid.

“Revista de derecho bancario y bursátil”. Centro de documentación bancaria y bursátil.

Valverde, 32, 28004, Madrid.

“Suplementos sobre el sistema financiero. Papeles de economía española”. Fundación fondo para la investigación económica y social de la confederación española de cajas de ahorro.

Padre Damián, 48, 28036, Madrid.

“Boletín de bolsa, economía y finanzas”. Director: Tomás L. Tárrago.

Alameda de Mazarredo, 31, 48009, Bilbao.

“Cinco días”. Director: Fernando González Urbaneja. Gran Vía, 32, 2 planta, 28013, Madrid.

“Expansión”. Director: Jesús Martínez Vázquez. Recoletos, 1, 28001, Madrid.

“Gaceta de los negocios”. Director: Jesús Rivasés. Paseo de la Castellana, 36-38, 28046, Madrid.

“Actualidad económica”. Directora: Ana Pereda. Recoletos, 1, 28001, Madrid.

“Ahorro”. Director: Carlos Balado García. Alcalá, 27, 28014, Madrid.

“Ausbanc”. Directora: María Victoria del Pozo Vindel. Marqués de Urquijo, 7, 11, 28008, Madrid.

“Banca 15”. Director: Ángel Gómez Escorial. Avenida Cardenal Herrera Oria, 167, bajo, 28034, Madrid.

“Dinero”. Directora: Marisa Navas. Paseo de la Castellana, 36-38, 28046, Madrid.

“Economistas”. Director: Emilio Ontiveros Baeza. Flora, 1, 28013, Madrid.

“El economista”. Director: Carlos Humanes Fernández. Bárbara de Braganza, 11, 11, 28004, Madrid.

“El mundo financiero”. Director: José L. Barceló Mezquita. Hermosilla, 93, 11, 28001, Madrid.

“El nuevo lunes”. Director: José García Abad. Plaza de España, 18, 3/11, 28008, Madrid.

“Estrategia financiera”. Director: Juan J. González Ortiz. Orense, 39, 28020, Madrid.

“Futuro”. Director: Basilio Rogado Adalia. Plaza de Cataluña, 4, 11C, 28002, Madrid.

“Inversión”. Director: Rafael Rubio Gómez Caminero. Miguel Yuste, 26, 28037, Madrid.

“Nueva empresa”. Director: Miguel de Haro Serrano. Núñez Morgado, 9, 11A, 28036, Madrid.

“Ranking”. Director: Alfonso Pajuelo. Julián Camarillo, 29, d-1, 28037, Madrid.

 

Bibliografia recomendada sobre mercados redes neuronales.

 

 

Redes Neuronales y Lógica difusa

 

“Neuronal networks and natural intelligence”. Grossberg Stph. The MIT press. 1988.

"Neural Networks in Finance and Investing". Robert R.Trippi, Efraim Turban. Probus Publishing Company.

“Perceptrons”. Minsky, P. Papert, S. 1986.   

“IEEE first int conf. on neural networks”. Caudill, M.; Butler, Ch. IEEE. 1987.

“Self-organization and associative memory”. Kohonen, T. 1988.

“Neural computing. Theory and practice”. Wasserman F. Ph. Van Nostrand. 1989.

“Neurocomputing”. Anderson, A. J.; Rosenfeld, E. The MIT press. 1988.

“Simulated annealing and boltzmann machines”. Aarts-Korst. Wiley & Sons. 1988.

"Fuzzy Logic For Business, Finance, and Management". George Bojadziev, Maria Bojadziev. World Scientific.

"Fuzzy Logic and NeuroFuzzy Applications in Business and Finance". Constantin von Altrock. Prencite Hall PRT.

“Proc of int. c. on fuzzy logic & neural network”. 1990.

“Tutorials of int. c. on fuzzy logic & neural network”. 1990.

“Artificial neural networks: theoretical...”. Vemuri, V. IEEE. 1988.

“Neural networks for computing”. Denker, S. J. AML of physic. 1986.

“Artificial neural systems”. Simpson, K. P. Pergamon Press. 1990.

“Adaptive pattern recognition and neural networks”. Pao, Y. H. Addison Wesley. 1989.

“Neural networks. An introduction”. Moeller, B.; Reinhardt, J. Springer Verlag. 1991.

“Introduction to the theory of neural comp.”. Hertz, J.; Krogh, A.; Palmer, G. R. Addison Wesley. 1991.

“Advances in neural information processing system 3”. Lippmann; Moody; Touretzky. Kaufmann. 1991.

“Artificial N. Networks and statistical pattern recognition”. Sethi, K. L.; Jain, K. A. North-Holland. 1991.

“Artificial neural network”. A. Prieto. Springer Verlag. 1991

“Recursive neural networld for associative memory”. Kamp, Y.; Master, M. Wiley. 1990.

“Progress in neural networks”. Omidvar, M. O. Ablex. 1991.

“Neural networks and fuzzy systems”. Kosko, B. Prentice-Hall. 1992.

“Advances in neural information processing system 2”. Touretzky, S. D. Kaufmann. 1990.

“Neural network architectures”. Dayhoff, J. Van Nostrand. 1990.

“Neural computing. An introduction”. Beale, R.; Jackson, T. Adam Hilger. 1990.

“Neural networks in artificial intelligence”. Zeidenderg, H. Ellis. 1990.

“Neural networks for signal processing”. Kosko, B. Prentice-Hall. 1992.

“Redes neuronales”. Departament d’enginyeria electronica. U. P. C. 1991.

“A practical guide to neural nets”. M. M. Nelson; W. T. Illingworth. Addison-Wesley. 1991.

“N.N. for vision, speech and natural language”. Linggard; Myers; Nightingale. Chapman & Hall. 1992.

“Neurocomputing”. Hecht-Nirlsen, H. Addison Wesley. 1992.

“Artificial neural networks”. E. Sánchez-Sinencio; C. Lau. IEEE. 1992.

“Neural networks”. C. Lau. IEEE. 1992.

“Neural networks experiments on personal computer and workstations”. G. A. Korn. MIT press. 1991.

“Neurocomputing 2”. Anderson, A.; Pellionisz, A.; Rosenfeld, E. MIT press. 1990.

“Neural networks for control”. W. T. Miller; R. S. Sutton; P. J. Werbos. MIT press. 1990.

“Understanding neural networks: computer explorations”. M. Caudill; C. Butler. MIT press. 1992.

“Competitively inhibited en net for adaptive ...”. Michael Lemmon. Kap. 1991.

“Neurocibernética. Teoría retinal y visión artificial”. Moreno Díaz, R. 1985.

“Introduct. to biological and artificial neural networks”. S. K. Rogers and M. Kabrisky. Spie Press. 1991.

“Introducing neural networks”. Alison Carling. Sigma. 1992.

“Neural nets: a theory for brains and machines”. A. F. Rocha. Springer-Verlag. 1992.

“Modular learning in neural networks”. Tomas Hrycej. Wiley-Intersci. 1992.

“1993 IEEE international conference on neural networks”. IEEE service center. IEEE. 1993.

“Pattern recognition: statistics, structure, neural approaches”. Robert Schalkoff. Wiley. 1992.

“Artificial neural networks: concepts and theory”. Pankaj Mehra, Benjamin. W. IEEE Press. 1992.

“Digital neural networks”. S. Y. Kung. Prentice Hall. 1993.

“Neural networks: advances and applications”. E. Gelenbe. North Holland. 1992.

"Building Neural Networks". David M.Skapura. ACM Press.

“Intellig. control: aspects of fuzzy logic and N.N.”. Harris, C.J.; Moore, C.G.; Brown, M.World Sci. 1993.

“Neural networks in vision and pattern recognition”. Skrypek, J.; Karplus, W. World Sci. 1992.

“Neural networks for statistical modeling”. Smith, Murray. Van Nostran R. 1993.

“Application of neural networks to modeling and control”. Pag; Gomm; Williams. Chapman & Hall. 1993.

“Advanced methods in neural computing”. Wasserman, Philip. Van Nostrand. 1993.

“Practical neural network recipes in C++”. Masters, Timothy. Academic Press. 1993.

“Advances patterns recognition systems using neural networks”. Guyon; Wang. World scientifics. 1993.

“Machine learning, neural and statistic classification”. Michie, et all. Ellis Horwood. 1994.

“Proceedings of IEEE in neural networks”. IEEE neural networks council. IEEE. 1994.

“Simulation neural networks”. Freeman, J. A. Addison-Wesley. 1994.

“N. networks for optimization and signal processing”. Cichocki, Unbehauen. John Wiley & Sons. 1994.

“Neural fuzzy control systems with structure and parameter ...”. Lin, C. T. World scientific. 1994.

“Neural network and fuzzy logic applications in C/C++”. Welstead, Stephen T. Wiley. 1994.

“Machine learning: neural networks, genetic algorithms”. Adeli, H; Hung, S. L. John Wiley. 1995.

“Neural networks principles”. Robert L. Harvey. Prentice-Hall. 1994.

“Fundamentals of neural networks”. Laurene Fausset. Prentice-Hall. 1994.

“Design and development of expert systems and neural networks”. Larry, Jay. Macmillan. 1994.

“A vision of the brain”. Semir Zeki. Arnette Blackw. 1995.

“Eye, brain and vision”. D. H. Hubel. Scientific Ame. 1995.

“Artificial neural networks”. Dan W. Patterson. Prentice-Hall. 1995.

“Modeling brain function”. Daniel J. Amit. Cambridge. 1989.

“Brains, machines & mathematics”. Arbib. Springer Verlag. 1987.

“Eye and brain”. Gregory. Windenfeld. 1990.

“The computacional brain”. Churland, Sejnowski. MIT Press. 1992.

“The brain makers: the quest for machines that think”. Newquist, H. Sams Publi. 1994.

“Redes neuronales (algoritmos, aplicaciones, programas)”. J. A. Freeman; D. M. Skapura. Addison-Wesley & Díaz Santos. 1991.

 

 


Ultima actualización, el 01 de Septiembre de 2008