Está en la página 1de 11

MODELIZACIN FINANCIERA CON EXCEL

SNCHEZ ALVAREZ, ISIDRO LAFUENTE ROBLEDO, MANUEL LPEZ ARES, SUSANA Departamento de Economa Cuantitativa Universidad de Oviedo

La enseanza de la Matemtica de las Operaciones Financieras ha experimentado durante la dcada de los noventa una transformacin profunda como consecuencia de la progresiva introduccin de los programas informticos. Las hojas de clculo, dada su gran facilidad de uso, su flexibilidad y su utilizacin generalizada, han sido una de las herramientas disponibles ms potentes para el tratamiento de problemas financieros. De ah que su

incorporacin a los programas docentes de esta disciplina se hayan convertido en una norma casi obligada para garantizar la calidad de la enseanza en esta materia. No obstante, es preciso tener en cuenta que para aplicaciones de alto nivel se requieren programas ms especializados (por ejemplo, para gestin de carteras) y que cada vez estn ms extendidas otras herrramientas informticas de clculo avanzado como los programas de clculo numrico (por ejemplo, las aplicaciones financieras especficas de Matlab) o de clculo simblico (Mathematica, Maple, Matlab, Derive, etc.). De ah que la hoja de clculo haya dejado de ser el nico programa informtico de uso generalizado para el tratamiento de operaciones financieras, y que progresivamente sea preciso incorporar las nuevas aplicaciones en los curricula del alumno. La utilizacin de las hojas de clculo en la modelizacin de problemas de matemtica financiera representa importantes ventajas didcticas: Dado el carcter eminentemente prctico de la misma, simplifica en gran medida la materia a impartir, ya que con los principios y razonamientos elementales permite prescindir del desarrollo de buen nmero de las frmulas que la matemtica financiera plantea para realizar valoraciones. Como consecuencia se produce un gran ahorro de tiempo en cuanto a las necesidades de clases magistrales, lo cual permite dedicar ms tiempo a la explicacin detallada y pormenorizada de los conceptos fundamentales. Desde el punto de vista puramente didctico facilita la comprensin y el estudio del alumno, el cual se tiene que centrar en los aspectos bsicos de la asignatura, reducindose de forma muy importante la memorizacin de conceptos. Permite determinar de manera rpida y exacta los distintos valores que sea necesario obtener y, consecuentemente, comparar entre distintas operaciones financieras planteadas al alumno de forma inmediata.

Operaciones con clculos numricos importantes, como la realizacin de cuadros de amortizacin de prstamos y emprstitos, tambin se pueden realizar con gran rapidez, y llevar a cabo un anlisis de sensibilidad del mismo.

En general, permite resolver el problema hasta la solucin final y extraer las conclusiones operativas, fase que en los clculos manuales es muchas veces soslayada.

Consecuentemente, facilita la deteccin de posibles inconsistencias y datos errneos en los planteamientos y resultados. La utilizacin de herramientas informticas ayuda por otra parte a motivar a los alumnos como consecuencia del atractivo generalizado del soporte informtico. No obstante, este aspecto no se puede generalizar a todos los alumnos, y adems tiene un efecto que se diluye con el tiempo. A continuacin, se desarrollan una serie de modelos de matemtica financiera con hoja de clculo con el objeto de ilustrar de forma clara y precisa como se pueden implementar dichos problemas financieros en Excel. Los tres primeros casos corresponden a la matemtica

financiera clsica y consideramos que deberan representar las aplicaciones informticas mnimas de cualquier curso de esta disciplina en la Facultades y Escuelas Universitarias de Ciencias Empresariales.

I. VALORACIN DE RENTAS. La funcin VNA(tasa; capitales) permite obtener el valor actual de cualquier renta, sean cuales sean sus capitales, incluso si carecen decualquier tipo de periodicidad. As pues, la teora de rentas, que constituye una de las partes bsicas del cuerpo de la matemtica financiera se puede analizar con el planteamiento adecuado del problema con esta funcin. Las rentas en progresin aritmtica y geomtrica, las rentas fraccionadas y las rentas plurianuales, que normalmente solan plantear dificultades de comprensin para el alumno, se reducen as a una estructura ssencilla en las hojas de clculo. Respecto al empleo de esta funcin es preciso sealar los siguientes aspectos pedaggicos: La funcin VNA calcula el valor actual de la renta considerada como postpagable, con lo cual es preciso indicar al alumno las posibles opciones para valorar las rentas prepagables, y el clculo de los valores finales. Al igual que en los clculos manuales, el alumno tiene dificultades para aplicar adecuadamente los tipos de inters, por lo cual ste deber ser un aspecto a resaltar. En el caso de una renta que incluya tramos de periodicidad distinta en el pago o pagos de cuanta o variabilidad diferente, lo ms adecuado es plantear toda la renta como un solo

