EL DISEÑO DE UN JUEGO AUTOGENERATIVO DE TÍTULOS DE BOLSA

GUILLERMO BUENAVENTURA VERA1, GUILLERMO ANDRÉS BUENAVENTURA COLLAZOS2

1Profesor de tiempo completo de la Universidad ICESI; PhD (C) Nuevas Tendencias en Administración, Universidad de Salamanca; Magíster en Administración de Empresas, Eafit-Icesi; Magíster en Ingeniería Industrial y Sistemas, Universidad del Valle; Especialista en Finanzas, Universidad del Valle; Ingeniero Químico, Universidad del Valle. buenver@icesi.edu.co

2Estudiante de VIII Semestre de Ingeniería Mecatrónica, Universidad Autónoma de Occidente.

Fecha de recepción: 3-4-2004 Fecha de aceptación: 1-7-2004


SUMMARY

The paper focuses on the design of the generatriz function of stock random prices. From this point, the basic method for making a simulator model of stock exchange game is developed.

The generatriz function of stock random prices is based on the construction of numbers following a Standard normal probability function by transformation of the random numbers generated of an Uniform probability function (RAND), previously stablished in the computer program.

Notes about the computer programming and a basic structure for the simulation play, are considered for both, individual and net applications.

KEY WORDS

Stocks, stockc price, shokcs, random number, Normal Standard distribution, Uniform distribution, Standard deviation, computational platform.

Rating: B

RESUMEN

Contando el establecimiento de la función generadora de precios aleatorios, se desarrolla la metodología básica para la construcción de un modelo simulador de juego de bolsa que sea capaz de generar las propias variaciones de los precios de las acciones.

El artículo realiza la presentación estructurada de modelo, partiendo de las bases teóricas para la elaboración de la formulación. La generación de números aleatorios distribuidos mediante la función normal estándar se construye a partir de la función uniforme generadora de números aleatorios (RAND).

Las consideraciones de programación de computadores, así como una estructura básica de la misma, son tratadas enfocando tanto aplicaciones individuales del juego de simulación, como aplicaciones en red.

PALABRAS CLAVES

Acciones, precio, shocks, número aleatorio, distribución normal, distribución uniforme, desviación típica, red, plataforma informática.

Clasificación: B


INTRODUCCIÓN

Es innegable el beneficio instruccional en el desarrollo de habilidades de transacción (trading) que prestan los juegos simuladores de bolsa a las personas que incursionan en este campo. En efecto, la posibilidad de realizar transacciones sin arriesgar dinero real es suficiente motivador para acceder a jugar en una bolsa simulada de valores; pero todavía es posible añadir atractivos especiales como la oportunidad de participar en competencias, aun desde lugares remotos, aprovechando la facilidad de la internet.

Los juegos más conocidos se apoyan en la generación de los precios de las acciones en el mercado real, como un ingrediente motivador para aceptar el reto de concursar de una manera virtual.

Sin embargo, existe la posibilidad de diseñar juegos que generen los precios de las acciones dentro de la programación de un simulador de bolsa, con el correspondiente beneficio de la contracción del tiempo real de juego.

Sobre este tipo de diseños trata el presente trabajo.

En la primera parte del mismo se plantea la fundamentación teórica para lograr el diseño apropiado del modelo de generación de precios, fundamento del juego. En una segunda parte se comenta la estructuración necesaria para programar el diseño en computador y lograr su operatividad.

EL MODELO GENERADOR DE PRECIOS ALEATORIOS

Naturaleza del modelo

Los precios de las acciones en la bolsa de valores siguen un camino aleatorio en función del tiempo.1 Esto significa que la serie temporal de precios de una acción carece de ciclos, pudiendo mantener una tendencia general y una variación instantánea concebida como una serie de fugacidades (shocks).

En estos términos, el comportamiento del precio de una acción debería ser algo como lo que muestra la Figura 1.

Programación del modelo

El modelo consta de dos partes fundamentales, la generación del tiempo y la generación aleatoria de los precios.

Generación del tiempo

Dado que se construye un simulador de resultados de rondas de negociación en bolsa, los intervalos entre jugadas han de ser iguales entre sí. Esto implica manejar un reloj sincrónico, es decir, un marcador de tiempo de intervalos iguales por jugada. La longitud del intervalo deberá ser un parámetro que se pueda asignar a voluntad del administrador o coordinador del juego.

Generación de los precios

La función generadora de precios debe cumplir con la naturaleza del modelo; esto significa que debe observar una tendencia y además cumplir con la aleatoriedad tipo shock. La función debe ser del tipo expresado en la ecuación 1.

Con Pt = Precio de la acción en el momento t.

P0 = Precio de la acción en el momento inicial (0).

b = Tendencia, como incremento medio fraccional del precio entre dos momentos consecutivos.

zt = Shock (cambio aleatorio del precio) en el momento t.

