MATLAB para Economistas(2) José Luis Hueso Matemática Aplicada Universidad Politécnica de...
-
Upload
luis-miguel-cuenca-pereyra -
Category
Documents
-
view
227 -
download
3
Transcript of MATLAB para Economistas(2) José Luis Hueso Matemática Aplicada Universidad Politécnica de...
MATLAB para Economistas(2)
José Luis HuesoMatemática AplicadaUniversidad Politécnica de Valencia
Itinerario
1ª Etapa: Invertir en MATLAB
2ª Etapa: MATLAB funciona
3ª Etapa: MATLAB marca la diferencia
MATLAB funcionaImportación de datos de hoja de cálculo
Archivos.m
Más gráficos de barras
Recta de regresión
Ajuste polinómico
Ajuste exponencial
La amortización de un préstamo
Líneas telefónicas/100h
Volatilidad del IGBM
Fórmulas de Black-Scholes (opciones sobre acciones)
Importar datos de una Hoja de Cálculo
Nombrar el rango a importar: datos
Posición inicial del rango: fila, columna
Guardar el fichero como .wk1: mihoja
Leer los datos desde MATLAB» f=fila-1; c=columna-1;
» A=wk1read('mihoja',f,c,'datos')
Exportar una matriz a una Hoja de Cálculo
» A=magic(5)» wk1write('Cuadradomagico',A,4,2)
Nombre de fichero (.wk1)
Matriz a exportar
Filas y columnas de
margen
Importar de un fichero ASCII
» load fichero.txt
Lee filas de datos numéricos separados
por espacios.
Admite comentarios precedidos por %.
Genera una variable llamada "fichero".
Gráfico de líneas» load igbm.txt –ascii» plot(igbm(:,2)),hold» plot(igbm(:,2),'ro')
Títulos» title('IGBM del 3/9 al 26/10')» xlabel('Sesión')» ylabel('Índice')» gtext('11 de Septiembre')
Archivos.m
Contienen órdenes de MATLAB.
Se invocan desde la ventana de órdenes, o desde otro archivo.m.
Se editan y graban como ficheros ASCII.
Extienden las funciones definidas en MATLAB.
La amortización de un préstamoPara comprar un piso, pides un préstamo de 10 millones al 10% anual a 15 años. Lo devuelves pagando una cantidad constante al final de cada año. ¿Cuál es esta cantidad?
C = 10.000.000 n = 15 r = 0.1
plazo = C.r.(1+r)n/((1+r)n–1)
Función para calcular el plazo
function plazo = amortiza(C,n,r)
% plazo = amortiza(C,n,r)
% C: Importe del préstamo
% r: Interés por periodo
% n: Número total de periodos
j = 1+r;
plazo = C*r*j^n/(j^n-1);
La amortización de un préstamo¿Cuánto corresponde a intereses y cuánto a amortización del capital en el pago correspondiente al año t = 1, ..., 15?
principal = plazo.(1+r) t – 1 – n
interes = plazo – principal
Calculo del interés pagado
function [plazo,interes,principal] = amortiza(C,n,r,t)
% t:número de pago
j = 1+r;
plazo = C*r*j^n/(j^n-1);
principal = plazo.(1+r)^(t–1–n);
interes = plazo – principal
Archivos.m de Función
function [a,i,p] = amortiza(C,n,r,t)
Palabra clavePalabra clave Nombre de funciónNombre de función
Argumentos de entradaArgumentos de entradaArgumentos de salidaArgumentos de salida
plazoplazo
CCnnrrtt
pagopagointeresesinteresesamort. capitalamort. capital
Gráficos de barras múltiples
Vectorializar la función amortiza.m» [a,p,i]=amortiza2(1e7,15,0.1)
Barras adosadas» bar([p',i']), gtext('Intereses')
Barras separadas» bar([p 0 0 0 0 i])
Barras apiladas» bar([p',i'],'stacked')
Volatilidad del IGBM
Valor del índiceRentabilidadlogarítmica
Desviación tipica
Volatilidad (t: intervalo entre datos)
n210 S,,S,S,S
n,,1i),SSln(u 1iii
n
1i
2i )uu(
1n
1s
s
Volatilidad del IGBM
function v = volatilidad(S,t)
% S: Valores de la acción
% t: intervalo de tiempo
u = diff(log(S));
s = std(u);
v = s/sqrt(t);
Fórmulas de Black-Scholes
Opciones europeas sobre accionesc: precio de la opción de compra (call)p: precio de la opción de venta (put)S: precio de la acciónX: precio de ejercicior: tipo de interés libre de riesgoT: tiempo hasta el vencimiento de la opción: volatilidad de la acción
Fórmulas de Black-Scholes
T
T)2/r()X/Sln(d
2
1
TdT
T)2/r()X/Sln(d 1
2
2
)d(NXe)d(NSc 2rT
1
)d(NS)d(NXep 12rT
Líneas telefónicas / 100 habitantes
25
27
29
31
33
35
37
39
41
1988
1999
1990
1991
1992
1993
1994
1995
Año Líneas /100 hab
1.988 28.1
1.989 30.0
1.990 32.3
1.991 34.6
1.992 35.3
1.993 36.4
1.994 37.5
1.995 38.5
Nodos: (x1, y1), (x2, y2),..., (xm, ym)
Recta de regresión:
Error cuadrático
m
1i
2ii10
2 )yxaa(R
xaa)x(P 101
Recta de regresión
Líneas telefónicas
Recta de regresión» x = (1988:1995)'» y = [28.1 30 32.3 34.6 35.3 36.4 37.5 38.5]'
» p = polyfit(x,y,1)» yr = polyval(p,x)» plot(x,y,'r*',x,yr)
Recta de regresión
1988 1989 1990 1991 1992 1993 1994 199528
30
32
34
36
38
40
Líne
as t
elef
ónic
as /
100
hab
itant
es
Líneas telefónicas
Ajuste polinómico» p = polyfit(x,y,2)» xg = linspace(1988,1995)» yg = polyval(p,xg)» plot(x,y,'r*',xg,yg)
Cambio de origenEstabilidad de los cálculos
Regresión parabólica
1988 1989 1990 1991 1992 1993 1994 199528
30
32
34
36
38
40
Líneas telefónicas / 100 habitantes
Error cuadrático» px = polyval(p,x)
» R2 = norm(px-y)^2
Índice de determinación» I = (norm(px-mean(y))/...
norm(y-mean(y)))^2
Ajuste polinómico Mínimo-Cuadrático
m
1i
2iin
2 )y)x(P(R
m
1i
2i
m
1i
2in
)yy(
)y)x(P(
I
Ajuste Mínimo Cuadrático con MATLAB
-4 -3 -2 -1 0 1 2 3 428
30
32
34
36
38
40
Grado 4. Índice de determinación: 0.9968
Transformación de datos
0
100
200
300
400
500
600
700
800
900
1000
1,98
8
1,99
0
1,99
2
1,99
4
Mil
es d
e ab
on
ado
s
Año Abonados TeléfonoMóvil
1.988 11.689
1.989 29.783
1.990 54.712
1.991 108.451
1.992 180.296
1.993 257.250
1.994 411.930
1.995 928.955
F I Nde la segunda parte