La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

MatLab: Notions de Programmation Applications en Finance

Présentations similaires


Présentation au sujet: "MatLab: Notions de Programmation Applications en Finance"— Transcription de la présentation:

1 MatLab: Notions de Programmation Applications en Finance
Chapitre VI MatLab: Notions de Programmation Applications en Finance

2 Introduction MatLab=Matrix Laboratory
Permet la manipulation de matrices de maniere souple Developpement d’outils dans diverses disciplines: Econometrie, finance Analyse des signaux Ingenierie etc...

3 Fenetre d’execution Indiquee par >>
Toutes les fonctions en Matlab sont des lignes de texte et sont executees en appelant le nom de la fonction avec ses parametres

4 Help Fonction d’aide en ligne help non_fonction

5 Fichiers Matlab Les fichiers sont en texte Extension .m Edit corrcoef
%: Commentaire

6 Ponctuation Les instructions sont terminees par un point-virgule
Sinon, les calculs sont affiches

7 Commandes Generales who: liste des variables en memoires
whos: informations complementaires sur leur type clear: annule les variables specifiees (ou toutes) save: sauver une variables sous format specifie load: charger une variable a partir d’un fichier what: liste des fonctions dans le fichier de travail

8

9 Operations de Base +, -, *, /, ^, sin, cos, tan, asin, acos, atan,
exp, log (naturel), log10 (en base 10), abs, sqrt, sign

10 Matrices Entre parentheses carrees Vecteur ligne x = [1, 2, 3];
Vecteur colonne: y = [1; 4; 7]; Matrice: A = [1 2 3; 4 5 6; 7 8 9]; ou: A = [ ];

11 Exemple

12 Manipulation de Matrices
Pour faire reference a des elements d’une matrice l’element amn est indique A(m,n); A(2,3) donne 6 La ligne m est indiquee par A(m,:), toutes les colonnes sont selectionnees par : A(2,:) donne [4 5 6] La colonne n est indiquee par A(:,n), toutes les lignes sont selectionnees A(:,3) donne [3; 6; 9] La matrice partielle amn, avec m1£m£m2 et n1£n£n2 A(m1:m2,n1:n2); A(1:2,2:3) dà [2, 3; 5, 6]

13 Les operateurs matriciels
+ - * ^ / \ ' Transposition Division a gauche:A\B=inv(A)*B Division a droite: B/A=B*inv(A) Attention: L’ordre des matrices n’est pas indifferent A*B ¹ B*A

14 X=3x2 Y=2x3 XY=3x3 YX=2x2

15 Autres fonctions utiles
max, min, sort, sum, prod, median Manipulation element par element y = sin(x) .* cos(x); Valeurs manquantes NaN Isnan, nanmean, nanstd

16 Autres inv det Inverse de la matrice size Determinant rank Dimensions
eig On ne peut inverser que des matrices carrees Inverse de la matrice Determinant Dimensions rang Valeurs propres » y=normrnd(0,1,100,1); » x=0.5*y+normrnd(0,1,100,1); » beta=inv(x'*x)*x'*y beta = 0.3541

17 Creation de matrices eye(n) : matrice identite zeros(m,n): matrice de zeros ones(m,n) : matrice de 1 rand(m,n) : matrice aleatoire [0,1] diag(X) : extraire la diagonale

18

19 Generation de Vecteurs
Sans specifier d’increment t=1:5 => t=[ ] Increment positif specifie t=0:0.2:1 => t=[ ] Increment negatif t=2:-0.2:1 => t=[ ]

20 IF-THEN-ELSE if condition1, operation1; elseif condition2, operation2;
end;

21 Condition1,2 doivent donner comme resultats TRUE ou FALSE.
Les Operateurs sont: < , > <= , >= == ~= & | egal different Et ou

22

23 Boucles Syntaxe de base for k = 1:step:n, operationi, end;
Executer l’operation pour k=1,1+step,1+2step....jusqu’a n while condition operationi;

24 Exemple » y=[]; for x=0:pi/4:2*pi; si=sin(x); y=[y;si]; end y y =
0.7071 1.0000 0.0000

25 Graphiques plot cree des graphiques en deux dimensions plot(x,y);
x=0:pi/20:2*pi; » y=sin(x)

26 plot(x,y,'g+'); Choix possibles r red point g green o circle b blue x x-mark w white + plus m magenta * star c cyan solid y yellow : dotted k black dashed -. dash-dot

27 Autres commandes grid : lignes title : titre xlabel : legende abscisses ylabel : legende ordonnees axis : changer echelle figure cree une nouvelle fenetre graphique

28 Pour visualiser differents graphiques
subplot(211), plot(funz1); subplot(212), plot(funz2); subplot(2,1,1) » plot(normrnd(0,1,100,1)) » subplot(2,1,2) » plot(normrnd(0,1,100,1)*100)

29 Fonction graphique en 3D
xx = -2:0.1:2; yy = xx; [x,y] = meshdom(xx,yy); z = x .* exp(-x.^2 - y.^2); mesh(z);

30 Nouvelles Fonctions Creer un nouveau fichier en mode editeur
La premiere ligne donne function z = fun1(a,b) ou function [x,y] = fun2(a,b) a et b sont les inputs Z, ou x et y sont les resultats

31 Finance Frontiere Efficiente:
Utiliser la Boite d’Outils MatLab Finance Creer routine de maximisation de la fonction d’utilite

32

33

34

35

36


Télécharger ppt "MatLab: Notions de Programmation Applications en Finance"

Présentations similaires


Annonces Google