Si bien el factor (1+b)t sugiere una progresión de tipo exponencial, en la medida en la que b sea una fracción muy pequeña, la curvatura de la función se hace tan suave que la tendencia se aproximaría a la de una línea recta, a la vez que mantiene la condición de proporcionalidad entre la tendencia y el valor actual del precio.

La función que representa el shock debe ser aleatoria y observar la dimensión del precio, es decir, que resulte en cambios de precios que sean naturales al proceso. Esta función se representa bien con la distribución normal estándar, como se expresa en las ecuaciones 2 a 5. En el Anexo se muestra la derivación de esta ecuación.

Con zt = Shock (cambio aleatorio del precio) en el momento t.

dt = Valor aleatorio de una distribución normal 0-1 (d ~ N (0, 1)).

σt = Desviación típica asignada a la serie de precios de la acción.

La desviación típica será un parámetro que se introduzca al modelo; puede ser constante (modelo homocedástico) o cambiante (modelo heterocedástico). En general se prefiere la última condición por acercarla más a la realidad, en una situación en la que la desviación típica aumente con el incremento de precio, y viceversa; en esta situación la desviación típica se actualizaría aplicando el mismo factor que el de actualización de los precios, como se muestra en la ecuación 3.

Con σt = Desviación típica asignada a los precios de la acción en el momento t.

σ0 = Desviación típica asignada a los precios de la acción en el momento 0.

b = Tendencia, como incremento medio fraccional del precio entre dos momentos consecutivos.

El valor aleatorio de la distribución normal estándar se calcula haciendo uso de la función Aleatorio (RAND o Random, en inglés) que traen la mayoría de los paquetes de computación:

Sea Aj el valor aleatorio entre cero (0) y uno (1) de una distribución uniforme, generado por la función Aleatorio, el valor correspondiente a una generación aleatoria normal estándar se obtiene como se anota en la ecuación 4.

Con dt= Valor aleatorio de una distribución normal 0-1.

Aj= Valor aleatorio de una distribución uniforme {0, 1} (función RAND).

Reemplazando las ecuaciones 3 y 4 en la ecuación 2, se obtiene la ecuación 5, la que modela el valor del shock en cada momento.

Con zt = Shock (cambio aleatorio del precio) en el momento t.

Aj = Valor aleatorio de una distribución uniforme {0, 1} (función RAND)

b = Tendencia, como incremento medio fraccional del precio entre dos momentos consecutivos.

σ0= Desviación típica inicial asignada a la serie de precios de la acción.

En consecuencia, reescribiendo la ecuación 1, se tiene la función generadora de precios propuesta para este tipo de juegos, resultando en la ecuación 6.

Con Pt= Precio de la acción en el momento t.

P0= Precio de la acción en el momento inicial (0).

Aj= Valor aleatorio de una distribución Uniforme {0, 1} (función RAND).

σ0= Desviación típica asignada a los precios de la acción en el momento 0.

b = Tendencia, como incremento medio fraccional del precio entre dos momentos consecutivos.

t = Momento o ciclo de la jugada.

En la Tabla 1 se consigna un ejemplo de corrida del modelo, formulado para 24 títulos valores entre dos momentos consecutivos.

TABLA 1

OPERACIONALIZACIÓN DEL JUEGO

Los elementos del programa

En la Figura 2 se esquematiza el conjunto de elementos fundamentales para un programa de juego de simulación de bolsa. Dos secciones (interfases en el caso de programación en red), correspondientes a las actuaciones del Administrador y de los jugadores son necesarias, ambas con sus correspondientes rutinas de entrada y salida de información. Adicionalmente se debe contar con las rutinas de generación de precios para las acciones y de marcado de tiempo para las jugadas.

El programa debe contemplar la operación de estos elementos:

JUGADORES

Se maneja mediante la sección o interfase de CLIENTES. Esta debe ofrecer listas donde se consignan los nombres de las acciones, los precios iniciales o bases de cada una, el listado de precios actuales, la variación porcentual de los mismos y el número de acciones transado (comprado, vendido, tenencia) que cada jugador ha realizado sobre cada una, las cuales deben ser enviadas a los usuarios mediante la rutina de SALIDA correspondiente.

También es necesario programar gráficos (barras, líneas, 3D ó 2D) de tendencia de precios por acción y ponerlos a disposición de los jugadores (un ejemplo se muestra en la Figura 3).

El manejo para los jugadores debe ser tan fácil como hacer clik sobre el nombre de la acción que se desea comprar o vender, marcar la correspondiente transacción y digitar el número de unidades que se quieren transar.

El valor del portafolio de cada jugador ha de realizarse en tiempo real, contabilizando los debidos ajustes por efectos del pago de comisión en cada transacción.

ADMINISTRADOR

Esta sección, que se convierte en interfase SERVIDOR para versiones en red, debe administrar las rutinas de GENERACIÓN DE PRECIOS (programada según los principios de aleatoriedad discutidos en la sección de consideraciones teóricas del presente artículo) y de CONTROL DE CICLOS (programada con un reloj interno).

