[Matlab] Frequency van data aanpassen (annual naar monthly)

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • bart1074
  • Registratie: September 2003
  • Laatst online: 27-03-2024
Ik heb een reeks vectoren met jaarlijkse cijfers (macro-economisch), lopend vanaf 1999 t/m 2011. Aangezien 2011 nog niet is afgelopen lopen de meeste vectoren slechts tot 2010. Ik wil deze data omzetten naar maandelijkse data. De frequency aanpassen dus. Volgens mij moet dit niet ingewikkeld zijn, aangezien matlab hier voor gedefinieerde functies voor heeft. Ik maak dus gebruik van de financial time series functie fints(). Zo maak ik eerst een financial time serie van mijn jaarlijkse data. Dit gaat goed. Vervolgens gebruik ik de conversie functie tomonthly(); om de jaarlijkse data naar maandelijkse data te converteren. Het resultaat is echter een matrix met maandelijkse datums maar de bijbehorende waardes zijn leeg, of eigenlijk NaN. Wat gaat er mis? Ik heb het ook al geprobeerd met de functie convertto(); maar dat levert ook geen resultaat op. Hopelijk kunnen jullie helpen. Hieronder mijn code en de vector met jaarlijkse data.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
% IMPORTING THE ANNUAL MACRODATA
changes_inventory_annually = xlsread('E:\My Documents\MSc Finance\MSc Thesis - Macrovariables and the yield curve\data\macro\ChangesInventory-seasadj-annually.xlsx', 1);
changes_inventory_annually(:,1) = changes_inventory_annually(:,1) + datenum('30-Dec-1899');
changes_inventory_annually_DATA_ONLY = changes_inventory_annually(:,2);

% EXTRACTING THE DATES FROM THE MACRODATA
changes_inventory_dates = changes_inventory_annually(:,1);
changes_inventory_datesVEC = datevec(changes_inventory_dates);

% DEFINING THE MACROFINANCIAL TIME SERIES
changes_inventory_fts_a = fints(changes_inventory_dates, changes_inventory_annually_DATA_ONLY, term2, 6);
changes_inventory_fts_m = tomonthly(changes_inventory_fts_a);

changes_inventory_data_a = fts2mat(changes_inventory_fts_a,1);
changes_inventory_data_m = fts2mat(changes_inventory_fts_m,1);

% DEFINING THE MACRODATA WITHOUT DATES
macro_changes_inventory_a = changes_inventory_data_a(:,2);
macro_changes_inventory_m = changes_inventory_data_m(:,2);


730121-0.0920000000000000
7304860.430100000000000
7308521.51800000000000
731217-1.27500000000000
731582-0.759000000000000
7319470.818000000000000
7323130.598000000000000
7326781.71990000000000
7330432.46700000000000
7334080.00700000000000000
733774-4.52800000000000
7341392.68910000000000
734504NaN

Acties:
  • 0 Henk 'm!

  • rvtk
  • Registratie: Juni 2001
  • Laatst online: 19:19
Ik ben zelf niet thuis in de financial toolbox, maar kan je changes_inventory_fts_a en changes_inventory_fts_m eens dumpen en in een code-tag zetten?

Krijg je altijd een NaN bij de laatste rij? Betekent dat dan niet dat Matlab het niet kan berekenen aangezien je het jaar 2011 nog niet hebt afgesloten?