11.07.2015 Views

Optimisation de la Frontière Efficiente Mean Blur ... - Yats.com

Optimisation de la Frontière Efficiente Mean Blur ... - Yats.com

Optimisation de la Frontière Efficiente Mean Blur ... - Yats.com

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Optimisation</strong><strong>de</strong> <strong>la</strong>Frontière <strong>Efficiente</strong><strong>Mean</strong> <strong>Blur</strong>Génération pseudo aléatoireProgrammation en CDaniel HERLEMONT 1RappelsPt− PRt=Pt−1t−1<strong>Mean</strong> = R =R1+ R2+ ... + RNN( R − R) + ( R2− R) + ... + ( RT− R)Var = =T − 1σ 2 1 22 2Le risque peut être défini <strong>com</strong>me <strong>la</strong> perte potentielle due aux variations <strong>de</strong>s actifsDans le cas <strong>de</strong> ren<strong>de</strong>ments normalement distribués N(r,σ 2 )le risque se résume dans <strong>la</strong> vo<strong>la</strong>tilité σPtRt≈ log( 1 + Rt) = logPRemarque pour<strong>de</strong>s ren<strong>de</strong>ments faibles(journaliers, hebdomadaires voire mensuels)t−1= log P − log Ptt−1Daniel HERLEMONT 2Page 11


Loi <strong>de</strong> <strong>la</strong> racine carré du tempsLe ren<strong>de</strong>ment logarithmiques sur une pério<strong>de</strong> 0,t peut donc être vu <strong>com</strong>me<strong>la</strong> somme <strong>de</strong>s ren<strong>de</strong>ments sur t sous-pério<strong>de</strong>s.log Pt− log P0 = (log Pt− log Pt−1)+ ... + (log P1− log P0)R0 , t= Rt, t−1+ Rt−1,t−2+ ...R0,1En général, on considère que les ren<strong>de</strong>ments Rt sont indépendants et i<strong>de</strong>ntiquement distribués (IID)(si il en était pas ainsi, il serait possible <strong>de</strong> profiter <strong>de</strong>s corré<strong>la</strong>tions sérielles)Le ren<strong>de</strong>ment sur <strong>la</strong> pério<strong>de</strong> [0,t] s'exprime alors <strong>com</strong>me <strong>la</strong> somme <strong>de</strong> variables aléatoiresindépendantes et <strong>de</strong> même "loi" (du moins en loi empirique)var( R0,t) = var( Rt, t−1)+ var( Rt−1,t−2)+ ...var( R0,1)var( R0,t) = t var( R0,1)Le ren<strong>de</strong>ment sur t pério<strong>de</strong>s peut donc être considéré <strong>com</strong>me une variable aléatoire <strong>de</strong>moyenne µ tavec µ le ren<strong>de</strong>ment sur une pério<strong>de</strong>variance σ 2 tet σ 2 <strong>la</strong> variance sur une pério<strong>de</strong>Ce résultat reste va<strong>la</strong>ble pour les ren<strong>de</strong>ments arithmétiques (voir exercice)Exemple:Rannuel 12 R moisσ = 12 σ= annuelmoisDaniel HERLEMONT 3signal/bruit = r/σ ~ t 1/2 → 0 lorsque ∆t → 0La tendance n'apparaît c<strong>la</strong>irementqu'à <strong>de</strong>s horizons <strong>de</strong> temps <strong>de</strong> l'ordre<strong>de</strong> plusieurs annéesLes données intradaysont dominées par<strong>la</strong> vo<strong>la</strong>tilité (bruit)- facteur d'échelle ~ racine carré du temps (conséquence <strong>de</strong> l'indépendance) :vo<strong>la</strong>tilité jour = vo<strong>la</strong>tilité annuelle / 260 0.5ren<strong>de</strong>ment jour = ren<strong>de</strong>ment annuel / 260signal/bruit = r/σ ~ t 1/2→ 0 lorsque ∆t → 0ren<strong>de</strong>ment vo<strong>la</strong>tilité signal/bruit = r/σ ~ t 1/2annuel 5% 20% 0.25jour 0,02% 1.26% 0,016temps caractéristique = σ 2 /µ 2 temps pour lequel signal ~ bruitexemple précé<strong>de</strong>nt T=16 ans !!!Daniel HERLEMONT 4Page 22


Estimations Estimation <strong>de</strong>s ren<strong>de</strong>ments historiques Estimation <strong>de</strong> <strong>la</strong> matrice <strong>de</strong> covariance => Génération <strong>de</strong> suites pseudo aléatoiresgaussiennes - mono et multi variésDaniel HERLEMONT 5Génération <strong>de</strong> variables aléatoires en C - loi uniformePour générer une variable aléatoire uniforme, on utilisera <strong>la</strong> fonction rand<strong>de</strong> <strong>la</strong> bibliothèque mathématique. Cette fonction renvoie un entier <strong>com</strong>prisentre 0 et 32768.On pourra donc générer une suite pseudo aléatoire <strong>de</strong> <strong>la</strong> manière suivante:#inclu<strong>de</strong> #inclu<strong>de</strong> /* rand() */int main(void) {int i;for(i=0;i


