matlab para economistas(2) josé luis hueso matemática aplicada universidad politécnica de...

Post on 23-Jan-2016

225 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

top related