problema cuyo valor actual se desea calcular. Para ello ser preciso imaginar que cada celda representa el periodo de tiempo ms pequeo de todos los considerados en la renta. Las celdas que representen periodos donde no venzan capitales aparecern con un cero (algunas hojas de clculo consideran la celda vaca como un cero; no es el caso de Excel). Existen otras funciones predefinidas que permiten calcular valores actuales y finales de rentas constantes (VA y VF, respectivamente). Para rentas en progresin aritmtica y

geomtrica se pueden definir mediante funciones en Visual Basic. No obstante, la funcin VNA permite valorar de forma ms genrica todas las rentas. Por otra parte, la hoja Excel permite instalar ms funciones de las que inicialmente aparecen disponibles. En el men de Herramientas se puede ejecutar la opcin Complementos e instalar las Herramientas para anlisis. Con esta opcin se dispone de un mayor nmero de funciones, y entre ellas una que permite mejorar las utilidades de la funcin VNA. Se trata de la funcin VNA.NO.PER(tasa;capitales;fechas) que permite calcular el valor actual de una renta con capitales y vencimientos cualesquiera y no peridicos. En Capitales se introduce el rango de celdas con los flujos y en Fechas el rango de celdas con los vencimientos asociados, tal como se ilustra en el grfico I. Con ello se evita construir los esquemas de rentas elaborados que exige la funcin VAN. La funcin implcita en VAN.NO.PER es

i =1

Pi (1 + tasa )
( d i d1 ) 365

donde d i es la i-sima

fecha de pago, d 1 la fecha de pago 0 (del primer capital) y Pi el i-simo pago. La tasa deber ser por tanto un tipo de inters efectivo anual. GRFICO I

II. TASAS INTERNAS DE RENTABILIDAD Las tasas internas de rentabilidad se pueden obtener fcilmente con la funcin TIR(capitales;estimar) donde Capitales recoge el rango de celdas donde se hallan los flujos de caja y Estimar es un argumento opcional que indica el tipo de inters a partir del cual comienza el mtodo iterativo de aproximacin. El mtodo utilizado por Excel para aproximar las races es el de Newton. En relacin con los argumentos de la funcin hay tres aspectos sobre los cuales es preciso insistir al alumno: El rango de capitales debe incluir al menos un capital de cada signo. Si no se indica ninguna estimacin, el mtodo parte del 10 por ciento. Normalmente, esta estimacin es suficiente para los tipos de inters anuales habituales. No obstante, se deber modificar cuando el resultado sea errneo, debiendo introducirse un tipo de inters ms prximo al exacto (por ejemplo, cuando se trata de tipos mensuales bajos). El tipo de inters resultante no siempre es anual, sino que estar referido al periodo que indica el salto de celda a celda. En el caso de que existan varias tasas internas de rentabilidad, la aproximacin requiere cambiar el argumento Estimar al valor preciso, normalmente valores cercanos a la raz que se desea conocer. Para sugerir la posibilidad de mltiples tasas internas de rentabilidad es aconsejable representar o calcular el VAN para un intervalo amplio de valores del tipo de inters y observar los cambios de signo. GRFICO II
40,00 30,00 20,00 10,00 0,00 10% 12% 14% 16% 18% 20% 22% 24% 26% 28% 30% -10,00 -20,00 -30,00 32% 0% 2% 4% 6% 8%

Ahora bien, cuando existen mltiples tasas de rentabilidad internas, la convergencia a unas u otras races no se produce en intervalos definidos del parmetro Estimar. Ilustremos este hecho con un ejemplo. Supongamos que se desea calcular la TIR de un proyecto de inversin con los siguientes flujos de caja: en 0 de 365; de 1 a 5 de 200; de 6 a 10 de 200; de

