Generate Time Series with specific ACF and multiple LAG

Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
1 reply · 2K views
Xcode
Messages
1
Reaction score
0
Hello Everyone,

I will try to explain what am I doing here and I hope someone will understand.
ACF - autocorrelation function

I'm doing a research about non-parametric methods utility. How they fit and are useful in a different environment. I'm generating time series with different sizes of data (N=128, N=256, N=512 and so on, N - represents how many values are in time series.). For the results to be more accurate I generate 10 000 samples for each N=128, N=256... I'm using different ACF values (0,1 , 0,3 , 0,5 , 0,7 and 0,9) to generate those time series. And I also use 4 different distributions (Normal, Exponential, Cauchy and Uniform).

I've managed to generate time series with LAG=1 using autoregressive process X(t) = aX(t-1) + e(t), where a = ACF value, e(t) are successively chosen at random using random number distribution (normal,exp,uni or cauchy).

After having time series generated with specific ACF, I calculate autocorrelation from those generated time series. Having those two different values (ACF and autocorrelation from time series) I can calculate different residues and see where one or another method is more effective.

I couldn't figure out how to generate time series with LAG>1.

So, what I need to do now is to:

A) Generate time series with higher LAG than 1. And while the LAG is increasing, I need ACF value to go down slowly and reach 0 (lets say in 10-20 LAGS)

B) Generate time series with higher LAG than 1. And while the LAG is increasing, I need ACF value to go down FAST and reach 0 (lets say in 2-4 LAGS). ACF = 0 value should repeat itself until LAG=100 and then it should go up significantly

C) Same thing. Generate time series by increasing it's LAG, but the ACF value should be cyclic. It should repeat itself every 4 or 8 or 12 LAG.

I hope you understood what I was trying to say. Can you help me?
 
Physics news on Phys.org
For lag > 1, just try something like X(t) = aX(t-lag) + e(t)

Is this what you are looking for?
A) X(t) = 1/5.5* [X(t-1) + 0.9*X(t-2)+ 0.8*X(t-3)+ 0.7*X(t-4)+ 0.6*X(t-5) + ... ] + e(t)

(I divided by 5.5 = 1+.9+.8+.7+.6+.5+.4+.3+.2+.1. I think that will make it stationary. Not sure. Would have to think about that. You can always divide by more.)