# 数学函数 - 时间序列分析

文档类型：函数事实页
是否可直接用于生成代码：是；本页函数条目均包含参数表
遇到不确定时：回到 [../math.md](../math.md)、[../../index.md](../../index.md)

本页收录时间序列差分、自相关、偏自相关、随机性检验、AR/MA/ARMA、ARCH/GARCH、单位根、协整、ECM 和 Granger 因果检验函数。

## 服务器时间序列函数

### `time_Diff(values, order)`

用途：计算序列、数组或矩阵的指定阶差分。

参数个数：2
返回值：数值数组/数值矩阵

| 参数位置 | 参数名   | 必填 | 接收类型          | 说明           |
| -------- | -------- | ---- | ----------------- | -------------- |
| 1        | `values` | 是   | 数值数组/数值矩阵 | 原始序列或矩阵 |
| 2        | `order`  | 是   | 整数              | 差分阶数       |

### `time_AutoCov(values, lag)`

用途：计算时间序列在指定滞后阶数下的自协方差。

参数个数：2
返回值：实数

| 参数位置 | 参数名   | 必填 | 接收类型 | 说明     |
| -------- | -------- | ---- | -------- | -------- |
| 1        | `values` | 是   | 数值数组 | 时间序列 |
| 2        | `lag`    | 是   | 整数     | 滞后阶数 |

### `time_ACF(values)`

用途：计算时间序列自相关系数。

参数个数：1
返回值：数值数组

| 参数位置 | 参数名   | 必填 | 接收类型 | 说明     |
| -------- | -------- | ---- | -------- | -------- |
| 1        | `values` | 是   | 数值数组 | 时间序列 |

### `time_PACF(values)`

用途：计算时间序列偏自相关系数。

参数个数：1
返回值：数值数组

| 参数位置 | 参数名   | 必填 | 接收类型 | 说明     |
| -------- | -------- | ---- | -------- | -------- |
| 1        | `values` | 是   | 数值数组 | 时间序列 |

### `time_RandomTest(values, lag_count, alpha)`

用途：执行时间序列纯随机性检验。

参数个数：3
返回值：数组表；包含 `Qm-Stat`、`P-Value`、`Hypothesis`

| 参数位置 | 参数名      | 必填 | 接收类型 | 说明         |
| -------- | ----------- | ---- | -------- | ------------ |
| 1        | `values`    | 是   | 数值数组 | 时间序列     |
| 2        | `lag_count` | 是   | 整数     | 检验滞后阶数 |
| 3        | `alpha`     | 是   | 数值     | 显著性水平   |

### `ar(values, order, method)`

用途：拟合 AR 模型。

参数个数：3
返回值：数组表；包含 `AR`、`T-test`、`e`

| 参数位置 | 参数名   | 必填 | 接收类型 | 说明                  |
| -------- | -------- | ---- | -------- | --------------------- |
| 1        | `values` | 是   | 数值数组 | 时间序列              |
| 2        | `order`  | 是   | 整数     | AR 阶数               |
| 3        | `method` | 是   | 字符串   | 拟合方法；常用 `"ls"` |

### `arma(values, ar_order, ma_order)`

用途：拟合 ARMA 模型。

参数个数：3
返回值：数组表；数据不满足建模条件时可能返回诊断文本

| 参数位置 | 参数名     | 必填 | 接收类型 | 说明     |
| -------- | ---------- | ---- | -------- | -------- |
| 1        | `values`   | 是   | 数值数组 | 时间序列 |
| 2        | `ar_order` | 是   | 整数     | AR 阶数  |
| 3        | `ma_order` | 是   | 整数     | MA 阶数  |

### `time_ARp(values, order, mode)`

用途：估计 AR 模型参数。

参数个数：3
返回值：数组表；包含 `AR-Coefficient`、`Variance`

