# 金融 / 专题函数 / 基础算法 / 基础算法02：常见加权统计量及其实现 / 协方差

## `weightedCov(a, b, w)`

声明：function

返回可靠性权重加权样本协方差

<!-- tags: 金融 专题函数 基础算法 02： 基础算法常见加权统计量 协方差 返回 获取 统计 概率 statistics -->

| 参数 | 类型  | 说明         |
| ---- | ----- | ------------ |
| `a`  | array | 一维数字数组 |
| `b`  | array | 一维数字数组 |
| `w`  | array | 一维权重向量 |

返回：real

### 示例

范例01：调用函数

```tsl
x := array(1, 2, 3, 4, 5);
w := array(0.15, 0.1, 0.2, 0.3, 0.25);
y := array(6, 4, 3, 1, 9);
return weightedCov(x, y, w); // 输出：1.058
```

## `weightedCov_freq(a, b, w, v_1)`

声明：function

返回频率权重加权样本协方差 其中：分别表示加权均值，表示样本总数，当为样本个数时

<!-- tags: 金融 专题函数 基础算法 02： 基础算法常见加权统计量 协方差 返回 获取 统计 概率 statistics -->

| 参数  | 类型     | 说明                            |
| ----- | -------- | ------------------------------- |
| `a`   | array    | 样本a计算移动平均的一维数字数组 |
| `b`   | array    | 因子b计算移动平均的一维数字数组 |
| `w`   | array    | 一维权重向量                    |
| `v_1` | integer) | 样本个数                        |

返回：real

### 示例

范例01：调用 WeightedCov_freq

```tsl
x := array(1, 2, 3, 4, 5);
w := array(0.15, 0.1, 0.2, 0.3, 0.25);
y := array(6, 4, 3, 1, 9);
echo WeightedCov_freq(x, y, w, 100); // 0.828
return WeightedCov(x, y, w*100); // 输出：0.828
```

## `weightedPopnCov(a, b, w)`

声明：function

返回加权总体协方差

<!-- tags: 金融 专题函数 基础算法 02： 基础算法常见加权统计量 协方差 返回 获取 统计 概率 statistics -->

| 参数 | 类型  | 说明         |
| ---- | ----- | ------------ |
| `a`  | array | 一维数字数组 |
| `b`  | array | 一维数字数组 |
| `w`  | array | 一维权重向量 |

返回：real

### 示例

范例01：调用函数

```tsl
x := array(1, 2, 3, 4, 5);
w := array(0.15, 0.1, 0.2, 0.3, 0.25);
y := array(6, 4, 3, 1, 9);
return weightedPopnCov(x, y, w); // 输出：0.82
```
