# 板块 / 风险收益

## `Bk_Beta3(index_id, beg_t, right_type)`

板块Beta。统计从BegT到系统设置的当前时间pn_date（）之间的收益率的beta。当前板块通过setsysparam(pn_bk(),bkname)进行设置，其中bkname为当前板块名称。

| 参数         | 类型     | 说明                  |
| ------------ | -------- | --------------------- |
| `index_id`   | string   | 指数，指数代码        |
| `beg_t`      | datetime | 日期，开始日期        |
| `right_type` | any      | 用户自定义，加权方式: |

返回：string

## `Bk_Beta4(index_id, n, right_type)`

板块Beta。计算从N日前开始，到当前时间的收益率序列计算beta。函数与当前时间相关，当前板块通过setsysparam(pn_bk(),bkname)进行设置，其中bkname为当前板块名称。

| 参数         | 类型   | 说明                                |
| ------------ | ------ | ----------------------------------- |
| `index_id`   | string | 指数，指数代码                      |
| `n`          | any    | 整数，当前日期往前推N个自然日，用于 |
| `right_type` | any    | 用户自定义，加权方式                |

返回：string

## `Bk_Var(beg_t, end_t, right_type)`

板块VaR（历史模拟法）

| 参数         | 类型     | 说明                    |
| ------------ | -------- | ----------------------- |
| `beg_t`      | datetime | 起始日期                |
| `end_t`      | datetime | 截止日期                |
| `right_type` | any      | 加权方式，具体取值如下: |

返回：float

## `Bk_VaR3(beg_t, right_type)`

板块VaR（历史模拟法），当前板块通过setsysparam(pn_bk(),bkname)进行设置，其中bkname为当前板块名称。

| 参数         | 类型     | 说明                 |
| ------------ | -------- | -------------------- |
| `beg_t`      | datetime | 日期，开始日         |
| `right_type` | any      | 用户自定义，加权方式 |

返回：string

## `Bk_VaR4(n, right_type)`

板块VaR（历史模拟法），当前板块通过setsysparam(pn_bk(),bkname)进行设置，其中bkname为当前板块名称。

| 参数         | 类型 | 说明                 |
| ------------ | ---- | -------------------- |
| `n`          | any  | 整数，日期间隔天数   |
| `right_type` | any  | 用户自定义，加权方式 |

返回：string

## `stocksMeasure(stock_arr, beg_t, end_t, right_type, rf)`

计算一组股票的平均涨幅、Alpha、Beta、sharp等

| 参数         | 类型     | 说明                     |
| ------------ | -------- | ------------------------ |
| `stock_arr`  | array    | 一组股票(一维字符串数组) |
| `beg_t`      | datetime | 起始日期                 |
| `end_t`      | datetime | 截止日期                 |
| `right_type` | int      | 加权方式，具体取值如下:  |
| `rf`         | float    | 无风险收益率(%)          |

返回：array

## `stocksVaR(stock_arr, beg_t, end_t, right_type)`

计算一组股票的指定日Var

| 参数         | 类型     | 说明                     |
| ------------ | -------- | ------------------------ |
| `stock_arr`  | array    | 一组股票(一维字符串数组) |
| `beg_t`      | datetime | 起始日期                 |
| `end_t`      | datetime | 截止日期                 |
| `right_type` | int      | 加权方式，具体取值如下:  |

返回：array

### 示例

```tsl
d := inttodate(20091231);
begt := inttodate(20100101);
endt := inttodate(20100131);
setsysparam(pn_cycle(),cy_day()); //设置周期为周线
stockArr := getbkbydate('SH000300',d);
return StocksVaR(stockArr,begt,endt,4);
```

## `stocksZfMatrix(stock_arr, beg_t, end_t, right_type)`

计算一组股票的区间收益率序列

| 参数         | 类型     | 说明                     |
| ------------ | -------- | ------------------------ |
| `stock_arr`  | array    | 一组股票(一维字符串数组) |
| `beg_t`      | datetime | 起始日期                 |
| `end_t`      | datetime | 截止日期                 |
| `right_type` | int      | 加权方式，具体取值如下:  |

返回：array

### 示例

```tsl
d := inttodate(20091231);
begt := inttodate(20100101);
endt := inttodate(20100131);
setsysparam(pn_cycle(),cy_week()); //设置周期为周线
stockArr := getbkbydate('SH000300',d);
return StocksZfMatrix(stockArr,begt,endt,4);
```
