Data Frequency Transformation

1 visualizzazione (ultimi 30 giorni)
Pap
Pap il 15 Dic 2011
Hi all,
I use a dataset of intraday stock prices at random time intervalas.
Is there any code to transform these data into specific freequency ones with respect to time (i.e. 5-min prices, 60-min prices etc)
Thanks in advance,
Panos

Risposta accettata

Dr. Seis
Dr. Seis il 15 Dic 2011
Try interpolation!
doc interp1
Here is an example using "interp1" with the method set to "spline":
T = 60*8; % max time = 480 minutes (= 8 hours)
t = 0:5:T; % uniform time across T every 5 minutes
t_rand = sort(rand(1,T)*T); % irregular time across T at random sample intervals
data = @(t)sin(2*pi*0.03*t) + cos(2*pi*0.1*t) + sin(2*pi*0.05*t) + 2*sin(2*pi*0.005*t) ;
data_interp = interp1(t_rand,data(t_rand),t,'spline');
plot(t,data(t),t_rand,data(t_rand),t,data_interp);
legend('Uniform time','Random time', 'Interp time');

Più risposte (0)

Categorie

Scopri di più su Curve Fitting Toolbox in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by