Initialisation du générateur aléatoireDes appels successifs au programme précé<strong>de</strong>nt conduiront à <strong>la</strong> même suite pseudo aléatoire.Si on souhaite obtenir une suite différente lors <strong>de</strong> chaque appel, il suffit d'utiliser <strong>la</strong> fonctionsrand(long).Cette fonction initialise le générateur aléatoire en fonction d'un paramètre <strong>de</strong> type long. Pourobtenir une suite différente à chaque appel, il suffit du d'attribuer une valeur différente auparamètre, ce qui peut se réaliser simplement en utilisant <strong>la</strong> fonction time, par exemple.#inclu<strong>de</strong> #inclu<strong>de</strong> /* contient le prototype <strong>de</strong> rand() */#inclu<strong>de</strong> /* contient le prototype <strong>de</strong> srand() */int main(void) {int i;srand(time(NULL));for(i=0;i


Simu<strong>la</strong>tion <strong>de</strong> variables aléatoires normales : Box-MullerDaniel HERLEMONT 9Estimations du ren<strong>de</strong>ment moyen et <strong>de</strong> <strong>la</strong> vo<strong>la</strong>tilitéSimuler 8 ans <strong>de</strong> ren<strong>de</strong>ments mensuel d'une action dont le ren<strong>de</strong>ment espéré est<strong>de</strong> r=1% et σ = 4.33%, correspondant à une action typique :<strong>de</strong> ren<strong>de</strong>ment annuel = 12%=12 x 1%et vo<strong>la</strong>tilité annuelle = 15% = 12 1/2 x 4.33%Source: Luenberger, Investment ScienceDaniel HERLEMONT 10Page 55


Estimations du ren<strong>de</strong>ment moyen et <strong>de</strong> <strong>la</strong> vo<strong>la</strong>tilitéDaniel HERLEMONT 11Estimations du ren<strong>de</strong>ment moyen et <strong>de</strong> <strong>la</strong> vo<strong>la</strong>tilitéDaniel HERLEMONT 12Page 66


ExercicesDaniel HERLEMONT 13Cholesky Si A est une matrice symétrique définie positive, il existe au moins unematrice réelle triangu<strong>la</strong>ire inférieure L telle que :A=LL TOn peut également imposer que les éléments diagonaux <strong>de</strong> <strong>la</strong> matrice L soient touspositifs, et <strong>la</strong> factorisation correspondante est alors unique La matrice L est en quelque sorte une « racine carrée » <strong>de</strong> A. Cettedé<strong>com</strong>position permet notamment <strong>de</strong> calculer <strong>la</strong> matrice inverse A -1 , <strong>de</strong> calculer le déterminant <strong>de</strong> A (égal au carré du produit <strong>de</strong>s élémentsdiagonaux <strong>de</strong> L) ou encore <strong>de</strong> simuler une loi multi-normale.Daniel HERLEMONT 14Page 77


Cholesky (suite)Exemple pour une matrice <strong>de</strong> covariance a <strong>de</strong>ux actifs:Daniel HERLEMONT 15Cholesky (algorithme)Daniel HERLEMONT 16Page 88


Cholesky - Algorithme (suite)Daniel HERLEMONT 17Cholesky - réalisation en CExemple issu <strong>de</strong> Numerical Recipeshttp://www.library.cornell.edu/nr/bookcpdf/c2-9.pdfA réaliser en <strong>com</strong>mençant l'in<strong>de</strong>xation <strong>de</strong>s tableaux à 0 !!!Daniel HERLEMONT 18Page 99


Cholesky - Solution d'un système linéaireDaniel HERLEMONT 19Cholesky - inversion <strong>de</strong> matriceDaniel HERLEMONT 20Page 1010


Cholesky - génération normale multi-variéesSoit u un vecteur constitué <strong>de</strong> n nombres aléatoiresindépendants distribués selon <strong>la</strong> loi normale réduite.Soit L <strong>la</strong> matrice triangu<strong>la</strong>ire inférieure résultant <strong>de</strong> <strong>la</strong>dé<strong>com</strong>position <strong>de</strong> Cholesky <strong>de</strong> <strong>la</strong> matrice VLe vecteur x = m + Lu suit <strong>la</strong> loi multinormale N(m, V).Démonstration en exercice …Daniel HERLEMONT 21Page 1111

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!