En la rutina de precios habrá de adjudicarse los parámetros de aleatoriedad (como precios base, desviaciones típicas, factor de tendencia, etc.) a voluntad del Administrador del juego.

En la rutina de ciclos habrá de adjudicarse el tiempo de duración de cada jugada, como un simulador del día de operación de la bolsa.

Otras operaciones de control, como acabar el juego, guardar la información y llevarla a una hoja electrónica, enlistar los jugadores conectados y desconectarlos a voluntad del administrador, reiniciar el juego, entre otras, deben ser consideradas en esta interfase.

La plataforma informática

Un paquete informático que ofrezca opciones apropiadas de interfase, funciones y gráficos es indispensable para montar el juego en computador; también es importante que la herramienta escogida sea conocida masivamente, de tal modo que permita crear una opción ejecutable para cualquier computador. Visual Basic cumple estas condiciones, constituyéndose en una buena alternativa.

Versiones operativas

Es aconsejable crear al menos dos versiones del juego, en el propósito de permitir a los usuarios practicar y desarrollar habilidades en el mundo bursátil.

Una versión BÁSICA, de carácter individual, casera y práctica, que sólo requiera guardarla en la computadora personal y jugar el tiempo que el usuario desee sin necesidad de estar en red, debe permitir al final de cada sesión la posibilidad de que el resultado pueda ser comparado con pasados o futuros juegos propios o de alguien más que haya jugado en la misma computadora, o aun, con resultados de otras computadoras en el caso en que se encuentren compitiendo varios jugadores en máquinas independientes.

La otra versión tipo RED debe permitir la operación de un modo más realista y ha de ser interactiva para los jugadores accedidos a la red. Deberá contar con dos interfases, una para clientes, representados por los jugadores, y otra para que funcione como servidor. Esta segunda, manejada por el administrador del juego, generará automáticamente los precios y variaciones de los mismos cada cierto tiempo y los enviará a todos los jugadores que estén conectados con este programa servidor; así mismo, recibirá cada jugada ordenada por el conjunto de clientes. El programa debe estar capacitado para recibir la información de los clientes, enviar la del administrador y consolidar el estado de cuenta de cada jugador. Toda la información de la temporada que duró el juego debe ser almacenada en el programa servidor. Aquí se puede optar por verter toda esta información a una herramienta más conocida y de manejo más extendido, como una hoja electrónica (Excel, por ejemplo) para almacenarla.

Esta versión puede incluir también un pequeño chat, de tal modo que se permita la comunicación entre todos los jugadores entre sí y con el administrador del servidor, quien podrá informar a los usuarios sobre aspectos pertinentes del juego, como el tiempo restante, avisos de mercado, consejos (tips), y manejar una sección de preguntas y respuestas, o de solución a preguntas frecuentes (facs), entre otros.

Opciones de valor agregado

Secciones que se pueden programar en versiones más complejas:

Y, en general, todas aquellas situaciones que se consideren de una manera creativa para aplicar al cumplimiento de objetivos específicos.

CONCLUSIONES

El diseño y la construcción de un simulador de bolsa de valores está al alcance de quien entienda el marco teórico del comportamiento de los precios y maneje algunos paquetes informáticos, ciertamente comunes.

La principal ventaja de un juego de simulación de bolsa como el que se presenta en este escrito es la de poder acondicionar el ciclo de juego, de tal manera que un tiempo muy corto (una sesión de clase, por ejemplo) puede contemplar un período significativo de juego real.

Las oportunidades prácticas y académicas que ofrece un juego de simulación de bolsa autogenerativo como este, son ilimitadas, al despojarse de la necesidad de seguir los movimientos de la bolsa que exigen los juegos conectados con ésta. En estos últimos la rutina de generación de precios es reemplazada por la conexión a la salida de precios de la bolsa, lo cual propone una simulación bastante realista, pues es el mercado el que gobierna dicha aleatoriedad; sin embargo el tiempo de juego se debe someter al calendario real de operación de la bolsa, lo que impone un involucramiento de los jugadores por períodos extendidos.

Es importante entonces procurar que la generación de los precios, cuando ésta se provee dentro del programa, esté bien calculada, teniendo en cuenta la aleatoriedad que facilita el empleo de la distribución normal, como también la tendencia y el rango de oscilación desde esta tendencia.

NOTAS AL PIE DE PÁGINA

1. Un buen soporte conceptual de esta afirmación se encuentra en la obra de Brealey, R., S. Myers y A. Marcus (1996), en su capítulo 12.


BIBLIOGRAFÍA

Brealey, R., S. Meyers y A. Marcus; 1996. Fundamentos de Finanzas Corporativas; Madrid: McGraw Hill.

Greene, W.; 1999. Análisis Econométrico; tercera edición; Madrid: Prentice Hall.

ANEXO