This function is available only with RAP – The Trading Edition Enterprise.
Performs automatic selection and fitting of a univariate autoregressive time series model.
TS_AUTO_UNI_AR (timeseries_expression, ar_count, ar_elem, method)
OVER (window-spec)
timeseries_expression A numeric expression, generally a column name, containing an element in a time series.
ar_count An integer containing the number of autoregressive values to compute.
ar_elem An integer identifying which computed autoregressive value to return. The integer must be greater than zero, and less than or equal to ar_count.
method (Optional) An integer identifying which method to use when computing AR coefficients, where: 0 = method of moments 1 = method of least squares (the default value) 2 = maximum likelihood.
window-spec TS_AUTO_UNI_AR is an OLAP function requiring an OVER () clause.
This time series function returns a double-precision floating-point number containing the autoregressive estimate. TS_AUTO_UNI_AR calls the function imsls_d_auto_uni_ar in the IMSL libraries.
The arguments of TS_AUTO_UNI_AR map to the IMSL library function imsls_d_auto_uni_ar as follows:
params = imsls_d_auto_uni_ar (n_objs, z[], maxlag, p, method, 0);
n_objs Contains the number of rows in the current window frame.
z[] Contains the value of timeseries_expression for the current window frame.
maxlag Maps to the user-defined aggregate function argument ar_count.
p The output parameter, representing the number of autoregressive parameters in the model with minimum AIC.
method Maps to the user-defined aggregate function argument method. If ar_elem is greater than p, and if your IMSL library time series function error-handling value is set to 0, IQ returns a null. If your IMSL library time series function error-handling value is set to a value other than 0, IQ displays an error message indicating that ar_elem is greater than p. See “IMSL library time series function error-handling”.
For detailed information on how the function imsls_d_auto_uni_ar performs time series calculations, see IMSL Numerical Library User’s Guide: Volume 2 of 2 C Stat Library.
This example shows an input data table, a SQL statement containing the TS_AUTO_UNI_AR function, and the data values returned by the function. This example uses the following table (called DATASET) as its input data. The DATASET table contains 50 rows of time series data:
rownum |
data |
---|---|
1 |
0.315523 |
2 |
0.485859 |
3 |
0.676886 |
4 |
1.97381 |
5 |
2.77555 |
6 |
2.73657 |
7 |
2.64233 |
8 |
4.26118 |
9 |
3.13641 |
10 |
4.16566 |
11 |
2.95952 |
12 |
2.14504 |
13 |
1.98799 |
14 |
0.805859 |
15 |
0.833405 |
16 |
2.29075 |
17 |
1.30045 |
18 |
0.467122 |
19 |
-0.170107 |
20 |
-0.256657 |
21 |
-0.382597 |
22 |
-0.505511 |
23 |
-1.90147 |
24 |
-0.981688 |
25 |
-1.43116 |
26 |
-1.39389 |
27 |
-2.34823 |
28 |
-2.91122 |
29 |
-0.927423 |
30 |
-0.044383 |
31 |
-0.389648 |
32 |
0.545008 |
33 |
0.614096 |
34 |
0.364668 |
35 |
1.16043 |
36 |
-0.654063 |
37 |
0.616094 |
38 |
2.00875 |
39 |
1.86696 |
40 |
2.80171 |
41 |
3.78422 |
42 |
4.11499 |
43 |
2.77188 |
44 |
4.00312 |
45 |
4.21298 |
46 |
5.00413 |
47 |
4.74498 |
48 |
4.89621 |
49 |
3.93273 |
50 |
4.31592 |
The following SQL statement returns the first element from an array containing two elements from the data column:
SELECT TS_AUTO_UNI_AR(data,2,1,0) OVER (ORDER BY ROWNUM rows BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) AS res FROM DATASET
Sybase IQ returns 50 rows, each containing the same value:
res |
---|
0.883453 |
0.883453 |
0.883453 |
0.883453 |
0.883453 |
0.883453 |
0.883453 |
0.883453 |
0.883453 |
... |
0.883453 |
Chapter 2, “Using OLAP” in the System Administration Guide: Volume 2
IMSL Numerical Library User’s Guide: Volume 2 of 2 C Stat Library