| 参数位置 | 参数名   | 必填 | 接收类型 | 说明         |
| -------- | -------- | ---- | -------- | ------------ |
| 1        | `values` | 是   | 数值数组 | 时间序列     |
| 2        | `order`  | 是   | 整数     | AR 阶数      |
| 3        | `mode`   | 是   | 整数     | 估计模式参数 |

### `time_MAq(values, order, mode)`

用途：估计 MA 模型参数。

参数个数：3
返回值：数组表；包含 `MA-Coefficient`、`Variance`

| 参数位置 | 参数名   | 必填 | 接收类型 | 说明         |
| -------- | -------- | ---- | -------- | ------------ |
| 1        | `values` | 是   | 数值数组 | 时间序列     |
| 2        | `order`  | 是   | 整数     | MA 阶数      |
| 3        | `mode`   | 是   | 整数     | 估计模式参数 |

### `time_ARMA(values, ar_order, ma_order, mode)`

用途：估计 ARMA 模型参数。

参数个数：4
返回值：数组表；包含 `Constant`、`AR-Coefficient`、`MA-Coefficient`、`Variance`

| 参数位置 | 参数名     | 必填 | 接收类型 | 说明         |
| -------- | ---------- | ---- | -------- | ------------ |
| 1        | `values`   | 是   | 数值数组 | 时间序列     |
| 2        | `ar_order` | 是   | 整数     | AR 阶数      |
| 3        | `ma_order` | 是   | 整数     | MA 阶数      |
| 4        | `mode`     | 是   | 整数     | 估计模式参数 |

### `time_GreenFun(ar_coefficients, ma_coefficients)`

用途：根据 AR、MA 系数计算 Green 函数序列。

参数个数：2
返回值：数值数组

| 参数位置 | 参数名            | 必填 | 接收类型 | 说明        |
| -------- | ----------------- | ---- | -------- | ----------- |
| 1        | `ar_coefficients` | 是   | 数值数组 | AR 系数数组 |
| 2        | `ma_coefficients` | 是   | 数值数组 | MA 系数数组 |

### `time_InvFun(left_values, right_values)`

用途：根据两个输入序列计算逆函数序列。

参数个数：2
返回值：数值数组

| 参数位置 | 参数名         | 必填 | 接收类型 | 说明     |
| -------- | -------------- | ---- | -------- | -------- |
| 1        | `left_values`  | 是   | 数值数组 | 左侧序列 |
| 2        | `right_values` | 是   | 数值数组 | 右侧序列 |

### `time_ChoseP(values, model_name, criterion)`

用途：按准则选择 AR、MA 或 ARMA 模型阶数。

参数个数：3
返回值：整数

| 参数位置 | 参数名       | 必填 | 接收类型 | 说明                                  |
| -------- | ------------ | ---- | -------- | ------------------------------------- |
| 1        | `values`     | 是   | 数值数组 | 时间序列                              |
| 2        | `model_name` | 是   | 字符串   | 模型名；可用 `"AR"`、`"MA"`、`"ARMA"` |
| 3        | `criterion`  | 是   | 字符串   | 信息准则；常用 `"AIC"`、`"SBIC"`      |

### `times_Granger(y_values, x_values, lag_order, alpha)`

用途：检验 `x_values` 是否为 `y_values` 的 Granger 原因。

参数个数：4
返回值：数组表；包含 `F-Stat`、`P-Value`、`Hypothesis`

| 参数位置 | 参数名      | 必填 | 接收类型 | 说明         |
| -------- | ----------- | ---- | -------- | ------------ |
| 1        | `y_values`  | 是   | 数值数组 | 被解释序列   |
| 2        | `x_values`  | 是   | 数值数组 | 候选原因序列 |
| 3        | `lag_order` | 是   | 整数     | 滞后阶数     |
| 4        | `alpha`     | 是   | 数值     | 显著性水平   |

### `time_DanielTest(values, alpha)`

用途：执行 Daniel 平稳性检验。

参数个数：2
返回值：数组表；包含 `Q-Value`、`T-Stat`、`P-Value`、`Hypothesis`