11 a 19 de 0; en 20 de 400. Si se representa grficamente el VAN, se observa que la ecuacin financiera de la TIR tiene tres races reales (grfico II). Aplicando la funcin TIR(capitales; estimar) para tres valores de estimar diferentes y cercanos visualmente a las races, la hoja de clculo proporciona las tres TIRs: 1,54%; 16,79% y 26%. Sin embargo, si se analiza el cuadro siguiente se observa que, para valores muy prximos del punto de inicio de las iteraciones, la raz hacia la que converge puede ser distinta. Incluso converge hacia cualquiera de las tres con muy ligeras modificaciones de la estimacin inicial. Por tanto, iniciar el proceso en un punto cercano a la posible raz no siempre permite converger hacia dicha raz, sino que el mtodo sigue un comportamiento catico que impide asegurarlo. No obstante, la regla general para hallar tales aproximaciones debe ser la de iniciar el proceso en puntos prximos a la raz que se desea aproximar.

Estimar 0% 1% 2% 3% 4% 5% 6% 7% 8% 9% 10%

TIR Estimar 1,54% 5,0% 1,54% 5,1% 1,54% 5,2% 1,54% 5,3% 1,54% 5,4% 1,54% 5,5% 16,79% 5,6% 26,00% 5,7% 16,79% 5,8% 16,79% 5,9% 16,79% 6,0%

TIR Estimar 1,54% 5,70% 1,54% 5,71% 1,54% 5,72% 1,54% 5,73% 1,54% 5,74% 1,54% 5,75% 16,79% 5,76% 16,79% 5,77% 26,00% 5,78% #DIV/0! 5,79% 16,79% 5,80%

TIR Estimar 16,79% 5,740% 16,79% 5,741% 16,79% 5,742% 16,79% 5,743% 16,79% 5,744% 1,54% 5,745% 16,79% 5,746% 16,79% 5,747% 26,00% 5,748% 26,00% 5,749% 26,00% 5,750%

TIR 16,79% 16,79% 16,79% 16,79% 1,54% 16,79% 16,79% 16,79% 1,54% 1,54% 1,54%

De forma similar a lo que ocurre con la funcin VNA, existe la posibilidad de calcular la TIR sin necesidad de que los pagos sean peridicos, relacionando directamente los capitales y sus vencimientos con la funcin TIR.NO.PER(capitales; fechas). Esta funcin tambin debe ser activada incorporando las Herramientas de anlisis. Esta opcin es especialmente til para calcular los rendimientos al vencimiento de los bonos cuyo primer vencimiento no coincide con un periodo de devengo completo.

III. OPERACIONES DE CONSTITUCIN Y AMORTIZACIN Dado que las operaciones de constitucin y amortizacin constituyen un bloque temtico de la matemtica financiera con aplicaciones empresariales muy relevantes, la mayor parte de los modelos desarrollados desde los inicios han sido dirigidos a cubrir estos aspectos. Un conjunto de aplicaciones dirigidas a modelizar y automatizar no slo este tipo de tareas sino tambin otros amplios campos de la matemtica financiera se pueden consultar en Medina(1993). Desde el punto de vista docente, el clculo de trminos amortizativos de

prstamos y operaciones de leasing, el clculo de imposiciones para planes de ahorro y la elaboracin de cuadros de amortizacin y constitucin son contenidos mnimos a considerar en cualquier programacin docente. Las hojas de clculo disponen siempre de funciones predefinidas para la obtencin de trminos amortizativos por el mtodo francs, pero cuando los trminos son variables es

preciso crear una funcin en Visual Basic o bien utilizar la macro buscar objetivo sobre un modelo de renta predefinido. La funcin bsica para el clculo de trminos constantes tanto en prstamos como leasing y constitucin - es PAGO(tasa;nper;va;vf;tipo). Su manejo requiere la consideracin de varios aspectos: La hoja Excel considera con signo contrario los capitales de la prestacin y de la contraprestacin, lo cual implica que se cambie el signo del valor obtenido o de va si se desea manejar cifras positivas. Al igual que el resto de funciones financieras, es preciso tener en cuenta que los tipos de inters y los plazos deben ser coherentes.

IV. SIMULACIN DE PRECIOS DE TTULOS Una de las estrategias ms recomendables para explicar al alumno el comportamiento de los precios de los ttulos es la construccin de una representacin grfica que simule su evolucin. Dado que una de las hiptesis centrales del modelo de Black-Scholes es que los precios se distribuyen segn una lognormal, su simulacin grfica permite al alumno intuir el carcter de esta hiptesis. Si se representa por S t el precio de un ttulo en el momento t, la distribucin lognormal asume que el logaritmo natural de uno ms el inters de mantener el ttulo entre t y t+t se distribuye segn una normal de media y desviacin estndar . Como consecuencia, el precio del activo S t en el momento t se puede describir a travs de la expresin:

