Matlab fenêtre glissante
Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

Matlab fenêtre glissante



  1. #1
    diego45

    Matlab fenêtre glissante


    ------

    Bonjour j'ai un petit problème voici mon code :

    Code:
    model = gjr(1,1); %Paramètre générales du modèle GJR
    T= length(r); %Compte le nombre de jours de la série 
    ww= 1000; % Taille de la fenêtre de 1000 jours
    ws=1; %Début de la fenêtre
    for t= ww:ws:T %Fenêtre de 1000 qui décale de 1 jours, jusqu’à T 
        subr= r(t-ww+1:t); %Permet de redéfinir la plage en fonction de la fenêtre
        EstMdl= estimate(model,subr); %Estime les nouveaux paramètres sur la fenêtre
    end
    all_h= [1 5 15 30];
    for k=1:length(all_h)
    V = forecast(EstMdl,all_(k));  %Forecast de la variance conditionele sur les plages k 
    RMSE = rms(subr.^2-V); %Calcule de l’erreur de prévision avec comme proxy les rendements au carré sur la période.
    Ce que je voudrais faire, c'est qu'il m'estime le modèle pour chaque pas de la fenêtre. et que l'on retrouve les paramètres dans EstMdl, là j'ai l'impression qu'il me conserve uniquement le dernier paramètre estimée.

    Le but étant que ma fonction forecast, prenne en input les paramètres pour la première fenêtre, puis comme second paramètre h = 1, ensuite fasse la même chose pour h = 5 .... et ainsi de suite. Puis prenne les paramètres de la seconde fenêtre et fasse le forecast à horizon 1, 5 et 15 jours.

    Avez vous une idée ?

    Merci d'avance

    -----
    Dernière modification par diego45 ; 05/03/2014 à 18h58.

  2. #2
    lou_ibmix_xi

    Re : Matlab fenêtre glissante

    EstMdl= estimate(model,subr); %Estime les nouveaux paramètres sur la fenêtre
    C'est marqué là, en bon français "met le résultat de estimate dans la variable appelée EstMdl", le égal est bien une affectation et non une concaténation!

    Je n'ai aucune idée des dimensions en jeu, mais l'exemple suivant fonctionne si le retour de "estimate" est un vecteur colonne de taille N, alors la boucle devrait ressembler à:
    Code:
    EstMdl = zeros(N, length(ww:ws:T);
    t = ww:ws:T;
    for k = 1:length(t)
        EstMdl(:, k) = estimate(model,subr);
    end

Discussions similaires

  1. [matlab] programmation : peut-on générer un arbre des fonctions d'un code Matlab ?
    Par bratisla dans le forum Logiciel - Software - Open Source
    Réponses: 3
    Dernier message: 09/07/2015, 10h12
  2. [SciLab] Moyenne mobile/glissante
    Par invite5ad75789 dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 16/07/2012, 09h05
  3. Moyenne glissante
    Par usurpateur dans le forum Mathématiques du supérieur
    Réponses: 3
    Dernier message: 26/07/2011, 20h21
  4. fenetre bois ou fenetre pvc
    Par invite657f4500 dans le forum Technologies
    Réponses: 20
    Dernier message: 19/07/2010, 06h04
  5. [TIPE] acoustique - calcul de TR - TF glissante
    Par inviteedf5576f dans le forum TPE / TIPE et autres travaux
    Réponses: 0
    Dernier message: 21/04/2007, 10h27