| 参数位置 | 参数名   | 必填 | 接收类型 | 说明       |
| -------- | -------- | ---- | -------- | ---------- |
| 1        | `values` | 是   | 数值数组 | 时间序列   |
| 2        | `alpha`  | 是   | 数值     | 显著性水平 |

### `times_ADFTest(values, diff_order, model_style, criterion, lag_order, alpha)`

用途：执行 ADF 单位根检验。

参数个数：6
返回值：数组表；包含 `ADF-Stat` 和显著性水平临界值

| 参数位置 | 参数名        | 必填 | 接收类型 | 说明                             |
| -------- | ------------- | ---- | -------- | -------------------------------- |
| 1        | `values`      | 是   | 数值数组 | 时间序列                         |
| 2        | `diff_order`  | 是   | 整数     | 差分阶数                         |
| 3        | `model_style` | 是   | 整数     | 检验模型类型                     |
| 4        | `criterion`   | 是   | 字符串   | 信息准则；常用 `"AIC"`、`"SBIC"` |
| 5        | `lag_order`   | 是   | 整数     | 滞后阶数                         |
| 6        | `alpha`       | 是   | 数值     | 显著性水平                       |

### `times_Cointergration_test(y_values, x_values, diff_order, alpha, lag_order, criterion)`

用途：执行两个序列的协整检验。

参数个数：6
返回值：数组表；包含 `Diff_y`、`Diff_x`、`E_Stat`，并可提供 ECM 所需残差项

| 参数位置 | 参数名       | 必填 | 接收类型 | 说明                             |
| -------- | ------------ | ---- | -------- | -------------------------------- |
| 1        | `y_values`   | 是   | 数值数组 | 第一条时间序列                   |
| 2        | `x_values`   | 是   | 数值数组 | 第二条时间序列                   |
| 3        | `diff_order` | 是   | 整数     | 差分阶数                         |
| 4        | `alpha`      | 是   | 数值     | 显著性水平                       |
| 5        | `lag_order`  | 是   | 整数     | 滞后阶数                         |
| 6        | `criterion`  | 是   | 字符串   | 信息准则；常用 `"AIC"`、`"SBIC"` |

### `times_Cointergration(y_values, x_values, alpha)`

用途：判断两个序列是否存在协整关系。

参数个数：3
返回值：字符串

| 参数位置 | 参数名     | 必填 | 接收类型 | 说明           |
| -------- | ---------- | ---- | -------- | -------------- |
| 1        | `y_values` | 是   | 数值数组 | 第一条时间序列 |
| 2        | `x_values` | 是   | 数值数组 | 第二条时间序列 |
| 3        | `alpha`    | 是   | 数值     | 显著性水平     |

### `times_ECM(y_values, x_values, residuals, alpha, p_order, q_order)`

用途：建立误差修正模型。

参数个数：6
返回值：数组表；包含 `Coefficient`、`ECM`、`regression`

| 参数位置 | 参数名      | 必填 | 接收类型 | 说明                |
| -------- | ----------- | ---- | -------- | ------------------- |
| 1        | `y_values`  | 是   | 数值数组 | 第一条时间序列      |
| 2        | `x_values`  | 是   | 数值数组 | 第二条时间序列      |
| 3        | `residuals` | 是   | 数值数组 | 协整检验残差项      |
| 4        | `alpha`     | 是   | 数值     | 显著性水平          |
| 5        | `p_order`   | 是   | 整数     | `y_values` 滞后阶数 |
| 6        | `q_order`   | 是   | 整数     | `x_values` 滞后阶数 |

### `time_ARCHTest(values, lag_order, alpha)`

用途：执行 ARCH 效应检验。

参数个数：3
返回值：数组表；包含 `F` 和 `TR2` 检验结果