S t = S 0 exp( t + Z t )
donde Z es una variable normal estndar. A modo de ejemplo, supongamos el precio simulado en la celda E7 con los datos de entrada del rango B6:B9. Para simular el precio en el momento 1 se toma un nmero aleatorio distribuido segn una normal (celda D7) y se sustituye en la expresin anterior: 5000 * exp(0,12 * 0,004 + 0,2 * (-0,409697805) * 0,004) = 4.976,5436. El proceso de simulacin y representacin grfica se presenta en el grfico III. Para generar los nmeros aleatorios segn una distribucin normal se deber ejecutar la opcin Herramientas/Anlisis de datos/Generacin de nmeros aleatorios. Esta opcin slo est

disponible si se han incorporado las Herramientas de anlisis. En el ejemplo citado se generan

los precios durante un periodo de 250 das, que representa aproximadamente el nmero de das anuales de cotizacin. De ah que al tomar t=1/250=0,004 se est simulando el precio diario del ttulo a lo largo de un ao. GRFICO III
A 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 B C D E F G H I J

SIMULACIN LOGNORMAL
Tiempo Media Sigma Deltat Precio del ttulo 12% 20% 0,004 5.000 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Desviaciones normales -0,409697805 0,368684141 -0,69769726 0,063421339 -1,095859261 -0,425641247 1,359026101 -0,395594952 2,191954991 -0,171777401 1,645253178 -0,063498646 -0,776192337 1,096555025 -0,515390184 -0,393279151 Precio del ttulo 5000,0000 4976,5436 5002,2066 4960,6356 4967,0003 4900,9764 4877,0009 4963,9458 4941,5400 5082,9068 5074,3096 5183,5049 5181,8299 5133,6665 5207,8680 5176,5113 5153,2970
=B9 =E6*EXP($B$6*$B$8+$B$7*D7*RAIZ($B$8)) =E7*EXP($B$6*$B$8+$B$7*D8*RAIZ($B$8)) 7000 6500 precio del ttulo 6000 5500 5000 4500 4000 3500 3000 0 50 100 da 150 200 250

Simulacin

V. VALORACIN DE OPCIONES GRFICO IV

La frmula de Black-Scholes es fcil de automatizar en una hoja de clculo. En el grfico IV se presenta un ejemplo de valoracin de una opcin de compra europea. De forma similar se pueden automatizar aproximaciones a los valores put y call de opciones americanas. En algunos casos interesar disponer de una funcin predeterminada para calcular el valor de la opcin directamente. Para ello se puede crear un mdulo en Visual Basic como el que se presenta a continuacin. Function Call(Precio, Ejercicio, Tiempo, Interes, sigma) Call= Precio * Application.NormSDist(d1(Precio, Ejercicio, _ Tiempo, Interes, sigma)) - Ejercicio * Exp(-Tiempo * Interes) * _ Application.NormSDist(d1(Precio, Ejercicio, Tiempo, Interes, sigma) _ - sigma * Sqr(Tiempo)) End Function 'La opcin de compra se valora a travs de la paridad put-call Function Put(Precio, Ejercicio, Tiempo, Interes, sigma) Put= Call(Precio, Ejercicio, Tiempo, Interes, sigma) _ + Ejercicio * Exp(-Interes * Tiempo) - Precio End Function Function d1(Precio, Ejercicio, Tiempo, Interes, sigma) d1= (Log(Precio / Ejercicio) + Interes * Tiempo) / (sigma * Sqr(Tiempo)) _ + 0.5 * sigma * Sqr(Tiempo) End Function VI. VALORACIN DE UNA OPCIN ASITICA MEDIANTE SIMULACIN Como combinacin de los problemas planteados en los dos epgrafes anteriores, se puede ilustrar la valoracin de una asitica mediante simulacin. En este tipo de opciones, el payoff no depende del precio del activo subyacente al expirar el plazo, sino del precio medio del activo a lo largo del periodo de vida de la opcin. En este ejemplo se obtiene el precio de una opcin de compra asitica como el valor descontado esperado del payoff de la opcin, para lo cual es necesario aproximar este valor esperado previamente mediante simulacin. En la celda E6 (grfico V) se introduce la expresin: =E5*EXP(($B$8-0,5*$B$7^2)*(1/52)+$B$7*gen_normal(0;1)*RAIZ(1/52)) que permite simular el precio semanal del ttulo a lo largo del ao al copiarlo en el rango correspondiente. En esta expresin se ha introducido la funcin gen_normal(0;1) definida por el usuario, que genera un nmero aleatorio normal. En la celda B12 se ha introducido la expresin: =PROMEDIO(E5:E57) que calcula el precio semanal medio. A partir de este resultado, en B13 se calcula el cash flow final:

