Un modelo de predicción para el valor TRM: Un acercamiento

Anuncio
Un modelo de predicción para el valor TRM:
Un acercamiento desde las redes neuronales
artificiales
Mauricio Ayala Sánchez*
Escuela de Matemáticas
Universidad Sergio Arboleda
Bogotá, Colombia.
Ruben Dario Castillo Serna**
Departamento de Administración y Finanzas
Universidad del Valle
Cali - Colombia.
Resumen
Se presenta un modelo de predicción a un dı́a del mercado de divisas en Colombia,
basado en Redes Neuronales Artificiales (RNA), el cual logró “entender” y predecir
eficientemente el mercado. Y aunque el modelo reportó resultados de entrenamiento
óptimo similares tanto en una serie con 20 dı́as precedentes, como en una serie con solo
5 dı́as precedentes al valor de la predicción, la red neuronal con 5 entradas reporto una
eficiencia de validación del 90 % comparado con una eficiencia del 44 % en el otro caso
(Todo esto, en el mismo conjunto Test y con un error de aprendizaje inferior al 1 %).
En ambos casos fue más importante y sensible a la predicción el valor TRM del dı́a
anterior, cuantificadores que decrecen en la medida que los dı́as se alejan hacia atrás del
dı́a a predecir. Adicionalmente, usando la red con 5 entradas se mostró que el modelo de
RNA es mucho más eficiente para hacer predicciones a 1 dı́a que a 50 dı́as seguidos; con
una eficiencia promedio de 48 % y 28,5 % en el primer y segundo caso respectivamente
y un error de aprendizaje inferior o igual al 2 %.
Por otro lado, se buscó una validación (según RNA) del análisis técnico en el mercado local de divisas, usando como valor output el precio de cierre del dolar en un dı́a
transaccional y como inputs: el dı́a y mes de la predicción, apertura, mı́nimo, máximo,
cierre, monto transado y número de operaciones de los tres dı́as inmediatamente anteriores. Se encontró que el parámetro significativamente más relevante para la predicción
fue el precio de cierre del dı́a anterior, aún ası́ el modelo de RNA mostró ser coherente
con el análisis de velas. Siendo muy interesante el 3er. lugar de importancia que la RNA
*
**
E-mail: mauricio.ayala@usa.edu.co
E-mail: rcastillo@uniweb.net.co
Mauricio Ayala Sánchez, Ruben Dario Castillo Serna
le da al mes o época del año, indicándonos que el mercado por lo regular tiene una
tendencia según la época del año. Sin embargo, tuvo poca o casi ninguna relevancia el
monto y el número de operaciones hechas en los 3 dı́as anteriores, lo cual significa que “el
volumen no necesariamente sigue la tendencia”. Aquı́ se usó una base de datos sobre los
históricos que van desde enero/1995 hasta junio/2004 para un total 2271 dı́as de análisis.
Palabras claves: Redes Neuronales Artificiales, Predicción en series de tiempo, Valor
TRM.
1.
Introducción
En la actualidad, las Redes Neuronales Artificiales o RNA, se reconocen como una de las
herramientas matemáticas de uso computacional que mejores resultados presenta a la hora
de modelar un problema, ya sea de:
Aproximación de funciones: como el diagnóstico y control de maquinaria, en el control
del piloto automático de una aeronave, o en el control de un robot, etc.
Clasificación: como el diagnóstico médico, reconocimiento de caracteres, detección de
fraude o clasificación de riesgo crediticio, etc.
Predicción de series de tiempo: como la predicción del mercado de capitales, quiebra
bancaria, predicción de ventas, predicción del consumo energético, etc.
Procesamiento de datos: en filtrado de ruido o encriptando información, etc.
En particular son las redes perceptrón multicapa o rpm las que han mostrado resultados
satisfactorios en la economı́a, como es el caso de la predicción del mercado de valores[3, 4,
10, 14], la clasificación de riesgo crediticio[6], en el análisis de solvencia de una compañı́a[7],
predicción de la quiebra bancaria[13], ası́ como su aplicación en modelos de inflación en la
economı́a colombiana[8, 9].
A pesar que, la idea de RNA surgió por McCulloch & Pitts en 1943, esta técnica solo vino
a tener una fuerte aplicación en problemas concretos en la última década, debido en parte
al creciente desarrollo en los 90‘s de las computadores, las cuales hicieron posible implementar estos modelos. Y aunque se tiene indicios de que la mayorı́a de las aplicaciones que
se desarrollan con RNA pueden ser desarrolladas con los métodos estadı́sticos standard[12],
estos modelos han mostrado que pueden ser superiores a otras técnicas de análisis multivariado, llegando a mejores resultados de predicción que otros métodos estandard[2, 9, 16].
Esto debido a que las RNA se pueden adaptar muy bien tanto a problemas lineales, como
en problemas no lineales, y es aquı́ donde las RNA tiene un potencial que otros modelos
no poseen. Además, la técnica de redes neuronales tiene un atractivo que las hace aún
más interesantes y es su habilidad para aprender, re-aprender y generalizar el conocimiento
adquirido a nuevas observaciones, es decir este es un modelo que tiene memoria. Por otro
164
Un modelo de predicción para el valor TRM
lado, las RNA consideran a cada conjunto de parámetros de un objeto de estudio, como
una unidad que debe ser reproducida, y correlacionado con sus semejantes, a diferencia de
los modelos tradicionales que se enfocan solo en la correlación entre parámetros y no entre
objetos de estudio.
Cuando se aplica un modelo de aprendizaje supervisado de una RNA a un conjunto de
datos, estos se dividen en dos grupos separados: un conjunto de datos de entrenamiento y
un conjunto de test que validará el modelo. En su mayorı́a, las aplicaciones de RNA en series
de tiempo, los datos son distribuidos en perı́odos separados y prolongados, lo cual aumenta
la probabilidad de error, dado que las condiciones del mercado están variando dı́a a dı́a y
no siempre es posible saber con precisión como va a ser el mercado la semana siguiente o
el mes siguiente. Aquı́, nosotros consideramos que esto no tiene mucho sentido y nuestro
planteamiento es hacer predicciones a muy corto plazo (un dı́a, una semana, etc.) de tal
manera que se reduzca el error y el modelo ofrezca una utilidad práctica para el mercado.
Siendo las RNA un método de “caja negra”, las redes neuronales son una herra-mienta
adecuada para encontrar una relación causal entre diferentes parámetros. En particular
pueden ser muy útiles para encontrar las variables de predicción relevantes en una serie
de tiempo financiera, ya que no asumen alguna estructura de la economı́a, su objetivo
primordial antes que suponer cualquier relación funcional preconcebida, es encontrar una
relación causal entre los parámetros de entrada y la salida deseada.
Por un lado se puede pensar que una serie de tiempo de un mercado de valores es algo
que tiene un comportamiento no predecible; no siempre es posible saber con anticipación
que va a suceder un tiempo después. Sin embargo, la existencia de métodos de análisis
bursatil son un claro indicio que existe un comportamiento subyacente en los mercados de
valores, al describir las tendencias implı́citas. Por consiguiente surge la pregunta de ¿cual
es el caracter dominante en un mercado de valores?, en particular el mercado colombiano,
el cual nos corresponde. Con este interrogante a resolver, tomamos el mercado de divisas
en Colombia como objeto de estudio, que es uno de los items en el mercado bursatil con
mayor liquidez, y de mayor relevancia en las exportaciones colombianas. Con este propósito,
usando la técnica de redes neuronales, estudiamos aquı́ el comportamiento del valor TRM
(Tasa Representativa del Mercado)1, además del precio de cierre del dólar en el mercado
regulado.
165
Mauricio Ayala Sánchez, Ruben Dario Castillo Serna
2.
Redes perceptrón multicapa
Por analogı́a con las redes neuronales celulares, las RNA consisten de un conjunto finito
de unidades interconectadas entre si, llamadas neuronas. Cada neurona Ni es modelada
por un conjunto de datos de entrada Yj , los cuales tendrán cada uno un peso Wij que nos
indica el factor de importancia de conexión entre la neurona i con la neurona j. Asociado
a una neurona Ni siempre hay valor de salida Yi que podrı́a ser la entrada a otra neurona
o el valor de salida de la red neuronal (respuesta de la red), el cual se encuentra al evaluar
la función de activación f (Si ), donde Si es definido como la suma de un valor bias θi
(factor de corrimiento) más la suma de todos las entradas a la neurona multiplicados por
los correspondientes pesos sinápticos, es decir
X
Si =
Yj Wji + θi
j
La función de activación puede tener múltiples formas, una de las más utilizadas es la función
sigmoidal (ver [11] para más detalles) Al construir una red neuronal, esta debe poseer un
conjunto de neuronas que recibirán los parámetros de entrada (input), y un conjunto de
neuronas que reportarán el valor predicho (output). La literatura clasifica las RNA en dos
tipos:
Recurrentes: Pueden haber neuronas que son ambos: input & output. Ej. Redes autoasociadas (estas pueden presentar un comportamiento caótico). Ver figura 3.
Dirigidas: Las neuronas input son diferentes de las neuronas output y la información
siempre viaje unidireccionalmente de las neuronas input a las neuronas output. Ej.
Redes perceptrón. Ver figura 3.
Las estructuras de RNA más estudiadas y usadas en diferentes problemas, son las redes
perceptrón debido a su estabilidad y a su eficiencia para minimizar el error. Estas pueden
ser simples o multicapas (rpm), y se caracterizan porque sus neuronas están dispuestas en
capas o niveles, siendo la primera capa, la capa de entrada de datos o neuronas input, la
última capa representa las neuronas de salida o output, y entre estos se encuentran (si las
hay) las capas ocultas o hidden. En estas topologı́as las neuronas input están conectados
con la primera capa oculta (si la hay), la cual conecta con la segunda capa oculta (si la hay)
y ası́ sucesivamente hasta las neuronas output.
Las RNA adquieren el conocimiento a través de un proceso de instrucción, que puede ser
de dos formas:
1
La TRM se calcula como el promedio ponderado de las operaciones de compra y venta de dólares sin
incluir las operaciones de ventanilla (conocidas como aquellas que se realizan en el next day o mercado de
compra y venta de dólares que funciona entre las 14:30 y 16:30 horas) y de derivados sobre divisas que llevan
a cabo los establecimientos de crédito (sin incluir las compañı́as de financiamiento comercial) en las cuatro
principales ciudades del paı́s (Bogotá, Medellı́n, Cali y Barranquilla). ver[15]
166
Un modelo de predicción para el valor TRM
Supervisado: cada conjunto de parámetros de entrada tiene asociado un conjunto
de parámetros de salida deseado (un profesor). De otra manera, después del entrenamiento, la RNA debe reportar la salida deseada para cada conjunto de parámetros
de entrada.
No supervisado: Los datos son distribuidos en una malla n-dimensional, de tal forma
que después del entrenamiento cada conjunto de observación se ubicará al lado de
sus semejantes, es decir al lado de aquellos elementos con quienes las diferencias sean
mı́nimas.
En nuestro caso, el cual es un problema de predicción en series de tiempo, el aprendizaje
supervisado es el que mejor se adapta a nuestras necesidades, debido a que siempre es posible
disponer de un conjunto “profesor”. Este aprendizaje se obtiene al minimizar la función de
Error cuadrático medio:
1X
E=
(d0 − Y0 )2,
2 p
siendo d0, Y0 respectivamente el valor deseado y el valor output de la RNA para cada caso
de estudio p. Tenga en cuenta que Y0 depende de la salida de las neuronas que le preceden
y de los pesos de conexión correspondientes, valores (salidas) que a su vez dependen de la
salida y peso de conexión con las neuronas precedentes y ası́ sucesivamente hasta los valores
input. Luego, son los pesos Wij de la conexión interneuronal junto con los parámetros θi ,
los usados para obtener el conocimiento, ya que estos son los únicos valores libres en la red;
estos representan la memoria de una red neuronal artificial que ha sido entrenada.
Por lo tanto, minimizar la función Error significa buscar unos valores Wij , θi para cada
neurona que logren este objetivo, lo cual se logra después de un número finito de ciclos de
entrenamiento. Esto conlleva a la siguiente perturbación que se itera para los valores Wij
en cada ciclo,
∆Wij+ = γδj Yi + α∆Wij− ,
(1)
siendo ∆Wij− la iteración anterior y ∆Wij+ la iteración siguiente2. Tenga en cuenta que en el
primer ciclo de entrenamiento no hay una iteración precedente, por lo tanto ∆Wij− = 0. Los
parámetros γ y α normalizados entre [0, 1], son una rata de aprendizaje y un momentum
respectivamente3 .
2
La primera parte del lado derecho de la ecuación (1) se obtiene al aplicar la condición
+
= −γ∂Wij E,
∆Wij
la cual es una condición de gradiente que nos indica la dirección en que la función Error se minimiza. La
segunda parte, es una factor de corrección que mantiene una memoria de la dirección de minimización en
los parámetros Wij , esto debido a deformaciones locales o falsos mı́nimos que pueda tener la función Error.
3
El parámetro γ se puede interpretar como: que tan aprisa queremos que la red aprenda o avance en
la dirección de minimización. Por lo tanto, si este coeficiente toma valores cercanos a 1, significa que la
red intentará asimilar el conocimiento lo más rápido posible con el inconveniente que puede aprender no
167
Mauricio Ayala Sánchez, Ruben Dario Castillo Serna
Aquı́ δj toma valores diferentes si se aplica a una neurona input, hidden u output. Por
ejemplo, tomando como función de activación la función sigmoidal, se tiene que:
δo = (do − Yo )Yo (1 − Yo ),
(2)
si el peso Wij que se modifica conecta a una neurona output. Si Wij conecta dos neuronas
hidden o una neurona hidden con una neurona input, entonces se aplica la siguiente regla,
para el caso de la función sigmoidal
δh = Yh (1 − Yh )
No
X
δo Who
(3)
o=1
Esta regla se conoce como la regla “Back-propagation” (ver detalles en [11]). Tenga en
cuenta que si la red neuronal alcanza un aprendizaje completo en el n-ésimo ciclo (es decir
d0 = Y0 ), se tiene entonces que las ecuaciones (2), (3) toman valor cero y por lo tanto
∆Wij+ = 0, lo cual indica que el entrenamiento se ha terminado.
3.
Modelo
La predicción de series de tiempo, es algo que ha ocupado mucho a investigadores de distintas disciplinas, pero son las series de tiempo financieras las que más interés obtienen,
en parte debido a la complejidad de los sistemas financieros, y a la alta no-linealidad de
su comportamiento fluctuante y a veces “caprichoso”. Sin embargo, las RNA han tenido
aquı́ un éxito que otras técnicas no han logrado. Diferentes modelos de redes neuronales
han sido desarrollados para la predicción de mercados, algunos se enfocan en la predicción
del precio futuro de un valor o en modelar la rentabilidad de una acción, otros son aplicados para reconocer ciertos patrones de precios del mercado. Sin embargo, aunque una
RNA tenga la habilidad de entender el comportamiento de una secuencia (aprender) y de
predecir la serie un tiempo después, el aprendizaje y la predicción no necesariamente están
relacionados entre si. Se han encontrado secuencias caóticas que pudieron ser aprendidas
pero no predichas, y secuencias cuasiperiódicas que pudieron ser predichas pero no aprendidas por una RNA[5], aunque este no ha sido el caso en muchos estudios aplicados a la
economı́a[3, 4, 10, 14].
Para nuestro modelo de predicción, usamos como inputs, los valores de la serie de tiempo
anteriores al valor de la predicción, tomando tantas entradas como se considere necesario
para hacer una predicción aceptable (ver figura 4).
muy eficientemente (recuerde que la función puede tener deformaciones locales abruptas). Si γ toma valores
cercanos a 0, puede significar que la red aprende con mayor seguridad, pero esta vez lo hace muy lentamente,
lo cual puede conllevar a que la red se estanque en su aprendizaje. Debido a estos inconvenientes se introduce
un factor α que se puede interpretar como: que tan enfocada en el entrenamiento queremos que la red se
encuentre, el cual permite una convergencia óptima aún en el caso que γ tome valores “grandes”.
168
Un modelo de predicción para el valor TRM
3.1.
Predicción del valor TRM
Para desarrollar nuestro modelo, escogimos una estructura que fuese versatil en el proceso
de aprendizaje. Por esto partimos de un diseño perceptrón multicapa con un entrenamiento
supervisado, usando como función de activación la función sigmoidal y aplicando la regla
de aprendizaje “Back-propagation” antes comentada. Las restricciones que se le impuso a
nuestro modelo de rpm, es que tuviese máximo 3 capas ocultas y mı́nimo 1 capa oculta, es
decir buscamos un diseño rpm(N:x:y:z:M)4. Luego, se exploraron diferentes estructuras de
rpm con estas condiciones, hasta encontrar una topologı́a óptima (es decir, con el menor
error cuadrático medio posible) para cada conjunto de datos expuestos a la red.
En el primer caso, se usó como datos de entrada: el valor TRM de los 20 dı́as precedentes
al valor TRM del dı́a de predicción. Después de explorar diferentes rpm, llegamos a una red
neuronal óptima con la siguiente estructura rpm(20:7:1), la cual alcanzó un error normalizado promedio5 de 0.003452 (o un error porcentual promedio de 0.34 %) después de 7875
ciclos de entrenamiento y 2271 casos de estudio.
Aquı́ definimos la importancia de una neurona input k, como la suma del valor absoluto de
los pesos Wkh que conectan esta neurona con la siguiente capa, es decir
X
Imp(Tk ) =
|Wkh |.
h
Este valor es una medida de cuanto pesa cada neurona input en la red, o que tanta influencia
tiene esta en la misma. Por comodidad, reescalaremos este cuantificador en una Importancia
Normalizada usando la siguiente fórmula
Imp(Ti)
ImpN (Ti) = P
j Imp(Tj )
Como es de notar en la anterior gráfica, este análisis le ha dado una mayor relevancia a los 5
dı́as precedentes al dı́a de predicción (T1 → T5), siendo más importante el dı́a anterior (T1)
y en donde la importancia decrece en la medida que los dı́as se alejan hacia atrás del dı́a a
predecir (Ver los valores de importancia para esta red en la tabla No. 1 del apéndice). Cabe
anotar que en todas las RNA que se exploraron, los parámetros de entrada más relevantes
para la predicción del valor TRM fueron los 5 dı́as anteriores al valor de la predicción y
ordenados de la misma manera como el caso anterior, además de que los dı́as T6 → T20
tuvieron poca relevancia en la predicción en todos estos.
4
Siendo N el número de inputs, M el número de outputs, x,y,z el número de neuronas en la primera,
segunda y tercera capa oculta posible.
5
El error normalizado promedio se define como:
Ē =
N
1 X |d0 − Y0 |
.
N p=1
d0
169
Mauricio Ayala Sánchez, Ruben Dario Castillo Serna
Después de esto se exploró diferentes rpm, pero esta vez con solo 5 parámetros de entrada
correspondientes al valor TRM de los 5 dı́as anteriores a la predicción. Encontramos una
red óptima con una estructura rpm(5:9:1), la cual logró un error promedio normalizado
de 0.003491 después de 3100 ciclos de entrenamiento. Valor que es bastante cercano al
error alcanzado por la rpm(20:7:1), salvo que esta red necesitó menos de la mitad de ciclos.
Nuevamente se encontró que el dı́a más importante para la predicción era el dı́a anterior
(T1), los otros 4 dı́as se ubicaron en un orden descendente similar al que muestra el análisis
de importancia en el caso rpm(20:7:1).
Para mostrar la relación causa-efecto que puede haber entre las neuronas input-output,
definimos la sensibilidad de la entrada Tk (o la neurona input k-ésima) como
k
k
Se(Tk ) = |Yom
− YoM
|,
(4)
k (Y k ) el valor que toma Y cuando T toma el valor mı́nimo (Máximo). De otra
siendo Yom
o
k
oM
manera, la sensibilidad es una medida de como cambia el valor output en la RNA cuando
la neurona input k-ésima incrementa su valor desde el mı́nimo hasta el valor máximo. Para
hacer esta evaluación todos los demás inputs diferentes del k-ésimo se establecen en el valor
promedio. Para la rpm(5:9:1), se obtuvo que la predicción es mucho más sensible al valor
del dı́a anterior (T1) y en un claro orden descendente de los dı́as precedentes a la predicción,
similar al que reporta el análisis de importancia. (Ver la tabla No. 2 en el apéndice)
Después de esta fase de aprendizaje, se sometieron ambas RNA óptimas encontradas rpm(5:9:1)
y rpm(20:7:1) a la prueba de validación. La cual consiste en re-entrenar cada rpm, pero escondiéndole 50 casos, que se presentarı́an luego a la red como test de predicción. Para esto,
sometimos ambas rpm a un entrenamiento de 54500 ciclos, logrando un error normalizado
medio de 0.003275 y 0.003295 para rpm(5:9:1) y rpm(20:7:1) respectivamente, y con los
siguientes resultados en el test de validación. De aquı́ podemos observar que: la rpm(5:9:1)
es la que mejores resultados de predicción y de aprendizaje6 mostró al modelar la serie de
tiempo del valor TRM. Razón por la cual, sometimos esta red a la prueba de predicciones en
corto (predicciones a 1 dı́a) y en largo (predicciones a 50 dı́as). Encontramos una eficiencia
promedio de 28,5 % y un error medio de 0.030552 en las predicciones a 50 dı́as consecutivos,
y una eficiencia promedio del 48 % y un error de 0.004 para 50 casos aleatoriamente escogidos y no secuenciales. Esta prueba se implementó con 1000 ciclos de entrenamiento para
cada caso, y un error de predicción menor o igual al 2 %.
3.2.
Predicción del precio de cierre del dolar.
Para este caso, implementamos una red perceptrón multicapa con caracterı́sticas de aprendizaje similares al caso anterior. Los datos de entrada que se utilizaron fueron: la fecha del
dı́a de predicción (dı́a, mes) y el precio de apertura, valor mı́nimo, valor máximo, precio de
cierre, monto transado y número de operaciones de los tres dı́as inmediatamente anteriores.
6
170
La red con el mejor error óptimo
Un modelo de predicción para el valor TRM
Después de explorar diferentes rpm, llegamos a una red neuronal óptima con la siguiente
estructura rpm(20:14:1), la cual alcanzó un error normalizado promedio de 0.003293 después
de 36250 ciclos de entrenamiento. En el análisis de importancia y sensibilidad se encuentró una fuerte dependencia del precio de cierre del dolar con respecto al precio de cierre del
dı́a anterior (ver figura 9).
Los siguientes valores relevantes en el análisis de sensibilidad fueron: el valor de apertura del
dı́a anterior y el valor mı́nimo, la apertura y el valor de cierre del dı́a 3, lo cual indica que
el modelo de redes neuronales es coherente con el análisis de velas, en donde el cierre y los
valores máximo, mı́nimo y apertura permiten predecir una tendencia, siendo más relevante
la vela del dı́a anterior y luego la vela del 3er dı́a.
Por otro lado, en el análisis de importancia después del precio de cierre del dı́a anterior,
los valores con mayor peso fueron: el valor máximo y mı́nimo del dı́a anterior junto con
el mes en el que se hace la predicción. Tanto en el análisis de importancia como en el
análisis de sensibilidad, el monto y el número de operaciones hechas en los 3 dı́as anteriores
no muestran mucha relevancia o casi ninguna, lo que significa que en el mercado local de
divisas “el volumen no necesariamente sigue la tendencia”. Es muy interesante el tercer
lugar de importancia que la RNA le da al mes de la predicción (ver apéndice: tabla 3),
indicándonos entonces que la dinámica del mercado de dólares en Colombia depende de la
época del año y no siendo relevante el dı́a del mes.
Como el lector puede notar, la importancia es un valor siempre mayor que cero, de tal manera
que si una entrada a la red tiene un alto valor de importancia, implica que las “decisiones”
que tome la red neuronal estarán “fuertemente” influenciadas por el valor que tome esta
entrada en particular. Por otro lado, la sensibilidad de una entrada es siempre un valor mayor
o igual a cero. Luego, si este parámetro es grande para un input en particular, entonces
pequeños cambios en esta entrada implicarán cambios proporcionales en la respuesta de la
red neuronal, de otra manera se dice que la respuesta de la red es sensible a este input
particular, lo que significa que la sensibilidad puede ser una medida de relación causal entre
dos parámetros.
Por consiguiente, sensibilidad e importancia son cuantificadores que no significan lo mismo.
Por ejemplo, en nuestro caso el mes de predicción es una variable importante para tomar
decisiones sobre como se va a comportar el dolar. Sin embargo, el hecho de que se tenga un
cambio de mes en la predicción, no significa que esto afecte el comportamiento del dolar,
como puede ser por ejemplo el cambio de diciembre a enero. El caso contrario, en donde
la entrada ocupa un lugar más destacado en sensibilidad que en importancia; como es el
caso del valor mı́nimo3, el cual ocupa el sexto lugar en importancia pero el segundo en
sensibilidad, se tiene que la red neuronal responderá sensiblemente a pequeños cambios en
este parámetro, pero este no afectará tanto a las otras entradas al momento de “tomar
decisiones”, de otra manera mı́nimo3 no tiene gran influencia sobre los otros parámetros en
el momento de hacer una predicción.
Otro caso es la variable cierre1, la cual tiene la mayor importancia y sensibilidad en la rpm
171
Mauricio Ayala Sánchez, Ruben Dario Castillo Serna
implementada. Lo que nos indica que la red responderá sensiblemente a este parámetro, y a
su vez este afectará “fuertemente” las otras entradas en el momento de hacer una predicción.
Caso contrario es por ejemplo; el dı́a, número de operaciones en los dı́as 2 y 3 o el monto
transado en los 3 dias anteriores, los cuales no logran afectar la respuesta de la red neuronal,
ni alcanzan a influenciar las decisiones que tome la red neuronal sobre los otros parámetros.
4.
Discusión y conclusiones
Si bien, la capacidad que poseen las RNA para aprender y predecir no están generalmente
correlacionados, este no es el caso para el mercado de divisas en Colombia. En el cual se
pudo implementar con muy buenos resultados una red de tipo perceptrón con una capa
oculta para cada problema de aprendizaje y predicción planteado.
Para el caso de predicción del valor TRM, aunque el modelo perceptrón obtuvo unos resultados de aprendizaje eficientes tanto en una red con 5 entradas como en una red con 20
entradas (correspondientes al valor TRM de los 20 dı́as anteriores), la primera logró una
eficiencia del 90 % comparado con un 44 % en el otro caso (en el mismo Test y un error de
predicción inferior o igual al 1 %). Lo que nos sugiere que el exceso de información no significa necesariamente mayor comprensión del mercado. Adicionalmente, confirmamos nuestra
sospecha para este caso de predicción, que los modelos de RNA son mucho más eficientes
haciendo predicciones a corto plazo que sobre perı́odos largos de tiempo, con una eficiencia de 48 % y 28.5 % en el primer y segundo caso respectivamente (Esto en 1000 ciclos de
aprendizaje y un error de predicción inferioral 2 %).
En el análisis de importancia y sensibilidad, el modelo reportó que el dı́a con mayor peso
para el mercado es el anterior a la predicción, relevancia que disminuye a medida que los
dı́as se alejan hacia atrás del dı́a a predecir. Dicho de otra forma, el valor TRM de mañana
depende fuertemente del valor TRM de hoy, dependencia que disminuye en la medida que
los dı́as se alejan hacia atrás. Indicándonos entonces que; entre más lejos esté un dı́a de la
predicción, menores serán sus posibilidades de afectar el futuro. Adicionalmente, el análisis
de importancia y sensibilidad indica que si es posible predecir el mercado siguiendo la
tendencia, sin embargo no todos los dı́as son pesados de la misma manera, lo que nos
lleva a considerar que un análisis de promedios móviles ponderados o exponenciales es más
acertado para estudiar las tendencias, que un análisis de promedios móviles simples (pms)
en donde todos los valores tienen el mismo peso. De hecho, proponemos una mejora e estos,
definiendo un promedio móvil de tipo neuronal (pmn), en donde cada dı́a es pesado según el
análisis de importancia que reporta la red y que ha sido previamente normalizado, es decir
pmn(n) =
n
X
ImpN (Tk )Tk ,
k=1
donde n indica el número de dı́as que se consideran en el promedio móvil. Al hacer un
172
Un modelo de predicción para el valor TRM
análisis comparativo entre los pms y los pmn, encontramos que los segundos anticiparon el
cambio de tendencia 2 o 3 dı́as antes que los primeros para el perı́odo comprendido en la
figura 10. Lo que indica nuevamente que la información más relevante en relación con el
cambio de tendencia está en los valores más recientes.
Cabe anotar aquı́, que todas las RNA implementadas para la predicción del valor TRM
obtuvieron resultados en el entrenamiento con un error de predicción inferior al 2.5 % salvo
en 2 dı́as de operaciones (ver apéndice: tabla 4):
1. (2, sept/98 → el dolar subió 6.18 %): la predicción obtuvo siempre un error superior
al 4.1 % y aunque predice bien un alza, está por debajo del valor deseado.
2. (9, agost/02 → el dolar cayó 3.06 %): la predicción obtuvo siempre un error superior
al 3.5 % y aunque predice bien una baja, está por encima del valor deseado.
Para el otro caso, en el modelo de predicción del precio de cierre del dolar, la rpm óptima
encontrada logró resultados de entrenamiento similares al implementado para el valor TRM,
con un error de aprendizaje del orden de 0.33 % (o un error medio normalizado de 0.003293).
Aquı́ la red neuronal le da mayor relevancia al precio de cierre del dı́a anterior, diciéndonos
que el precio de cierre del dolar en el dı́a de mañana depende sensiblemente del precio de
cierre del dı́a de hoy. El modelo mostró ser coherente con el análisis de velas, siendo más
relevante la vela del dı́a anterior y luego la vela del 3er dı́a. Sin embargo, tuvo poca o casi
ninguna relevancia el monto y el número de operaciones hechas en los 3 dı́as anteriores, lo
cual significa que “el volumen no necesariamente sigue la tendencia”. De otra manera, hay
un mercado que se mantiene, ası́ el dolar esté a la baja o al alza. En cuanto al tercer lugar
de importancia para la predicción que la RNA le da al mes, se puede explicar en la siguiente
figura, si se observa que en la última década el mercado de divisas ha tenido por lo regular:
un comportamiento alcista en agosto, septiembre y la primera mitad de octubre; de soporte
en la segunda mitad de enero, febrero, marzo y la primera mitad de abril; y con tendencia a
la baja en noviembre para algunos años. Confirmando esto, que el mercado local se inclina
a mantener un tendencia diaria promedio según la época del año.
Agradecimientos
Los autores desean expresar su gratitud a Angélica Muñoz Castellanos por los comentarios
y apuntes hechos a este trabajo.
173
Mauricio Ayala Sánchez, Ruben Dario Castillo Serna
Apéndice
Input
T1
T2
T3
T4
T5
Imp(Tk )
26,2192
11,1907
9,6431
6,9008
5,8021
Input
T10
T6
T7
T8
T9
Imp(Tk)
5,1517
4,8318
4,7153
4,6177
4,5606
Input
T11
T20
T16
T19
T12
Imp(Tk)
4,3367
4,1090
3,6412
3,4698
3,4160
Input
T14
T18
T13
T17
T15
Imp(Tk)
3,3288
3,1449
3,0937
3,0105
2,8026
Tabla 1. Análisis de importancia para la rpm(20:7:1) después de 7875 ciclos de entrenamiento.
Input
T1
T2
T3
T4
T5
Imp(Tk )
54,7192
21,0239
18,5255
17,7955
16,6489
Se(Tk )
0,85320009
0,30630508
0,17117343
0,12403183
0,05204189
Tabla 2. Análisis de importancia y sensibilidad para la rpm(5:9:1). Aquı́ la sensibilidad es
normalizada entre [0, 1].
Input Imp(Tk )
Cierre T1 30,0303
Máximo T1 11,5078
Mes T0 8,8992
Mı́nimo T1 7,9616
Apertura T2 7,1335
Mı́nimo T3 6,6437
Máximo T2 6,4983
Operaciones T1 6,4167
Apertura T3 6,2216
Cierre T2 6,0085
Se(Tk )
0,75117491
0,04475237
0,00660025
0,05740495
0,04006379
0,16020802
0,03892178
0,02897890
0,08257140
0,00297948
Input Imp(Tk )
Mı́nimo T2 5,6872
Cierre T3 5,6549
Máximo T3 5,4704
Apertura T1 4,8666
Monto T1 4,2152
Monto T3 3,8760
Operaciones T2 3,4267
Operaciones T3 3,4099
Monto T2 3,2193
Dı́a T0 2,2907
Se(Tk )
0,06073493
0,07689388
0,04454920
0,12317505
0,01681221
0,00264038
0,02813428
0,01337309
0,00592695
0,00056303
Tabla 3. Análisis de importancia y sensibilidad para la validación del análisis técnico bursatil en
una rpm(20:14:1).
T5
T4
T3
T2
T1
T0 deseado T0 predicho
2/09/98 1431, 52 1438, 94 1441, 20 1442, 15 1443, 30
1532, 46
1450,30
9/08/02 2641, 12 2643, 10 2662, 90 2670, 64 2651, 88
2570, 81
2644,71
Tabla 4. Predicción del valor TRM para los dı́as con el error más alto encontrado.
174
Un modelo de predicción para el valor TRM
Bibliografı́a
[1] Amat, Oriol; Puig, Xavier: Análisis técnico bursatil. Ediciones GESTION 2000,
Barcelona: España. (1993)
[2] Ayala, M; Moreno, E: Un modelo de diagnóstico de PNF aguda mediante redes neuronales artificiales. ICP XXIV, México, 2004.
[3] Bosch, J; Garrido, Ll; Gómez, S: “Predicción de indices de futuros financieros mediante
redes neuronales”. Swap & productos derivados 27 (1997) pp. 19-21.
[4] Castiglione, Filippo: “Forecasting price increments using an artificial Neural Network”.
Adv. Complex Systems 1 (2002) pp. 1-12.
[5] Freking, Ansgar; Wolfgang, Kinzel: “Learning and predicting time series by neural networks”. cond-mat/0202537. (Feb. 2002)7
[6] Jagielska, Ilona; Jaworski, Janusz: “Neural Network for Predicting the Performance of
Credit Card Accounts”. Computational Economics 9(1) (1996) pp. 77-82.
[7] Martı́n del Brı́o, B; Serrano, C: “Self-Organizing Neural Networks: The Financial State
of Spanish Companies”. Neural Networks in the Capital Markets, Ed Refenes, John Wiley
& Sons, Capı́tulo XXIII. (1995)
[8] Misas M, López E, Querubı́n P: “La inflación en Colombia: una aproximación desde las
redes neuronales”, Ensayos sobre polı́tica económica, Banco de la República, No. 41-42,
(Jun. 2002)
[9] Misas, M; López, E; Arango, C; Hernández, J.N: “La demanda de efectivo en Colombia:
una caja negra a la luz de las Redes Neuronales”, Ensayos sobre polı́tica económica, Banco
de la República, (Nov. 2003).
[10] Mizuno, H; Kosaka, M; Yajima, H: “Stock Market Prediction System Based On Technical Analysis of Stock Index Using Neural Network”, Proceedings of the 15th IMACS,
(1997) pp. 49-54.
[11] Kröse, Ben; Van der Smagt, Patrick: An introduction to neural networks, University of
Amsterdam (1996).
[12] Sarle, W.S: “Neural Networks and Statistical Models”, Proceedings of the Nineteenth
Annual SAS Users Group International Conference, April 1994.
7
Ver el servidor de artı́culos e-print: http://arxiv.org
175
Mauricio Ayala Sánchez, Ruben Dario Castillo Serna
[13] Serrano, C; Martı́n del Brı́o, B: “Predicción de la crisis bancaria mediante el empleo
de redes neuronales artificiales”, Revista Española de Financiación y Contabilidad, vol
XXII, No 74, (1993) pp 153-176.
[14] Situngkir, H; Surya, Y: “Neural Network Revisited: Perception on Modified Poincare
Map of Financial Time Series Data”. cond-mat/0403620. (Mar. 2004)7
[15] Superintendencia Bancaria: “Funcionamiento del mercado cambiario”. May. 2002
[16] Zirilli, Joseph S: Financial Prediction Using Neural Networks, International Thomson
Publishing (1996).
176
Un modelo de predicción para el valor TRM
Figura 1: Estructura de una neurona artificial en analogı́a a una neurona celular.
1
0.8
0.6
f (S) =
1
1+e−S
0.4
0.2
0
-7.5
-5
-2.5
0
2.5
5
7.5
Figura 2: Definición algebráica y el gráfico de la función sigmoidal
Figura 3: (a) Una rpm con 9 neuronas input, una primera capa oculta de 3 neuronas, una segunda
capa oculta de 6 neuronas y una capa de 5 neuronas output, la cual se abrevia como rpm(9:3:6.5).
(b) Red auto-asociada, todas las neuronas son ambos: input & output
177
Mauricio Ayala Sánchez, Ruben Dario Castillo Serna
Figura 4: Implementación de una rpm(9:3:1) en la predicción de una serie de tiempo con 9 parámetros de entrada precedentes, siendo T1 la entrada anterior a la predicción y T9 la novena entrada antes
de la predicción. T0 indica el valor a predecir.
Figura 5: Análisis de Importancia para la rpm(20:7:1) después de 7875 ciclos de entrenamiento.
178
Un modelo de predicción para el valor TRM
Figura 6: Importancia normalizada y sensibilidad para la rpm(5:9:1) después de 3100 ciclos de
entrenamiento.
Figura 7: Número de aciertos para rpm(5:9:1) y rpm(20:7:1) que están dentro del rango de error
marcado en el eje x. Aquı́ se observa una clara superioridad de la rpm(5:9:1) al hacer predicciones
179
Mauricio Ayala Sánchez, Ruben Dario Castillo Serna
Figura 8: Curva de eficiencia para una predicción en largo, tomando para cada caso de entrenamiento
un conjunto de 50 dı́as consecutivos como datos de validación, que luego eran desplazados en 1 a
la derecha, para el siguiente caso de validación. La gráfica muestra que el modelo tuvo una buena
eficiencia solo en ciertas épocas.
Figura 9: Análisis de sensibilidad y de importancia normalizada para la rpm(20:14:1) después de
36250 ciclos de entrenamiento.
180
Un modelo de predicción para el valor TRM
Figura 10: pmn para 5 y 20 dı́as sobre el valor TRM entre: 29/mayo/03 y 14/noviembre/03.
Figura 11: Mercado del dolar en Colombia según la época del año desde 1995 hasta 2004.
181
Descargar