| 参数位置 | 参数名      | 必填 | 接收类型 | 说明             |
| -------- | ----------- | ---- | -------- | ---------------- |
| 1        | `values`    | 是   | 数值数组 | 残差或收益率序列 |
| 2        | `lag_order` | 是   | 整数     | 滞后阶数         |
| 3        | `alpha`     | 是   | 数值     | 显著性水平       |

### `time_ARCH(values, q_order, forecast_count)`

用途：建立 ARCH 模型并输出均值、方差和预测结果。

参数个数：3
返回值：数组表；包含 `Mean-Coefficient`、`Variance-Coefficient`、`Log LikeHood`、`MeanForecast`、`SigmaForecast`

| 参数位置 | 参数名           | 必填 | 接收类型 | 说明             |
| -------- | ---------------- | ---- | -------- | ---------------- |
| 1        | `values`         | 是   | 数值数组 | 残差或收益率序列 |
| 2        | `q_order`        | 是   | 整数     | ARCH 阶数        |
| 3        | `forecast_count` | 是   | 整数     | 预测步数         |

### `time_GARCH(values, model_name)`

用途：建立 GARCH 类模型并输出均值、方差和预测结果。

参数个数：2
返回值：数组表；包含 `Model Type`、`Mean-Coefficient`、`Variance-Coefficient`、`Log LikeHood`、`MeanForecast`、`SigmaForecast`

| 参数位置 | 参数名       | 必填 | 接收类型 | 说明                   |
| -------- | ------------ | ---- | -------- | ---------------------- |
| 1        | `values`     | 是   | 数值数组 | 残差或收益率序列       |
| 2        | `model_name` | 是   | 字符串   | 模型名；常用 `"GARCH"` |

### `garchFit(model_spec, values)`

用途：按模型规格拟合 GARCH 类波动率模型。

参数个数：2
返回值：数组表；包含 `C`、`K`、`GARCH`、`ARCH`、`LLF`、`Errors`、`e`、`h`

| 参数位置 | 参数名       | 必填 | 接收类型 | 说明                                                                                                              |
| -------- | ------------ | ---- | -------- | ----------------------------------------------------------------------------------------------------------------- |
| 1        | `model_spec` | 是   | 数组表   | 模型规格；常用键包括 `R`、`M`、`AR`、`MA`、`Regress`、`VarianceModel`、`C`、`P`、`Q`、`GARCH`、`ARCH`、`Leverage` |
| 2        | `values`     | 是   | 数值数组 | 待拟合的收益率、残差或平稳时间序列                                                                                |

### `time_Analyse(values, model_name, ar_order, ma_order, forecast_count)`

用途：按 AR、MA 或 ARMA 模型分析序列并输出预测结果。

参数个数：5
返回值：数组表；包含 `Forecast`、`Volatility` 以及模型系数

| 参数位置 | 参数名           | 必填 | 接收类型 | 说明                                  |
| -------- | ---------------- | ---- | -------- | ------------------------------------- |
| 1        | `values`         | 是   | 数值数组 | 时间序列                              |
| 2        | `model_name`     | 是   | 字符串   | 模型名；可用 `"AR"`、`"MA"`、`"ARMA"` |
| 3        | `ar_order`       | 是   | 整数     | AR 阶数                               |
| 4        | `ma_order`       | 是   | 整数     | MA 阶数                               |
| 5        | `forecast_count` | 是   | 整数     | 预测步数                              |

### `times_GrangerCausality(series_matrix, lag_order)`

用途：对矩阵中的多个序列执行两两 Granger 因果检验。

参数个数：2
返回值：数组表；每行包含 `result`、`cause`、`F-Stat`、`P-Value`

| 参数位置 | 参数名          | 必填 | 接收类型 | 说明                                                |
| -------- | --------------- | ---- | -------- | --------------------------------------------------- | ------------------ |
| 1        | `series_matrix` | 是   | 数值矩阵 | 多个时间序列组成的矩阵；可由两条序列用 `left_series | right_series` 组成 |
| 2        | `lag_order`     | 是   | 整数     | 滞后阶数                                            |