=MAX(B12-B5;0) y en la celda B14 el valor descontado del mismo: =EXP(-B9*B8)*B13. Los resultados medios de la simulacin se recogen en el rango A52:B54 , y se obtienen a partir de los resultados de las simulaciones realizadas (columnas G y H) a travs del mdulo que se recoge a continuacin.

GRFICO V

Function Simular() 'Borrar rango de salida Filas = 0 For i = 1 To 65536 Contenido = Worksheets("Opciones_2").Cells(i + 2, "G").Value If Contenido = 0 Then Exit For Else Filas = Filas + 1 End If Next i Set RangoOcupado = Worksheets("Opciones_2").Range("G3", Worksheets("Opciones_2").Cells(Filas + 2, "H")) RangoOcupado.ClearContents 'Simulaciones Simulaciones = InputBox("Nmero de simulaciones: ") For i = 1 To Simulaciones Worksheets("Opciones_2").Calculate Worksheets("Opciones_2").Cells(i + 2, "G").Value = i Worksheets("Opciones_2").Cells(i + 2, "H").Value = Worksheets("Opciones_2").Range("B14").Value Next i Worksheets("Opciones_2").Range("B52").Value = Simulaciones Set rango = Worksheets("Opciones_2").Range("H3", Worksheets("Opciones_2").Cells(Simulaciones + 2, "H")) Worksheets("Opciones_2").Range("B53").Value = Application.Average(rango) Worksheets("Opciones_2").Range("B54").Value = Application.StDevP(rango) End Function

VII. ANLISIS DE DURACIN Dentro de las herramientas de anlisis, se pueden incorporar tambin dos funciones para realizar el anlisis de duracin: DURACION(liq; vto; cupn; rto; frec; base) Devuelve la duracin de Macauley de un bono de valor nominal supuesto de 100 unidades monetarias. Cada uno de los argumentos de la funcin representan los siguientes parmetros del bono: Liq es la fecha de liquidacin o adquisicin del bono. Vto es la fecha de vencimiento del bono. Cupn es la tasa de inters nominal anual del bono. Rto es el rendimiento al vencimiento del bono (inters noiminal). Frec es el nmero de cupones que se pagan por ao. Base determina el clculo de das: 0 u omitida (USA 30/360); 1 (Actual/Actual); 2 (Actual/360); 3 (Actual/365); 4 (Europea 30/360). DURACION.MODIF(liq; vto; cupn; rto; frec; base) Devuelve la duracin modificada de un valor burstil, a travs de la expresin: Duracin modificada = 1+ Duracin Rendimient o al vencimien to Nmero de cupones anuales

Los argumentos y funcionamiento son similares a los de la funcin DURACION. Dado que ambas funciones son relativamente complejas de manejar, puede ser recomendable la creacin de una funcin definida por el usuario que calcule la duracin con los siguientes argumentos: pagos, cupn, rendimiento al vencimiento y tiempo hasta el primer pago.

Otras aplicaciones clsicas de problemas financieros como la gestin de carteras, tambin desarrollados desde los primeros pasos de la hoja de clculo pueden analizarse en Medina(1993) y en la mayora de los textos de programacin no lineal de los ltimos aos. Destacar por ltimo el gran nmero de funciones financieras que las Herramientas de anlisis hacen disponibles, y que en muchos caso resultan opacas al usuario.

REFERENCIAS BIBLIOGRFICAS FERNNDEZ, P. (1996): Opciones, futuros e instrumentos derivados. Deusto. Bilbao. MEDINA, A.(1993): 50 Modelos financieros con Excel. Anaya Multimedia. Madrid. LPEZ, S. y SNCHEZ, I.(1997): Modelizacin financiera con Maple V, en

Byana, A. y otros: Matemtica de las Operaciones Financieras 97, Universitat de Barcelona.

También podría gustarte