MATLAB para Economistas(2)

28
MATLAB para Economistas(2) José Luis Hueso Matemática Aplicada Universidad Politécnica de Valencia

description

MATLAB para Economistas(2). José Luis Hueso Matemática Aplicada Universidad Politécnica de Valencia. Itinerario. 1ª Etapa: Invertir en MATLAB 2ª Etapa: MATLAB funciona 3ª Etapa: MATLAB marca la diferencia. Importación de datos de hoja de cálculo Archivos.m Más gráficos de barras - PowerPoint PPT Presentation

Transcript of MATLAB para Economistas(2)

Page 1: MATLAB para Economistas(2)

MATLAB para Economistas(2)

José Luis HuesoMatemática AplicadaUniversidad Politécnica de Valencia

Page 2: MATLAB para Economistas(2)

Itinerario1ª Etapa: Invertir en MATLAB

2ª Etapa: MATLAB funciona

3ª Etapa: MATLAB marca la diferencia

Page 3: MATLAB para Economistas(2)

MATLAB funcionaImportación de datos de hoja de cálculoArchivos.mMás gráficos de barrasRecta de regresiónAjuste polinómicoAjuste exponencial

La amortización de un préstamoLíneas telefónicas/100hVolatilidad del IGBMFórmulas de Black-Scholes (opciones sobre acciones)

Page 4: MATLAB para Economistas(2)

Importar datos de una Hoja de Cálculo

Nombrar el rango a importar: datosPosición inicial del rango: fila, columnaGuardar el fichero como .wk1: mihojaLeer los datos desde MATLAB» f=fila-1; c=columna-1;» A=wk1read('mihoja',f,c,'datos')

Page 5: MATLAB para Economistas(2)

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

Page 6: MATLAB para Economistas(2)

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".

Page 7: MATLAB para Economistas(2)

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')

Page 8: MATLAB para Economistas(2)

Archivos.mContienen ó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.

Page 9: MATLAB para Economistas(2)

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)

Page 10: MATLAB para Economistas(2)

Función para calcular el plazofunction 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);

Page 11: MATLAB para Economistas(2)

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

Page 12: MATLAB para Economistas(2)

Calculo del interés pagadofunction [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

Page 13: MATLAB para Economistas(2)

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

plazoplazoCCnnrrtt

pagopagointeresesinteresesamort. capitalamort. capital

Page 14: MATLAB para Economistas(2)

Gráficos de barras múltiplesVectorializar 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')

Page 15: MATLAB para Economistas(2)

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(

1n1s

s

Page 16: MATLAB para Economistas(2)

Volatilidad del IGBMfunction 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);

Page 17: MATLAB para Economistas(2)

Fórmulas de Black-ScholesOpciones 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

Page 18: MATLAB para Economistas(2)

Fórmulas de Black-Scholes

TT)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

Page 19: MATLAB para Economistas(2)

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

Page 20: MATLAB para Economistas(2)

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

Page 21: MATLAB para Economistas(2)

Líneas telefónicasRecta 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)

Page 22: MATLAB para Economistas(2)

Recta de regresión

1988 1989 1990 1991 1992 1993 1994 199528

30

32

34

36

38

40

Líne

as te

lefó

nica

s / 1

00 h

abita

ntes

Page 23: MATLAB para Economistas(2)

Líneas telefónicasAjuste 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

Page 24: MATLAB para Economistas(2)

Regresión parabólica

1988 1989 1990 1991 1992 1993 1994 199528

30

32

34

36

38

40Líneas telefónicas / 100 habitantes

Page 25: MATLAB para Economistas(2)

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

Page 26: MATLAB para Economistas(2)

Ajuste Mínimo Cuadrático con MATLAB

-4 -3 -2 -1 0 1 2 3 428

30

32

34

36

38

40Grado 4. Índice de determinación: 0.9968

Page 27: MATLAB para Economistas(2)

Transformación de datos

0100200300400500600700800900

1000

1,98

8

1,99

0

1,99

2

1,99

4

Mile

s de

abo

nado

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

Page 28: MATLAB para Economistas(2)

F I Nde la segunda parte